From 6185efc550765fa39bb7d0190b10b3fe1f31ca1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E7=AB=8B=E5=B8=AE?= <3294713004@qq.com> Date: Fri, 13 Sep 2024 08:59:47 +0800 Subject: [PATCH] =?UTF-8?q?Update:=20micropython=E6=9D=BF=E5=8D=A1=20`buil?= =?UTF-8?q?d:prod`?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- boards/default/micropython_esp32/index.xml | 2 +- .../default/micropython_esp32/main.bundle.js | 4 +- .../{main.ab1e6c96.css => main.9e8e2453.css} | 0 .../build/Mixgo_Mini-v1.23.0.bin | Bin 1433856 -> 1433872 bytes .../build/Mixgo_Mini_lib-v1.23.0.bin | Bin 1696368 -> 1697504 bytes .../micropython_esp32c2/build/lib/mini_bot.py | 71 ++++++++++-------- .../micropython_esp32c2/build/lib/ws2812x.py | 8 +- boards/default/micropython_esp32c2/index.xml | 2 +- .../micropython_esp32c2/main.bundle.js | 4 +- .../{main.9e9dd457.css => main.b73cc364.css} | 0 boards/default/micropython_esp32c3/index.xml | 2 +- .../micropython_esp32c3/main.bundle.js | 4 +- .../{main.ef8a80ae.css => main.9bd681ce.css} | 0 boards/default/micropython_esp32s2/index.xml | 2 +- .../micropython_esp32s2/main.bundle.js | 4 +- .../{main.454324cd.css => main.2f1df1e2.css} | 0 boards/default/micropython_esp32s3/index.xml | 2 +- .../micropython_esp32s3/main.bundle.js | 4 +- .../{main.8ae0f9a2.css => main.1b0705c1.css} | 0 .../micropython_k210_mixgoai/index.xml | 2 +- .../{main.a5a4cdeb.css => main.ae5273fa.css} | 0 .../micropython_nrf51822_microbit/index.xml | 2 +- .../{main.de8dd2dc.css => main.4aa4ee0b.css} | 0 .../micropython_nrf51822_mithoncc/index.xml | 2 +- .../{main.c5b53592.css => main.11464331.css} | 0 boards/default/micropython_robot/index.xml | 2 +- .../default/micropython_robot/main.bundle.js | 4 +- .../{main.4eae9b97.css => main.3bcb54bb.css} | 0 28 files changed, 65 insertions(+), 56 deletions(-) rename boards/default/micropython_esp32/styles/{main.ab1e6c96.css => main.9e8e2453.css} (100%) rename boards/default/micropython_esp32c2/styles/{main.9e9dd457.css => main.b73cc364.css} (100%) rename boards/default/micropython_esp32c3/styles/{main.ef8a80ae.css => main.9bd681ce.css} (100%) rename boards/default/micropython_esp32s2/styles/{main.454324cd.css => main.2f1df1e2.css} (100%) rename boards/default/micropython_esp32s3/styles/{main.8ae0f9a2.css => main.1b0705c1.css} (100%) rename boards/default/micropython_k210_mixgoai/styles/{main.a5a4cdeb.css => main.ae5273fa.css} (100%) rename boards/default/micropython_nrf51822_microbit/styles/{main.de8dd2dc.css => main.4aa4ee0b.css} (100%) rename boards/default/micropython_nrf51822_mithoncc/styles/{main.c5b53592.css => main.11464331.css} (100%) rename boards/default/micropython_robot/styles/{main.4eae9b97.css => main.3bcb54bb.css} (100%) diff --git a/boards/default/micropython_esp32/index.xml b/boards/default/micropython_esp32/index.xml index 61ebec92..66a5a868 100644 --- a/boards/default/micropython_esp32/index.xml +++ b/boards/default/micropython_esp32/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func010,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcp20189141420452023,1,1,12,0,0180291001004404401000004120000000000010001000100Mixly0MixlyMixly500MixlyMixly500>10.5001MixlyMixly0010MixlyMixly0550MixlyMixly550000200050502020201510000i2c_extend2122400000pei2c_extendpepe100pepe100pepe100pewifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordSGJl0ExVN-4j27msR北京SGJl0ExVN-4j27msR北京1SGJl0ExVN-4j27msR北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr457ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func010,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcp20189141420452023,1,1,12,0,0180291001004404401000004120000000000010001000100Mixly0MixlyMixly500MixlyMixly500>10.5001MixlyMixly0010MixlyMixly0550MixlyMixly550000200050502020201510000i2c_extend2122400000pei2c_extendpepe100pepe100pepe100pewifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordSGJl0ExVN-4j27msR北京SGJl0ExVN-4j27msR北京1SGJl0ExVN-4j27msR北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr457ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file diff --git a/boards/default/micropython_esp32/main.bundle.js b/boards/default/micropython_esp32/main.bundle.js index df40c476..0906cd08 100644 --- a/boards/default/micropython_esp32/main.bundle.js +++ b/boards/default/micropython_esp32/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var _={d:(t,e)=>{for(var i in e)_.o(e,i)&&!_.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},o:(_,t)=>Object.prototype.hasOwnProperty.call(_,t),r:_=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})}},t={};_.r(t),_.d(t,{controls_type:()=>d_,controls_typeLists:()=>u_,variables_change:()=>P_,variables_get:()=>l_,variables_global:()=>N_,variables_set:()=>A_});var e={};_.r(e),_.d(e,{base_setup:()=>C_,controls_delay:()=>c_,controls_end_program:()=>H_,controls_except:()=>X_,controls_finally:()=>V_,controls_flow_statements:()=>G_,controls_for:()=>F_,controls_forEach:()=>U_,controls_for_range:()=>y_,controls_if:()=>D_,controls_if_else:()=>x_,controls_if_elseif:()=>b_,controls_if_if:()=>f_,controls_lambda:()=>w_,controls_main:()=>m_,controls_pass:()=>W_,controls_range:()=>Y_,controls_repeat_ext:()=>k_,controls_thread:()=>K_,controls_try:()=>v_,controls_try_finally:()=>B_,controls_whileUntil:()=>g_,do_while:()=>z_,garbage_collection:()=>Z_,get_mem_alloc:()=>Q_,get_mem_free:()=>J_,get_unique_identifier:()=>q_});var i={};_.r(i),_.d(i,{base_map:()=>lt,math_arithmetic:()=>et,math_bit:()=>Tt,math_constant:()=>_t,math_constant_mp:()=>tt,math_constrain:()=>at,math_dec:()=>nt,math_indexer_number:()=>Mt,math_map:()=>pt,math_max_min:()=>st,math_number:()=>$_,math_number_base_conversion:()=>Ot,math_random:()=>It,math_random_seed:()=>Lt,math_round:()=>Rt,math_selfcalcu:()=>it,math_to_int:()=>ot,math_trig:()=>Et,text_to_number:()=>rt,text_to_number_skulpt:()=>St});var T={};_.r(T),_.d(T,{ascii_to_char:()=>ht,char_to_ascii:()=>mt,number_to_text:()=>Ct,os_system:()=>qt,text:()=>Pt,text_capital:()=>Ft,text_center:()=>yt,text_char:()=>dt,text_char_at:()=>Dt,text_char_at2:()=>Ht,text_char_at3:()=>zt,text_compareTo:()=>Kt,text_compare_to:()=>Gt,text_create_with_container:()=>kt,text_create_with_item:()=>wt,text_encode:()=>Qt,text_equals_starts_ends:()=>Bt,text_eval:()=>Jt,text_find:()=>ft,text_format:()=>Vt,text_format_noreturn:()=>Zt,text_join:()=>ut,text_join_seq:()=>bt,text_length:()=>ct,text_random_char:()=>Yt,text_replace:()=>xt,text_split:()=>vt,text_strip:()=>Xt,text_substring:()=>gt,text_substring2:()=>Ut,text_substring3:()=>Wt,text_textarea:()=>Nt});var E={};_.r(E),_.d(E,{list_many_input:()=>Pe,list_tolist:()=>ce,list_tolist2:()=>Fe,list_trig:()=>Se,lists_2d_get_col_row_data:()=>ee,lists_2d_get_data_with_col_row:()=>te,lists_append_extend:()=>se,lists_change_to:()=>Ae,lists_change_to_general:()=>de,lists_clear:()=>Me,lists_create_with:()=>ie,lists_create_with2:()=>He,lists_create_with_container:()=>Ee,lists_create_with_item:()=>ne,lists_create_with_noreturn:()=>Ne,lists_create_with_text:()=>Te,lists_create_with_text2:()=>De,lists_del_general:()=>ue,lists_find:()=>re,lists_getIndex3:()=>Ye,lists_getSublist3:()=>Ue,lists_get_index:()=>$t,lists_get_random_item:()=>Oe,lists_get_random_sublist:()=>Ie,lists_get_sublist:()=>_e,lists_insert_value:()=>ae,lists_insert_value2:()=>Be,lists_pop:()=>Re,lists_remove_at:()=>Le,lists_remove_at2:()=>Ge,lists_reverse:()=>pe,lists_setIndex3:()=>ge,lists_set_index:()=>oe,lists_sort:()=>le,lists_zip:()=>he,lists_zip_container:()=>me,lists_zip_item:()=>Ce});var n={};_.r(n),_.d(n,{dicts_add_change_del:()=>qe,dicts_add_or_change:()=>ke,dicts_clear:()=>Ke,dicts_create_with:()=>fe,dicts_create_with_container:()=>be,dicts_create_with_item:()=>xe,dicts_create_with_noreturn:()=>_i,dicts_deldict:()=>Je,dicts_delete:()=>we,dicts_get:()=>Xe,dicts_get_default:()=>Ve,dicts_items:()=>ze,dicts_keys:()=>ve,dicts_length:()=>Qe,dicts_pop:()=>je,dicts_setdefault:()=>$e,dicts_to_json:()=>ei,dicts_todict:()=>ti,dicts_update:()=>We,dicts_values:()=>Ze,json_to_dicts:()=>ii});var o={};_.r(o),_.d(o,{logic_boolean:()=>Oi,logic_compare:()=>Ei,logic_compare_continous:()=>ni,logic_is:()=>Mi,logic_is_in:()=>pi,logic_negate:()=>si,logic_null:()=>Ii,logic_operation:()=>oi,logic_tobool:()=>Li,logic_true_or_false:()=>ai});var s={};_.r(s),_.d(s,{sdcard_mount:()=>fi,sdcard_use_spi_init:()=>yi,storage_can_write_ornot:()=>ui,storage_change_dir:()=>Gi,storage_close_file:()=>mi,storage_delete_file:()=>ci,storage_file_seek:()=>Yi,storage_file_tell:()=>Di,storage_file_write:()=>Ai,storage_fileopen:()=>ri,storage_fileopen_new:()=>Si,storage_fileopen_new_encoding:()=>li,storage_get_a_line:()=>di,storage_get_contents:()=>Ni,storage_get_contents_without_para:()=>Pi,storage_get_current_dir:()=>Ui,storage_get_file_size:()=>Hi,storage_get_filename:()=>hi,storage_is_file:()=>Fi,storage_list_all_files:()=>Ci,storage_make_dir:()=>gi,storage_open_file_with_os:()=>Ri,storage_rename:()=>Bi});var O={};_.r(O),_.d(O,{procedures_callnoreturn:()=>wi,procedures_callreturn:()=>Wi,procedures_defnoreturn:()=>vi,procedures_defreturn:()=>Xi,procedures_ifreturn:()=>Ki,procedures_mutatorarg:()=>ki,procedures_mutatorcontainer:()=>Vi,procedures_return:()=>zi});var I={};_.r(I),_.d(I,{tuple_change_to:()=>ET,tuple_create_with:()=>Qi,tuple_create_with_container:()=>Ji,tuple_create_with_item:()=>qi,tuple_create_with_noreturn:()=>OT,tuple_create_with_text2:()=>ji,tuple_create_with_text_return:()=>$i,tuple_del:()=>eT,tuple_find:()=>nT,tuple_getIndex:()=>_T,tuple_getSublist:()=>sT,tuple_get_random_item:()=>aT,tuple_get_sublist:()=>IT,tuple_join:()=>iT,tuple_length:()=>tT,tuple_max:()=>TT,tuple_totuple:()=>pT,tuple_trig:()=>oT});var a={};_.r(a),_.d(a,{set_add_discard:()=>dT,set_clear:()=>AT,set_create_with:()=>LT,set_create_with_container:()=>RT,set_create_with_item:()=>rT,set_create_with_text_return:()=>mT,set_length:()=>ST,set_operate:()=>PT,set_operate_update:()=>NT,set_pop:()=>lT,set_sub:()=>uT,set_toset:()=>CT,set_update:()=>hT});var p={};_.r(p),_.d(p,{html_content:()=>UT,html_content_more:()=>gT,html_document:()=>HT,html_form:()=>GT,html_head_body:()=>YT,html_style:()=>BT,html_style_color:()=>yT,html_style_content:()=>FT,html_text:()=>fT,html_title:()=>DT});var M={};_.r(M),_.d(M,{attribute_access:()=>qT,function_call:()=>ZT,function_call_container:()=>QT,function_call_item:()=>JT,raw_block:()=>vT,raw_empty:()=>VT,raw_expression:()=>XT,raw_table:()=>xT,text_comment:()=>kT,text_print_multiple:()=>WT,text_print_multiple_container:()=>KT,text_print_multiple_item:()=>zT,type_check:()=>wT});var L={};_.r(L),_.d(L,{controls_type:()=>eE,controls_typeLists:()=>iE,variables_change:()=>_E,variables_get:()=>jT,variables_global:()=>tE,variables_set:()=>$T});var R={};_.r(R),_.d(R,{Panic_with_status_code:()=>ME,base_setup:()=>EE,controls_delay:()=>pE,controls_flow_statements:()=>aE,controls_for:()=>sE,controls_forEach:()=>lE,controls_for_range:()=>OE,controls_if:()=>nE,controls_interrupts:()=>rE,controls_lambda:()=>PE,controls_main:()=>TE,controls_millis:()=>LE,controls_nointerrupts:()=>SE,controls_pass:()=>dE,controls_range:()=>AE,controls_repeat:()=>YE,controls_repeat_ext:()=>mE,controls_thread:()=>uE,controls_try_finally:()=>oE,controls_whileUntil:()=>IE,do_while:()=>hE,garbage_collection:()=>CE,get_mem_alloc:()=>cE,get_mem_free:()=>HE,get_unique_identifier:()=>DE,reset:()=>RE,time_sleep:()=>NE});var r={};_.r(r),_.d(r,{base_map:()=>qE,math_arithmetic:()=>FE,math_bit:()=>GE,math_constant:()=>gE,math_constant_mp:()=>BE,math_constrain:()=>wE,math_dec:()=>xE,math_indexer_number:()=>zE,math_map:()=>kE,math_max_min:()=>XE,math_number:()=>UE,math_number_base_conversion:()=>WE,math_random:()=>VE,math_random_seed:()=>KE,math_round:()=>ZE,math_selfcalcu:()=>yE,math_single:()=>fE,math_to_int:()=>vE,math_trig:()=>bE,text_to_number:()=>QE,text_to_number_skulpt:()=>JE});var S={};_.r(S),_.d(S,{ascii_to_char:()=>en,char_to_ascii:()=>Tn,number_to_text:()=>En,os_system:()=>Hn,text:()=>jE,text_capital:()=>Ln,text_center:()=>Rn,text_char:()=>_n,text_char_at:()=>sn,text_char_at2:()=>on,text_char_at3:()=>mn,text_compareTo:()=>hn,text_compare_to:()=>an,text_encode:()=>Cn,text_equals_starts_ends:()=>In,text_eval:()=>cn,text_find:()=>rn,text_format:()=>Nn,text_format_noreturn:()=>dn,text_join:()=>tn,text_join_seq:()=>Sn,text_length:()=>nn,text_random_char:()=>On,text_replace:()=>ln,text_split:()=>An,text_strip:()=>Pn,text_substring:()=>Mn,text_substring2:()=>pn,text_substring3:()=>un,text_textarea:()=>$E});var l={};_.r(l),_.d(l,{list_many_input:()=>Zn,list_tolist:()=>no,list_tolist2:()=>oo,list_trig:()=>Wn,lists_2d_get_col_row_data:()=>Un,lists_2d_get_data_with_col_row:()=>Yn,lists_append_extend:()=>yn,lists_change_to:()=>zn,lists_change_to_general:()=>Jn,lists_clear:()=>Xn,lists_create_with:()=>gn,lists_create_with2:()=>jn,lists_create_with_noreturn:()=>Qn,lists_create_with_text:()=>Bn,lists_create_with_text2:()=>$n,lists_del_general:()=>qn,lists_find:()=>Vn,lists_getIndex3:()=>_o,lists_getSublist3:()=>to,lists_get_index:()=>Gn,lists_get_random_item:()=>fn,lists_get_random_sublist:()=>bn,lists_get_sublist:()=>Dn,lists_insert_value:()=>xn,lists_insert_value2:()=>io,lists_pop:()=>wn,lists_remove_at:()=>kn,lists_remove_at2:()=>To,lists_reverse:()=>vn,lists_setIndex3:()=>eo,lists_set_index:()=>Fn,lists_sort:()=>Kn,lists_zip:()=>Eo});var A={};_.r(A),_.d(A,{dicts_add_change_del:()=>Po,dicts_add_or_change:()=>po,dicts_clear:()=>Ro,dicts_create_with:()=>so,dicts_create_with_noreturn:()=>ho,dicts_deldict:()=>Ao,dicts_delete:()=>Mo,dicts_get:()=>Io,dicts_get_default:()=>ao,dicts_items:()=>ro,dicts_keys:()=>Oo,dicts_length:()=>lo,dicts_pop:()=>No,dicts_setdefault:()=>uo,dicts_to_json:()=>Co,dicts_todict:()=>mo,dicts_update:()=>Lo,dicts_values:()=>So,json_to_dicts:()=>co});var P={};_.r(P),_.d(P,{logic_boolean:()=>go,logic_compare:()=>Ho,logic_compare_continous:()=>Do,logic_is:()=>yo,logic_is_in:()=>Fo,logic_negate:()=>Uo,logic_null:()=>Bo,logic_operation:()=>Yo,logic_tobool:()=>fo,logic_true_or_false:()=>Go});var N={};_.r(N),_.d(N,{sdcard_mount:()=>ns,sdcard_use_spi_init:()=>Es,storage_can_write_ornot:()=>Ko,storage_change_dir:()=>_s,storage_close_file:()=>Zo,storage_delete_file:()=>Jo,storage_file_seek:()=>$o,storage_file_tell:()=>jo,storage_file_write:()=>Vo,storage_fileopen:()=>xo,storage_fileopen_new:()=>vo,storage_fileopen_new_encoding:()=>Xo,storage_get_a_line:()=>Wo,storage_get_contents:()=>wo,storage_get_contents_without_para:()=>ko,storage_get_current_dir:()=>ts,storage_get_file_size:()=>qo,storage_get_filename:()=>zo,storage_is_file:()=>Ts,storage_list_all_files:()=>Qo,storage_make_dir:()=>es,storage_open_file_with_os:()=>bo,storage_rename:()=>is});var d={};_.r(d),_.d(d,{procedures_callnoreturn:()=>Is,procedures_callreturn:()=>Os,procedures_defnoreturn:()=>ss,procedures_defreturn:()=>os,procedures_ifreturn:()=>as,procedures_return:()=>ps});var u={};_.r(u),_.d(u,{tuple_change_to:()=>Ns,tuple_create_with:()=>Ms,tuple_create_with_noreturn:()=>ms,tuple_create_with_text2:()=>Ls,tuple_create_with_text_return:()=>Rs,tuple_del:()=>ls,tuple_find:()=>ds,tuple_getIndex:()=>rs,tuple_getSublist:()=>hs,tuple_get_random_item:()=>cs,tuple_get_sublist:()=>Cs,tuple_join:()=>As,tuple_length:()=>Ss,tuple_max:()=>Ps,tuple_totuple:()=>Hs,tuple_trig:()=>us});var h={};_.r(h),_.d(h,{set_add_discard:()=>Fs,set_clear:()=>gs,set_create_with:()=>Ds,set_create_with_text_return:()=>bs,set_length:()=>Ys,set_operate:()=>Bs,set_operate_update:()=>Gs,set_pop:()=>Us,set_sub:()=>ys,set_toset:()=>xs,set_update:()=>fs});var m={};_.r(m),_.d(m,{html_content:()=>ks,html_content_more:()=>ws,html_document:()=>vs,html_form:()=>Ks,html_head_body:()=>Vs,html_style:()=>Ws,html_style_content:()=>zs,html_text:()=>Zs,html_title:()=>Xs});var C={};_.r(C),_.d(C,{attribute_access:()=>tO,function_call:()=>_O,raw_block:()=>Qs,raw_empty:()=>qs,raw_expression:()=>Js,raw_table:()=>js,type_check:()=>$s});var c={};_.r(c),_.d(c,{actuator_extern_get_led_bright:()=>MO,actuator_extern_get_led_state:()=>LO,actuator_extern_led_bright:()=>pO,actuator_extern_led_brightness:()=>RO,actuator_ms32006_dcmotor:()=>hO,actuator_ms32006_init:()=>uO,actuator_ms32006_stepper:()=>mO,actuator_neopixel_init:()=>CO,actuator_neopixel_rgb:()=>cO,actuator_neopixel_rgb_all:()=>HO,actuator_neopixel_write:()=>DO,actuator_use_uart_init:()=>YO,esp32_music_get_tempo_extern:()=>OO,esp32_music_pitch:()=>EO,esp32_music_pitch_init:()=>TO,esp32_music_pitch_with_time:()=>nO,esp32_music_play_list:()=>oO,esp32_music_reset_extern:()=>IO,esp32_music_set_tempo_extern:()=>sO,esp32_music_stop:()=>aO,mixbot_actuator_extern_get_addr:()=>ZO,mixbot_actuator_extern_set_addr:()=>QO,mixbot_addr_extern:()=>FO,robot_led_extern:()=>xO,robot_led_extern_get_value:()=>vO,robot_motor_extern:()=>yO,robot_motor_extern_get_speed:()=>fO,robot_servo_extern_absolute_run:()=>wO,robot_servo_extern_get_status:()=>XO,robot_servo_extern_relative_continue:()=>zO,robot_servo_extern_relative_origin:()=>WO,robot_servo_extern_relative_run:()=>KO,robot_servo_extern_stop:()=>kO,robot_servo_extern_stop_mode:()=>VO,robot_traffic_light_extern:()=>bO,servo_get_angle:()=>NO,servo_get_speed:()=>dO,servo_init:()=>rO,servo_move:()=>SO,servo_set_angle:()=>AO,servo_set_speed:()=>PO,servo_speed_360:()=>lO,syn6288_builtin_voice:()=>BO,syn6288_get_voice:()=>gO,syn6288_set_voice:()=>UO,syn6288_tts_play:()=>GO});var H={};_.r(H),_.d(H,{actuator_dc_motor:()=>cI,actuator_dc_motor_stop:()=>HI,actuator_get_led_bright:()=>_I,actuator_get_led_state:()=>tI,actuator_led_bright:()=>$O,actuator_led_brightness:()=>eI,actuator_mixbot_buzzer_on_off:()=>BI,actuator_mixgo_nova_mic_get:()=>bI,actuator_mixgo_nova_mic_set:()=>fI,actuator_mixgo_nova_onboard_music_pitch:()=>wI,actuator_mixgo_nova_onboard_music_stop:()=>WI,actuator_mixgo_nova_play_audio:()=>VI,actuator_mixgo_nova_play_online_audio:()=>kI,actuator_mixgo_nova_record_audio:()=>XI,actuator_mixgo_nova_voice_get:()=>vI,actuator_mixgo_nova_voice_set:()=>xI,actuator_mixgo_zero_led_color:()=>iI,actuator_onboard_neopixel_rgb:()=>OI,actuator_onboard_neopixel_rgb_all:()=>II,actuator_onboard_neopixel_rgb_show_all_chase:()=>pI,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>aI,actuator_onboard_neopixel_write:()=>MI,actuator_rm_onboard_neopixel_rgb:()=>LI,actuator_rm_onboard_neopixel_rgb_all:()=>RI,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>rI,actuator_stepper_keep:()=>mI,actuator_stepper_stop:()=>CI,analog_keyboard_input:()=>QI,analog_keyboard_str:()=>_a,analog_mouse_input:()=>jI,bitbot_motor:()=>yI,bitbot_move:()=>GI,bitbot_stop:()=>FI,cc_number:()=>sI,esp32_music_get_tempo:()=>lI,esp32_music_reset:()=>AI,esp32_music_set_tempo:()=>SI,esp32_onboard_music_pitch:()=>PI,esp32_onboard_music_pitch_with_time:()=>NI,esp32_onboard_music_play_list:()=>uI,esp32_onboard_music_stop:()=>dI,general_key:()=>qI,get_power_output:()=>zI,ledswitch:()=>jO,mixbot_motor:()=>gI,mixbot_motor_status:()=>DI,mixbot_move:()=>YI,mixbot_stop:()=>UI,mouse_key:()=>$I,number:()=>qO,rm_actuator_get_led_bright:()=>EI,rm_actuator_get_led_state:()=>nI,rm_actuator_led_bright:()=>TI,rm_actuator_led_brightness:()=>oI,rm_motor:()=>hI,set_all_power_output:()=>ZI,set_power_output:()=>KI,special_key:()=>JI});var D={};_.r(D),_.d(D,{ai_sensor_20object:()=>Ga,ai_sensor_ailocal_class:()=>ua,ai_sensor_ailocal_class_result:()=>ha,ai_sensor_ailocal_train:()=>da,ai_sensor_asr_recognize:()=>Da,ai_sensor_audio_play:()=>Ca,ai_sensor_audio_record:()=>ma,ai_sensor_barcode:()=>sa,ai_sensor_circle:()=>La,ai_sensor_classifier_faces:()=>Ba,ai_sensor_color:()=>la,ai_sensor_color_chases:()=>Na,ai_sensor_color_chases_result:()=>Pa,ai_sensor_config:()=>na,ai_sensor_face:()=>ga,ai_sensor_find_20objects:()=>Fa,ai_sensor_find_barcodes:()=>Oa,ai_sensor_find_circles:()=>Ra,ai_sensor_find_colors:()=>Aa,ai_sensor_find_licenseplates:()=>Ua,ai_sensor_find_lines:()=>Ma,ai_sensor_find_qrcodes:()=>Ea,ai_sensor_find_rects:()=>Sa,ai_sensor_find_tags:()=>aa,ai_sensor_licenseplate:()=>Ya,ai_sensor_line:()=>pa,ai_sensor_qrcode:()=>ia,ai_sensor_qrcode_lite:()=>Ta,ai_sensor_rect:()=>ra,ai_sensor_rgb:()=>oa,ai_sensor_tag:()=>Ia,ai_sensor_use_uart_init:()=>ea,ai_sensor_yolo_recognize:()=>ca,ai_sensor_yolo_recognize_result:()=>Ha});var Y={};_.r(Y),_.d(Y,{MICROPYTHON_AI_Speech_asr:()=>ba,MICROPYTHON_AI_Speech_unit:()=>fa,MICROPYTHON_AI_client:()=>ya});var U={};_.r(U),_.d(U,{mpython_blynk_app_data:()=>$a,mpython_blynk_app_notify:()=>Ka,mpython_blynk_email:()=>Qa,mpython_blynk_get_timers:()=>Ja,mpython_blynk_on_connected:()=>ka,mpython_blynk_on_disconnected:()=>Va,mpython_blynk_run:()=>Wa,mpython_blynk_sensor_data_to_app:()=>ja,mpython_blynk_set_property:()=>Za,mpython_blynk_setup:()=>_p,mpython_blynk_stop_timers:()=>za,mpython_blynk_sync_virtual:()=>Xa,mpython_blynk_terminal_widget_vpin:()=>va,mpython_blynktimer:()=>qa,mpython_blynktimer_run:()=>wa});var g={};_.r(g),_.d(g,{communicate_bluetooth_central_init:()=>yp,communicate_bluetooth_connect:()=>vp,communicate_bluetooth_disconnect:()=>Xp,communicate_bluetooth_handle:()=>Kp,communicate_bluetooth_is_connected:()=>kp,communicate_bluetooth_mac:()=>xp,communicate_bluetooth_peripheral_init:()=>fp,communicate_bluetooth_recv:()=>wp,communicate_bluetooth_recv_only:()=>Wp,communicate_bluetooth_scan:()=>bp,communicate_bluetooth_send:()=>Vp,communicate_espnow_init:()=>zp,communicate_espnow_init_new:()=>Zp,communicate_i2c_available:()=>lp,communicate_i2c_init:()=>Tp,communicate_i2c_master_read:()=>Sp,communicate_i2c_onboard:()=>ep,communicate_i2c_read:()=>Ep,communicate_i2c_scan:()=>op,communicate_i2c_write:()=>np,communicate_ir_recv_init:()=>Cp,communicate_ir_send_init:()=>Up,communicate_ow_init:()=>Pp,communicate_ow_read:()=>dp,communicate_ow_reset:()=>mp,communicate_ow_scan:()=>Np,communicate_ow_select:()=>hp,communicate_ow_write:()=>up,communicate_spi_buffer:()=>Ip,communicate_spi_init:()=>sp,communicate_spi_onboard:()=>ip,communicate_spi_read:()=>ap,communicate_spi_read_output:()=>pp,communicate_spi_readinto:()=>Mp,communicate_spi_readinto_output:()=>Lp,communicate_spi_set:()=>Op,communicate_spi_write:()=>Rp,communicate_spi_write_readinto:()=>rp,espnow_radio_channel:()=>_M,espnow_radio_channel_new:()=>eM,espnow_radio_on_off:()=>iM,espnow_radio_rec:()=>EM,espnow_radio_recv:()=>oM,espnow_radio_recv_certain_msg:()=>sM,espnow_radio_recv_certain_msg_new:()=>IM,espnow_radio_recv_msg:()=>nM,espnow_radio_recv_new:()=>OM,espnow_radio_send:()=>TM,espnow_radio_txpower:()=>tM,i2c_available:()=>gM,i2c_init:()=>lM,i2c_master_reader2:()=>UM,i2c_read:()=>AM,i2c_scan:()=>NM,i2c_slave_onreceive:()=>Ap,i2c_write:()=>PM,internal_variable:()=>cp,ir_recv_timeout:()=>Yp,ir_transmit_busy:()=>Fp,ir_transmit_conventional_data:()=>gp,ir_transmit_raw_code:()=>Gp,ir_transmit_study_code:()=>Bp,ir_whether_recv:()=>Dp,lora_init:()=>aM,lora_packet:()=>pM,lora_recv:()=>LM,lora_send:()=>MM,network_espnow_info:()=>Jp,network_espnow_mac:()=>Qp,network_espnow_recv:()=>qp,network_espnow_recv_handle:()=>$p,network_espnow_send:()=>jp,recv_fun:()=>Hp,spi_buffer:()=>hM,spi_init:()=>dM,spi_read:()=>mM,spi_read_output:()=>CM,spi_readinto:()=>cM,spi_readinto_output:()=>HM,spi_set:()=>uM,spi_write:()=>DM,spi_write_readinto:()=>YM,urequests_attribute:()=>rM,urequests_get:()=>RM,urequests_method:()=>SM});var B={};_.r(B),_.d(B,{display_animate:()=>sL,display_blink_rate:()=>TL,display_circle:()=>OL,display_color_seclet:()=>NL,display_draw_4strings:()=>jM,display_fill:()=>oL,display_get_screen_image:()=>iL,display_help:()=>aL,display_image_size:()=>$M,display_lcd_use_i2c_init:()=>cL,display_line:()=>tL,display_line_arbitrarily:()=>eL,display_matrix_extern_bright_point:()=>wM,display_matrix_extern_bright_screen:()=>KM,display_matrix_extern_clear:()=>zM,display_matrix_extern_get_pixel:()=>kM,display_matrix_extern_get_screen_pixel:()=>WM,display_matrix_extern_image_builtins:()=>ZM,display_matrix_extern_scroll_string:()=>bM,display_matrix_extern_scroll_string_delay:()=>xM,display_matrix_extern_shift:()=>VM,display_matrix_extern_show_frame_string:()=>vM,display_matrix_extern_show_frame_string_delay:()=>XM,display_matrix_extern_show_image:()=>yM,display_matrix_extern_show_image_or_string_delay:()=>fM,display_matrix_use_i2c_init:()=>FM,display_oled_drawPixel:()=>ML,display_oled_showBitmap:()=>pL,display_oled_use_i2c_init:()=>gL,display_onoff:()=>nL,display_rect:()=>_L,display_rgb_color:()=>EL,display_tm1650_power:()=>RL,display_tm1650_set_brightness:()=>lL,display_tm1650_show_dot:()=>SL,display_tm1650_show_num:()=>rL,display_tm_use_i2c_init:()=>LL,display_triangle:()=>IL,display_use_i2c_init:()=>qM,extern_oled_bright_point:()=>kL,extern_oled_clear:()=>wL,extern_oled_get_pixel:()=>VL,extern_oled_hvline:()=>KL,extern_oled_line:()=>zL,extern_oled_scroll_string:()=>fL,extern_oled_scroll_string_delay:()=>bL,extern_oled_shape_rect:()=>WL,extern_oled_shift:()=>XL,extern_oled_show_frame_string:()=>xL,extern_oled_show_frame_string_delay:()=>vL,extern_oled_show_image:()=>BL,extern_oled_show_image_or_string_delay:()=>yL,extern_oled_show_image_xy:()=>GL,extern_oled_show_string:()=>FL,lcd_backlight:()=>YL,lcd_clear:()=>UL,lcd_print_string:()=>DL,lcd_show_image_or_string_delay:()=>HL,matrix_extern_image_arithmetic:()=>QM,matrix_extern_image_invert:()=>JM,tft_fill:()=>mL,tft_line_arbitrarily:()=>CL,tft_scroll_string_delay:()=>uL,tft_show_frame_string_delay:()=>hL,tft_show_image_or_string_delay:()=>dL,tft_show_image_xy:()=>PL,tft_use_spi_init:()=>AL});var G={};_.r(G),_.d(G,{bitbot_display_image_create:()=>gR,display_bright_point:()=>sR,display_bright_screen:()=>IR,display_clear:()=>aR,display_get_pixel:()=>oR,display_get_screen_pixel:()=>OR,display_image_builtins:()=>eR,display_image_builtins_all:()=>iR,display_image_create:()=>tR,display_scroll_string:()=>qL,display_scroll_string_delay:()=>jL,display_shift:()=>nR,display_show_frame_string:()=>$L,display_show_frame_string_delay:()=>_R,display_show_image:()=>QL,display_show_image_or_string_delay:()=>JL,image_arithmetic:()=>TR,image_invert:()=>ER,mixbot_display_bright_screen:()=>YR,mixbot_display_get_ambientbright:()=>DR,mixbot_display_get_screen_pixel:()=>HR,mixbot_display_image_create:()=>cR,mixbot_display_rotate:()=>UR,mixgo_display_image_create_new:()=>LR,mixgome_display_font:()=>RR,mixgome_display_image_create:()=>pR,mixgomini_display_image_create:()=>MR,mpython_display_hvline:()=>hR,mpython_display_line:()=>mR,mpython_display_shape_rect:()=>uR,mpython_pbm_image:()=>CR,onboard_oled_bright_point:()=>dR,onboard_oled_scroll_string_delay:()=>PR,onboard_oled_show_frame_string_delay:()=>NR,onboard_oled_show_image:()=>rR,onboard_oled_show_image_or_string_delay:()=>AR,onboard_oled_show_image_xy:()=>SR,onboard_oled_show_string:()=>lR,onboard_tft_bright_point:()=>WR,onboard_tft_bright_screen:()=>ZR,onboard_tft_clear:()=>KR,onboard_tft_clock_clear:()=>_r,onboard_tft_clock_draw:()=>$R,onboard_tft_clock_get_rtctime:()=>qR,onboard_tft_clock_init:()=>JR,onboard_tft_clock_set_time:()=>jR,onboard_tft_display_hvline:()=>XR,onboard_tft_display_line:()=>VR,onboard_tft_display_shape_circle:()=>tr,onboard_tft_display_shape_rect:()=>vR,onboard_tft_fill:()=>QR,onboard_tft_get_pixel:()=>wR,onboard_tft_get_screen_pixel:()=>zR,onboard_tft_scroll_string:()=>yR,onboard_tft_scroll_string_delay:()=>fR,onboard_tft_shift:()=>kR,onboard_tft_show_frame_string:()=>bR,onboard_tft_show_frame_string_delay:()=>xR,onboard_tft_show_image:()=>BR,onboard_tft_show_image_or_string_delay:()=>FR,onboard_tft_show_image_xy:()=>GR});var F={};_.r(F),_.d(F,{factory_block:()=>pr,factory_block_return:()=>Mr,factory_block_return_with_textarea:()=>Rr,factory_block_with_textarea:()=>Lr,factory_callMethod_noreturn:()=>Ir,factory_callMethod_return:()=>ar,factory_create_with_container:()=>nr,factory_create_with_item:()=>or,factory_declare:()=>Or,factory_from_import:()=>ir,factory_function_noreturn:()=>Er,factory_function_return:()=>sr,factory_import:()=>Tr,folding_block:()=>rr});var y={};_.r(y),_.d(y,{controls_pin_attachInterrupt:()=>br,inout_analog_atten:()=>Cr,inout_analog_read:()=>mr,inout_analog_read_init:()=>gr,inout_analog_write:()=>dr,inout_analog_write_init:()=>Ur,inout_analog_write_set:()=>ur,inout_analog_write_set_freq:()=>Fr,inout_digital_init:()=>Dr,inout_digital_read:()=>Pr,inout_digital_write:()=>Ar,inout_highlow:()=>lr,inout_pinMode:()=>Gr,inout_pin_attachInterrupt:()=>Hr,inout_pin_pressed:()=>cr,inout_pin_pressed_init:()=>Br,inout_pwm_analog_write:()=>Nr,inout_pwm_analog_write_init:()=>Yr,inout_pwm_analog_write_set_freq:()=>hr,pin_pressed:()=>fr,pin_pressed_init:()=>yr});var f={};_.r(f),_.d(f,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>sS,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>oS,IOT_EMQX_PING:()=>ES,IOT_FORMATTING:()=>iS,IOT_FORMAT_STRING:()=>TS,IOT_MIXIO_NTP:()=>nS,IOT_MIXIO_PUBLISH:()=>Jr,IOT_MIXIO_SUBSCRIBE:()=>qr,iot_checkonenet:()=>lS,iot_client_onboard:()=>IS,iot_create_with_item:()=>Zr,iot_http_client:()=>aS,iot_http_data:()=>pS,iot_mixio_check:()=>_S,iot_mixio_connect:()=>Qr,iot_mixio_connect_only:()=>$r,iot_mixio_disconnect:()=>jr,iot_mixio_format_msg:()=>eS,iot_mixio_format_topic:()=>tS,iot_mixly_key:()=>OS,iot_mqtt_client:()=>MS,iot_mqtt_data:()=>LS,iot_onenet_check:()=>kr,iot_onenet_connect:()=>Xr,iot_onenet_disconnect:()=>Vr,iot_onenet_publish:()=>Wr,iot_onenet_publish_dict:()=>wr,iot_onenetconnect:()=>rS,iot_onenetdisconnect:()=>SS,iot_publish:()=>AS,iot_publish_container:()=>Kr,iot_publish_item:()=>zr,iot_wifi_connect:()=>vr,iot_wificonnect:()=>RS});var b={};_.r(b),_.d(b,{network_ap_connect:()=>GS,network_connect:()=>mS,network_get_connect:()=>US,network_get_wifi:()=>BS,network_init:()=>NS,network_is_active:()=>uS,network_open:()=>dS,network_scan:()=>hS,network_server:()=>FS,network_socket_accept:()=>vS,network_socket_bind:()=>fS,network_socket_close:()=>WS,network_socket_connect:()=>bS,network_socket_init:()=>yS,network_socket_listen:()=>xS,network_socket_receive:()=>XS,network_socket_receive_from:()=>kS,network_socket_send:()=>VS,network_socket_send_to:()=>wS,network_stop:()=>gS,network_wifi_connect:()=>CS,ntptime_address:()=>JS,ntptime_time:()=>QS,requests_attribute:()=>zS,requests_get:()=>KS,requests_method:()=>ZS,urequests_connect_url:()=>DS,urequests_response:()=>YS,urequests_wifi_connect:()=>cS,urequests_wifi_url:()=>HS});var x={};_.r(x),_.d(x,{pe_g1_battery_left:()=>$S,pe_g1_dc_motor:()=>_l,pe_g1_dc_motor_speed:()=>tl,pe_g1_servo_get_angle:()=>Tl,pe_g1_servo_get_speed:()=>El,pe_g1_servo_set_angle:()=>el,pe_g1_servo_set_speed:()=>il,pe_g1_use_i2c_init:()=>jS});var v={};_.r(v),_.d(v,{HCSR04:()=>nA,PS2_Button:()=>IA,PS2_Buttons:()=>pA,PS2_Buttons_new:()=>rA,PS2_State:()=>aA,PS2_init:()=>oA,PS2_init_new:()=>LA,PS2_stk:()=>MA,PS2_stk_new:()=>SA,PS2_vibration:()=>OA,PS2_vibration_new:()=>RA,esp32_s2_weather_init:()=>eA,esp32_s2_weather_rain:()=>TA,esp32_s2_weather_wd:()=>iA,esp32_s2_weather_ws:()=>EA,extern_rfid_read:()=>Vl,extern_rfid_readcontent:()=>wl,extern_rfid_readid:()=>kl,extern_rfid_status:()=>zl,extern_rfid_write:()=>Wl,extern_rfid_write_return:()=>Kl,gnss_get_data:()=>NA,gnss_have_data:()=>PA,mixbot_sensor_extern_get_addr:()=>HA,mixbot_sensor_extern_set_addr:()=>DA,pm25_get_data:()=>AA,robot_button_extern_get_value:()=>dA,robot_color_extern_get_value:()=>cA,robot_infrared_extern_get_value:()=>hA,robot_infrared_extern_grey_get_value:()=>mA,robot_potentiometer_extern_get_value:()=>CA,robot_sonar_extern_get_value:()=>YA,robot_sonar_extern_led:()=>UA,robot_touch_extern_get_value:()=>uA,sensor_APDS9960_extern:()=>hl,sensor_LTR308_extern:()=>ml,sensor_LTR390UV_extern:()=>cl,sensor_MAX30102_extern:()=>ul,sensor_QMC5883L_extern:()=>gl,sensor_VL530LX_extern:()=>Hl,sensor_adxl345_get_acceleration:()=>pl,sensor_aht11_extern:()=>Yl,sensor_bmp:()=>ll,sensor_compass_reset:()=>vl,sensor_dht11:()=>Ll,sensor_ds18x20:()=>Pl,sensor_hp203_extern:()=>Ul,sensor_light_level:()=>Ml,sensor_lm35:()=>Nl,sensor_ltr381_extern:()=>Cl,sensor_mixgo_extern_button_attachInterrupt:()=>Il,sensor_mixgo_extern_button_get_presses:()=>Ol,sensor_mixgo_extern_button_is_pressed:()=>ol,sensor_mixgo_extern_button_was_pressed:()=>sl,sensor_mixgo_extern_light:()=>Rl,sensor_mixgo_extern_pin_near:()=>Sl,sensor_mixgo_extern_sound:()=>rl,sensor_mixgoce_hot_wheel_degrees:()=>tA,sensor_mixgoce_hot_wheel_is_touched:()=>_A,sensor_mpu9250_attachGestureInterrupt:()=>al,sensor_mpu9250_calibrate_compass:()=>fl,sensor_mpu9250_field_strength:()=>xl,sensor_mpu9250_gesture:()=>Bl,sensor_mpu9250_get_acceleration:()=>Gl,sensor_mpu9250_get_gyro:()=>yl,sensor_mpu9250_get_magnetic:()=>Fl,sensor_mpu9250_temperature:()=>bl,sensor_sht:()=>Al,sensor_shtc3_extern:()=>Dl,sensor_use_i2c_init:()=>dl,sensor_use_spi_init:()=>Xl,sensor_use_uart_init:()=>lA,sensor_weather_solo_init:()=>gA,sensor_weather_solo_rain:()=>FA,sensor_weather_solo_wd:()=>BA,sensor_weather_solo_ws:()=>GA,weather_data:()=>Zl,weather_have_data:()=>Ql,weather_set_label:()=>ql,weather_set_label_container:()=>jl,weather_set_label_item:()=>$l,weather_uart_mixio:()=>Jl});var X={};_.r(X),_.d(X,{HCSR04:()=>jA,RTC_set_date:()=>qA,RTC_set_time:()=>JA,bitbot_als_num:()=>iN,dht11:()=>IN,number1:()=>_P,number2:()=>tP,number3:()=>eP,number4:()=>iP,number5:()=>TP,number6:()=>EP,number7:()=>nP,onboard_RTC_get_time:()=>MP,onboard_RTC_get_timestamp:()=>LP,onboard_RTC_set_datetime:()=>SP,onboard_RTC_settime_string:()=>rP,onboard_RTC_timestamp_totuple:()=>RP,rfid_readcontent:()=>mP,rfid_readid:()=>hP,rfid_write:()=>CP,rfid_write_return:()=>cP,sensor_LTR308:()=>AP,sensor_aht11:()=>NP,sensor_bitbot_ALS:()=>eN,sensor_button_get_presses:()=>nN,sensor_button_is_pressed:()=>TN,sensor_button_was_pressed:()=>EN,sensor_distance_hrsc04:()=>QA,sensor_eulerangles:()=>DP,sensor_field_strength:()=>aN,sensor_get_acceleration:()=>HP,sensor_get_temperature:()=>dP,sensor_hp203:()=>uP,sensor_light:()=>ON,sensor_mixbot_get_gyro:()=>tN,sensor_mixbot_patrol_calibrate:()=>jP,sensor_mixbot_patrol_value:()=>$P,sensor_mixbot_temperature:()=>_N,sensor_mixgo_LTR308:()=>pP,sensor_mixgo_button_attachInterrupt:()=>vA,sensor_mixgo_button_get_presses:()=>xA,sensor_mixgo_button_is_pressed:()=>fA,sensor_mixgo_button_was_pressed:()=>bA,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>vP,sensor_mixgo_cc_mmc5603_get_angle:()=>xP,sensor_mixgo_cc_mmc5603_get_magnetic:()=>bP,sensor_mixgo_light:()=>$A,sensor_mixgo_nova_LTR308:()=>aP,sensor_mixgo_nova_pin_near:()=>IP,sensor_mixgo_pin_near:()=>OP,sensor_mixgo_pin_near_double:()=>sP,sensor_mixgo_pin_near_single:()=>oP,sensor_mixgo_pin_pressed:()=>WA,sensor_mixgo_touch_slide:()=>ZA,sensor_mixgocar42_button_attachInterrupt:()=>wA,sensor_mixgocar42_button_get_presses:()=>kA,sensor_mixgocar42_button_is_pressed:()=>XA,sensor_mixgocar42_button_was_pressed:()=>VA,sensor_mixgocar_battery_left:()=>qP,sensor_mixgocar_pin_near:()=>QP,sensor_mixgocar_pin_near_line:()=>ZP,sensor_mixgocar_pin_near_state_change:()=>JP,sensor_mixgoce_pin_pressed:()=>KA,sensor_mixgoce_temperature:()=>VP,sensor_mixgome_temperature:()=>XP,sensor_mpython_pin_pressed:()=>zA,sensor_mpython_qmi8658_get_gyro:()=>kP,sensor_mpython_qmi8658_temperature:()=>wP,sensor_onboard_compass_reset:()=>fP,sensor_onboard_mpu9250_calibrate_compass:()=>GP,sensor_onboard_mpu9250_field_strength:()=>yP,sensor_onboard_mpu9250_gesture:()=>YP,sensor_onboard_mpu9250_get_acceleration:()=>UP,sensor_onboard_mpu9250_get_gyro:()=>BP,sensor_onboard_mpu9250_get_magnetic:()=>gP,sensor_onboard_mpu9250_temperature:()=>FP,sensor_pin_near:()=>sN,sensor_pin_pressed:()=>oN,sensor_rm_acc:()=>zP,sensor_rm_battery_left:()=>KP,sensor_rm_pin_near_double:()=>WP,sensor_rtc_init:()=>lP,sensor_sound:()=>PP,sensor_temperature:()=>pN});var V={};_.r(V),_.d(V,{serial_any:()=>PN,serial_begin:()=>mN,serial_print:()=>RN,serial_print_byte:()=>LN,serial_print_hex:()=>SN,serial_println:()=>rN,serial_read_from_ai:()=>GN,serial_readline:()=>NN,serial_readstr:()=>AN,serial_readstr_until:()=>dN,serial_receive_data_event:()=>lN,serial_send_to_ai:()=>BN,serial_softserial:()=>hN,serial_softserial_new:()=>uN,system_input:()=>CN,system_print:()=>cN,system_print_container:()=>UN,system_print_end:()=>DN,system_print_inline:()=>HN,system_print_item:()=>gN,system_print_many:()=>YN});var k={};_.r(k),_.d(k,{Panic_with_status_code:()=>bN,Timer_init:()=>qN,base_delay:()=>_d,controls_delay:()=>fN,controls_delay_new:()=>yN,controls_millis:()=>vN,controls_uname:()=>VN,raw_block:()=>XN,reset:()=>xN,system_bitbot_shutdown:()=>JN,system_machine_reset:()=>QN,system_ticks_diff:()=>WN,system_timer:()=>wN,system_timer_init:()=>KN,system_wdt_feed:()=>ZN,system_wdt_init:()=>zN,time_ticks_diff:()=>$N,timer:()=>kN,timer2:()=>jN});var w={};_.r(w),_.d(w,{WEATHER_DAILY:()=>id,WEATHER_HOUR:()=>Td,WEATHER_NOW:()=>ed});var W={};_.r(W),_.d(W,{actuator_extern_get_led_bright:()=>hd,actuator_extern_get_led_state:()=>md,actuator_extern_led_bright:()=>ud,actuator_extern_led_brightness:()=>Cd,actuator_ms32006_dcmotor:()=>pd,actuator_ms32006_init:()=>ad,actuator_ms32006_stepper:()=>Md,actuator_neopixel_init:()=>cd,actuator_neopixel_rgb:()=>Yd,actuator_neopixel_rgb_all:()=>Hd,actuator_neopixel_write:()=>Dd,actuator_use_uart_init:()=>Ud,esp32_music_get_tempo_extern:()=>Ad,esp32_music_pitch:()=>Rd,esp32_music_pitch_init:()=>Ld,esp32_music_pitch_with_time:()=>rd,esp32_music_play_list:()=>Pd,esp32_music_reset_extern:()=>Nd,esp32_music_set_tempo_extern:()=>ld,esp32_music_stop:()=>Sd,mixbot_actuator_extern_get_addr:()=>Qd,mixbot_actuator_extern_set_addr:()=>Jd,mixbot_addr_extern:()=>yd,robot_led_extern:()=>vd,robot_led_extern_get_value:()=>Xd,robot_motor_extern:()=>fd,robot_motor_extern_get_speed:()=>bd,robot_servo_extern_absolute_run:()=>Wd,robot_servo_extern_get_status:()=>Vd,robot_servo_extern_relative_continue:()=>Zd,robot_servo_extern_relative_origin:()=>Kd,robot_servo_extern_relative_run:()=>zd,robot_servo_extern_stop:()=>wd,robot_servo_extern_stop_mode:()=>kd,robot_traffic_light_extern:()=>xd,servo_get_angle:()=>Od,servo_get_speed:()=>Id,servo_init:()=>Ed,servo_move:()=>dd,servo_set_angle:()=>od,servo_set_speed:()=>sd,servo_speed_360:()=>nd,syn6288_builtin_voice:()=>Gd,syn6288_get_voice:()=>Bd,syn6288_set_voice:()=>gd,syn6288_tts_play:()=>Fd});var K={};_.r(K),_.d(K,{actuator_dc_motor:()=>hu,actuator_dc_motor_stop:()=>mu,actuator_get_led_bright:()=>ou,actuator_get_led_state:()=>su,actuator_led_bright:()=>nu,actuator_led_brightness:()=>Ou,actuator_mixbot_buzzer_on_off:()=>Yu,actuator_mixgo_nova_mic_get:()=>Fu,actuator_mixgo_nova_mic_set:()=>Gu,actuator_mixgo_nova_onboard_music_pitch:()=>Xu,actuator_mixgo_nova_onboard_music_stop:()=>Vu,actuator_mixgo_nova_play_audio:()=>xu,actuator_mixgo_nova_play_online_audio:()=>vu,actuator_mixgo_nova_record_audio:()=>bu,actuator_mixgo_nova_voice_get:()=>fu,actuator_mixgo_nova_voice_set:()=>yu,actuator_mixgo_zero_led_color:()=>Iu,actuator_onboard_neopixel_rgb:()=>Su,actuator_onboard_neopixel_rgb_all:()=>lu,actuator_onboard_neopixel_rgb_show_all_chase:()=>Au,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>Pu,actuator_onboard_neopixel_write:()=>ru,actuator_stepper_keep:()=>du,actuator_stepper_stop:()=>uu,analog_keyboard_input:()=>Ku,analog_keyboard_str:()=>qu,analog_mouse_input:()=>Qu,bitbot_motor:()=>Bu,bitbot_move:()=>Uu,bitbot_stop:()=>gu,cc_number:()=>au,esp32_music_get_tempo:()=>jd,esp32_music_reset:()=>iu,esp32_music_set_tempo:()=>qd,esp32_onboard_music_pitch:()=>$d,esp32_onboard_music_pitch_with_time:()=>_u,esp32_onboard_music_play_list:()=>eu,esp32_onboard_music_stop:()=>tu,general_key:()=>Zu,get_power_output:()=>wu,ledswitch:()=>Eu,mixbot_motor:()=>Du,mixbot_motor_status:()=>Cu,mixbot_move:()=>cu,mixbot_stop:()=>Hu,mouse_key:()=>Ju,number:()=>Tu,rm_actuator_get_led_bright:()=>Mu,rm_actuator_get_led_state:()=>Lu,rm_actuator_led_bright:()=>pu,rm_actuator_led_brightness:()=>Ru,rm_motor:()=>Nu,set_all_power_output:()=>Wu,set_power_output:()=>ku,special_key:()=>zu});var z={};_.r(z),_.d(z,{ai_sensor_20object:()=>Yh,ai_sensor_ailocal_class:()=>Ah,ai_sensor_ailocal_class_result:()=>Ph,ai_sensor_ailocal_train:()=>lh,ai_sensor_asr_recognize:()=>mh,ai_sensor_audio_play:()=>dh,ai_sensor_audio_record:()=>Nh,ai_sensor_barcode:()=>Th,ai_sensor_circle:()=>Ih,ai_sensor_classifier_faces:()=>Dh,ai_sensor_color:()=>Lh,ai_sensor_color_chases:()=>Sh,ai_sensor_color_chases_result:()=>rh,ai_sensor_config:()=>_h,ai_sensor_face:()=>Hh,ai_sensor_find_20objects:()=>Uh,ai_sensor_find_barcodes:()=>Eh,ai_sensor_find_circles:()=>ah,ai_sensor_find_colors:()=>Rh,ai_sensor_find_licenseplates:()=>ch,ai_sensor_find_lines:()=>Oh,ai_sensor_find_qrcodes:()=>ih,ai_sensor_find_rects:()=>Mh,ai_sensor_find_tags:()=>oh,ai_sensor_licenseplate:()=>Ch,ai_sensor_line:()=>sh,ai_sensor_qrcode:()=>eh,ai_sensor_qrcode_lite:()=>$u,ai_sensor_rect:()=>ph,ai_sensor_rgb:()=>th,ai_sensor_tag:()=>nh,ai_sensor_use_uart_init:()=>ju,ai_sensor_yolo_recognize:()=>uh,ai_sensor_yolo_recognize_result:()=>hh});var Z={};_.r(Z),_.d(Z,{MICROPYTHON_AI_Speech_asr:()=>Gh,MICROPYTHON_AI_Speech_unit:()=>Bh,MICROPYTHON_AI_client:()=>gh});var Q={};_.r(Q),_.d(Q,{mpython_blynk_app_data:()=>Kh,mpython_blynk_app_notify:()=>Xh,mpython_blynk_email:()=>zh,mpython_blynk_get_timers:()=>kh,mpython_blynk_on_connected:()=>bh,mpython_blynk_on_disconnected:()=>fh,mpython_blynk_run:()=>vh,mpython_blynk_sensor_data_to_app:()=>Wh,mpython_blynk_set_property:()=>Zh,mpython_blynk_setup:()=>Qh,mpython_blynk_stop_timers:()=>Vh,mpython_blynk_sync_virtual:()=>yh,mpython_blynk_terminal_widget_vpin:()=>Fh,mpython_blynktimer:()=>wh,mpython_blynktimer_run:()=>xh});var J={};_.r(J),_.d(J,{communicate_bluetooth_central_init:()=>Ym,communicate_bluetooth_connect:()=>Bm,communicate_bluetooth_disconnect:()=>Gm,communicate_bluetooth_handle:()=>vm,communicate_bluetooth_is_connected:()=>ym,communicate_bluetooth_mac:()=>Fm,communicate_bluetooth_peripheral_init:()=>Um,communicate_bluetooth_recv:()=>xm,communicate_bluetooth_recv_only:()=>bm,communicate_bluetooth_scan:()=>gm,communicate_bluetooth_send:()=>fm,communicate_espnow_init:()=>Xm,communicate_espnow_init_new:()=>Vm,communicate_i2c_available:()=>im,communicate_i2c_init:()=>jh,communicate_i2c_master_read:()=>em,communicate_i2c_onboard:()=>Jh,communicate_i2c_read:()=>$h,communicate_i2c_scan:()=>tm,communicate_i2c_write:()=>_m,communicate_ir_recv_init:()=>Pm,communicate_ir_send_init:()=>mm,communicate_ow_init:()=>Lm,communicate_ow_read:()=>Sm,communicate_ow_reset:()=>rm,communicate_ow_scan:()=>Rm,communicate_ow_select:()=>Am,communicate_ow_write:()=>lm,communicate_spi_buffer:()=>om,communicate_spi_init:()=>Em,communicate_spi_onboard:()=>qh,communicate_spi_read:()=>sm,communicate_spi_read_output:()=>Om,communicate_spi_readinto:()=>Im,communicate_spi_readinto_output:()=>am,communicate_spi_set:()=>nm,communicate_spi_write:()=>pm,communicate_spi_write_readinto:()=>Mm,espnow_radio_channel:()=>Zm,espnow_radio_channel_new:()=>Jm,espnow_radio_on_off:()=>qm,espnow_radio_rec:()=>$m,espnow_radio_recv:()=>tC,espnow_radio_recv_certain_msg:()=>eC,espnow_radio_recv_certain_msg_new:()=>TC,espnow_radio_recv_msg:()=>_C,espnow_radio_recv_new:()=>iC,espnow_radio_send:()=>jm,espnow_radio_txpower:()=>Qm,i2c_slave_onreceive:()=>Tm,internal_variable:()=>Nm,ir_recv_timeout:()=>hm,ir_transmit_busy:()=>Dm,ir_transmit_conventional_data:()=>Cm,ir_transmit_raw_code:()=>Hm,ir_transmit_study_code:()=>cm,ir_whether_recv:()=>um,lora_init:()=>EC,lora_packet:()=>nC,lora_recv:()=>sC,lora_send:()=>oC,network_espnow_info:()=>wm,network_espnow_mac:()=>km,network_espnow_recv:()=>Wm,network_espnow_recv_handle:()=>zm,network_espnow_send:()=>Km,recv_fun:()=>dm,urequests_attribute:()=>IC,urequests_get:()=>OC,urequests_method:()=>aC});var q={};_.r(q),_.d(q,{display_animate:()=>yC,display_circle:()=>fC,display_color_seclet:()=>ZC,display_draw_4strings:()=>DC,display_fill:()=>FC,display_lcd_use_i2c_init:()=>_c,display_line:()=>gC,display_line_arbitrarily:()=>YC,display_matrix_extern_bright_point:()=>dC,display_matrix_extern_bright_screen:()=>hC,display_matrix_extern_clear:()=>AC,display_matrix_extern_get_pixel:()=>NC,display_matrix_extern_get_screen_pixel:()=>uC,display_matrix_extern_image_builtins:()=>mC,display_matrix_extern_scroll_string:()=>SC,display_matrix_extern_scroll_string_delay:()=>lC,display_matrix_extern_shift:()=>PC,display_matrix_extern_show_frame_string:()=>RC,display_matrix_extern_show_frame_string_delay:()=>rC,display_matrix_extern_show_image:()=>MC,display_matrix_extern_show_image_or_string_delay:()=>LC,display_matrix_use_i2c_init:()=>pC,display_oled_drawPixel:()=>vC,display_oled_showBitmap:()=>xC,display_oled_use_i2c_init:()=>Ec,display_onoff:()=>BC,display_rect:()=>UC,display_tm1650_power:()=>VC,display_tm1650_set_brightness:()=>WC,display_tm1650_show_dot:()=>wC,display_tm1650_show_num:()=>kC,display_tm_use_i2c_init:()=>XC,display_triangle:()=>bC,display_use_i2c_init:()=>HC,extern_oled_bright_point:()=>Sc,extern_oled_clear:()=>Lc,extern_oled_get_pixel:()=>rc,extern_oled_hvline:()=>Ac,extern_oled_line:()=>Pc,extern_oled_scroll_string:()=>pc,extern_oled_scroll_string_delay:()=>Mc,extern_oled_shape_rect:()=>lc,extern_oled_shift:()=>Rc,extern_oled_show_frame_string:()=>Ic,extern_oled_show_frame_string_delay:()=>ac,extern_oled_show_image:()=>nc,extern_oled_show_image_or_string_delay:()=>Oc,extern_oled_show_image_xy:()=>oc,extern_oled_show_string:()=>sc,image_shift:()=>GC,lcd_backlight:()=>ic,lcd_clear:()=>Tc,lcd_print_string:()=>ec,lcd_show_image_or_string_delay:()=>tc,matrix_extern_image_arithmetic:()=>CC,matrix_extern_image_invert:()=>cC,tft_fill:()=>jC,tft_line_arbitrarily:()=>$C,tft_scroll_string_delay:()=>qC,tft_show_frame_string_delay:()=>JC,tft_show_image_or_string_delay:()=>QC,tft_show_image_xy:()=>zC,tft_use_spi_init:()=>KC});var j={};_.r(j),_.d(j,{bitbot_display_image_create:()=>TH,display_bright_point:()=>Fc,display_bright_screen:()=>fc,display_clear:()=>Yc,display_get_pixel:()=>Gc,display_get_screen_pixel:()=>yc,display_image_builtins:()=>cc,display_image_builtins_all:()=>Hc,display_image_create:()=>Dc,display_scroll_string:()=>mc,display_scroll_string_delay:()=>Cc,display_shift:()=>Bc,display_show_frame_string:()=>uc,display_show_frame_string_delay:()=>hc,display_show_image:()=>Nc,display_show_image_or_string_delay:()=>dc,image_arithmetic:()=>Uc,image_invert:()=>gc,mixbot_display_bright_screen:()=>eH,mixbot_display_get_ambientbright:()=>tH,mixbot_display_get_screen_pixel:()=>_H,mixbot_display_image_create:()=>$c,mixbot_display_rotate:()=>iH,mixgo_display_image_create_new:()=>Xc,mixgome_display_font:()=>vc,mixgome_display_image_create:()=>bc,mixgomini_display_image_create:()=>xc,mpython_display_hvline:()=>qc,mpython_display_line:()=>jc,mpython_display_shape_rect:()=>Jc,mpython_pbm_image:()=>Vc,onboard_oled_bright_point:()=>Qc,onboard_oled_scroll_string_delay:()=>Zc,onboard_oled_show_frame_string_delay:()=>zc,onboard_oled_show_image:()=>kc,onboard_oled_show_image_or_string_delay:()=>Kc,onboard_oled_show_image_xy:()=>wc,onboard_oled_show_string:()=>Wc,onboard_tft_bright_point:()=>lH,onboard_tft_bright_screen:()=>PH,onboard_tft_clear:()=>RH,onboard_tft_clock_clear:()=>CH,onboard_tft_clock_draw:()=>mH,onboard_tft_clock_get_rtctime:()=>uH,onboard_tft_clock_init:()=>dH,onboard_tft_clock_set_time:()=>hH,onboard_tft_display_hvline:()=>MH,onboard_tft_display_line:()=>LH,onboard_tft_display_shape_circle:()=>cH,onboard_tft_display_shape_rect:()=>pH,onboard_tft_fill:()=>NH,onboard_tft_get_pixel:()=>SH,onboard_tft_get_screen_pixel:()=>AH,onboard_tft_scroll_string:()=>IH,onboard_tft_scroll_string_delay:()=>aH,onboard_tft_shift:()=>rH,onboard_tft_show_frame_string:()=>sH,onboard_tft_show_frame_string_delay:()=>OH,onboard_tft_show_image:()=>EH,onboard_tft_show_image_or_string_delay:()=>oH,onboard_tft_show_image_xy:()=>nH});var $={};_.r($),_.d($,{factory_block:()=>FH,factory_block_return:()=>yH,factory_block_return_with_textarea:()=>bH,factory_block_with_textarea:()=>fH,factory_callMethod_noreturn:()=>BH,factory_callMethod_return:()=>GH,factory_declare:()=>gH,factory_from_import:()=>HH,factory_function_noreturn:()=>YH,factory_function_return:()=>UH,factory_import:()=>DH,folding_block:()=>xH});var __={};_.r(__),_.d(__,{inout_analog_atten:()=>_D,inout_analog_read:()=>zH,inout_analog_read_init:()=>$H,inout_analog_write:()=>wH,inout_analog_write_init:()=>jH,inout_analog_write_set:()=>WH,inout_digital_init:()=>JH,inout_digital_read:()=>VH,inout_digital_write:()=>XH,inout_highlow:()=>vH,inout_pin_attachInterrupt:()=>QH,inout_pin_pressed:()=>ZH,inout_pin_pressed_init:()=>tD,inout_pwm_analog_write:()=>kH,inout_pwm_analog_write_init:()=>qH,inout_pwm_analog_write_set_freq:()=>KH});var t_={};_.r(t_),_.d(t_,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>PD,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>lD,IOT_EMQX_PING:()=>ND,IOT_FORMATTING:()=>rD,IOT_FORMAT_STRING:()=>SD,IOT_MIXIO_NTP:()=>dD,IOT_MIXIO_PUBLISH:()=>OD,IOT_MIXIO_SUBSCRIBE:()=>ID,iot_client_onboard:()=>uD,iot_http_client:()=>hD,iot_http_data:()=>mD,iot_mixio_check:()=>MD,iot_mixio_connect:()=>sD,iot_mixio_connect_only:()=>pD,iot_mixio_disconnect:()=>aD,iot_mixio_format_msg:()=>RD,iot_mixio_format_topic:()=>LD,iot_mixly_key:()=>AD,iot_mqtt_client:()=>CD,iot_mqtt_data:()=>cD,iot_onenet_check:()=>nD,iot_onenet_connect:()=>iD,iot_onenet_disconnect:()=>TD,iot_onenet_publish:()=>oD,iot_onenet_publish_dict:()=>ED,iot_wifi_connect:()=>eD});var e_={};_.r(e_),_.d(e_,{network_ap_connect:()=>yD,network_connect:()=>DD,network_get_connect:()=>UD,network_get_wifi:()=>FD,network_init:()=>HD,network_is_active:()=>GD,network_open:()=>BD,network_scan:()=>fD,network_server:()=>bD,network_socket_accept:()=>kD,network_socket_bind:()=>vD,network_socket_close:()=>ZD,network_socket_connect:()=>XD,network_socket_init:()=>xD,network_socket_listen:()=>VD,network_socket_receive:()=>wD,network_socket_receive_from:()=>KD,network_socket_send:()=>WD,network_socket_send_to:()=>zD,network_stop:()=>gD,network_wifi_connect:()=>YD,ntptime_address:()=>$D,ntptime_time:()=>jD,requests_attribute:()=>JD,requests_get:()=>QD,requests_method:()=>qD,urequests_connect_url:()=>eY,urequests_response:()=>iY,urequests_wifi_connect:()=>_Y,urequests_wifi_url:()=>tY});var i_={};_.r(i_),_.d(i_,{pe_g1_battery_left:()=>EY,pe_g1_dc_motor:()=>nY,pe_g1_dc_motor_speed:()=>oY,pe_g1_servo_get_angle:()=>IY,pe_g1_servo_get_speed:()=>aY,pe_g1_servo_set_angle:()=>sY,pe_g1_servo_set_speed:()=>OY,pe_g1_use_i2c_init:()=>TY});var T_={};_.r(T_),_.d(T_,{HCSR04:()=>_U,PS2_Button:()=>iU,PS2_Buttons:()=>TU,PS2_Buttons_new:()=>pU,PS2_State:()=>EU,PS2_init:()=>tU,PS2_init_new:()=>IU,PS2_stk:()=>nU,PS2_stk_new:()=>MU,PS2_vibration:()=>eU,PS2_vibration_new:()=>aU,RTC_get_time:()=>sU,RTC_set_date:()=>AY,RTC_set_datetime:()=>oU,RTC_set_time:()=>lY,esp32_s2_weather_init:()=>JY,esp32_s2_weather_rain:()=>jY,esp32_s2_weather_wd:()=>qY,esp32_s2_weather_ws:()=>$Y,extern_rfid_read:()=>bY,extern_rfid_readcontent:()=>vY,extern_rfid_readid:()=>xY,extern_rfid_status:()=>kY,extern_rfid_write:()=>XY,extern_rfid_write_return:()=>VY,gnss_get_data:()=>rU,gnss_have_data:()=>SU,mixbot_sensor_extern_get_addr:()=>CU,mixbot_sensor_extern_set_addr:()=>cU,pm25_get_data:()=>RU,robot_button_extern_get_value:()=>lU,robot_color_extern_get_value:()=>uU,robot_infrared_extern_get_value:()=>PU,robot_infrared_extern_grey_get_value:()=>NU,robot_potentiometer_extern_get_value:()=>dU,robot_sonar_extern_get_value:()=>hU,robot_sonar_extern_led:()=>mU,robot_touch_extern_get_value:()=>AU,sensor_APDS9960_extern:()=>HY,sensor_LTR308_extern:()=>DY,sensor_LTR390UV_extern:()=>gY,sensor_MAX30102_extern:()=>cY,sensor_QMC5883L_extern:()=>BY,sensor_VL530LX_extern:()=>yY,sensor_aht11_extern:()=>FY,sensor_bmp:()=>hY,sensor_dht11:()=>OU,sensor_distance_hrsc04:()=>SY,sensor_hp203_extern:()=>YY,sensor_ltr381_extern:()=>UY,sensor_mixgo_extern_button_attachInterrupt:()=>RY,sensor_mixgo_extern_button_get_presses:()=>LY,sensor_mixgo_extern_button_is_pressed:()=>pY,sensor_mixgo_extern_button_was_pressed:()=>MY,sensor_mixgo_extern_light:()=>PY,sensor_mixgo_extern_pin_near:()=>dY,sensor_mixgo_extern_sound:()=>NY,sensor_mixgoce_hot_wheel_degrees:()=>QY,sensor_mixgoce_hot_wheel_is_touched:()=>ZY,sensor_mpu9250_attachGestureInterrupt:()=>rY,sensor_rtc_init:()=>uY,sensor_sht:()=>mY,sensor_shtc3_extern:()=>GY,sensor_use_i2c_init:()=>CY,sensor_use_spi_init:()=>fY,sensor_use_uart_init:()=>LU,sensor_weather_solo_init:()=>HU,sensor_weather_solo_rain:()=>UU,sensor_weather_solo_wd:()=>DU,sensor_weather_solo_ws:()=>YU,weather_data:()=>wY,weather_have_data:()=>WY,weather_set_label:()=>zY,weather_uart_mixio:()=>KY});var E_={};_.r(E_),_.d(E_,{HCSR04:()=>vU,bitbot_als_num:()=>TB,dht11:()=>pB,number1:()=>XU,number2:()=>VU,number3:()=>kU,number4:()=>wU,number5:()=>WU,number6:()=>KU,number7:()=>zU,onboard_RTC_get_time:()=>yg,onboard_RTC_get_timestamp:()=>fg,onboard_RTC_set_datetime:()=>Gg,onboard_RTC_settime_string:()=>Fg,onboard_RTC_timestamp_totuple:()=>bg,rfid_readcontent:()=>sg,rfid_readid:()=>og,rfid_write:()=>Og,rfid_write_return:()=>Ig,sensor_LTR308:()=>eg,sensor_adxl345_get_acceleration:()=>Ag,sensor_aht11:()=>Eg,sensor_bitbot_ALS:()=>iB,sensor_button_get_presses:()=>oB,sensor_button_is_pressed:()=>EB,sensor_button_was_pressed:()=>nB,sensor_compass_reset:()=>mg,sensor_ds18x20:()=>_g,sensor_eulerangles:()=>pg,sensor_get_acceleration:()=>ag,sensor_get_temperature:()=>ng,sensor_hp203:()=>Tg,sensor_light:()=>aB,sensor_lm35:()=>tg,sensor_mixbot_get_gyro:()=>eB,sensor_mixbot_patrol_calibrate:()=>$g,sensor_mixbot_patrol_value:()=>_B,sensor_mixbot_temperature:()=>tB,sensor_mixgo_LTR308:()=>jU,sensor_mixgo_button_attachInterrupt:()=>FU,sensor_mixgo_button_get_presses:()=>GU,sensor_mixgo_button_is_pressed:()=>gU,sensor_mixgo_button_was_pressed:()=>BU,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Xg,sensor_mixgo_cc_mmc5603_get_angle:()=>vg,sensor_mixgo_cc_mmc5603_get_magnetic:()=>xg,sensor_mixgo_light:()=>IB,sensor_mixgo_nova_LTR308:()=>$U,sensor_mixgo_nova_pin_near:()=>qU,sensor_mixgo_pin_near:()=>JU,sensor_mixgo_pin_near_double:()=>QU,sensor_mixgo_pin_near_single:()=>ZU,sensor_mixgo_pin_pressed:()=>Sg,sensor_mixgo_touch_slide:()=>rg,sensor_mixgocar42_button_attachInterrupt:()=>xU,sensor_mixgocar42_button_get_presses:()=>bU,sensor_mixgocar42_button_is_pressed:()=>yU,sensor_mixgocar42_button_was_pressed:()=>fU,sensor_mixgocar_battery_left:()=>jg,sensor_mixgocar_pin_near:()=>Jg,sensor_mixgocar_pin_near_line:()=>Qg,sensor_mixgocar_pin_near_state_change:()=>qg,sensor_mixgoce_pin_pressed:()=>Rg,sensor_mixgoce_temperature:()=>kg,sensor_mixgome_temperature:()=>Vg,sensor_mpu9250_calibrate_compass:()=>dg,sensor_mpu9250_field_strength:()=>hg,sensor_mpu9250_gesture:()=>Mg,sensor_mpu9250_get_acceleration:()=>Lg,sensor_mpu9250_get_gyro:()=>Ng,sensor_mpu9250_get_magnetic:()=>Pg,sensor_mpu9250_temperature:()=>ug,sensor_mpython_pin_pressed:()=>lg,sensor_mpython_qmi8658_get_gyro:()=>wg,sensor_mpython_qmi8658_temperature:()=>Wg,sensor_onboard_compass_reset:()=>Bg,sensor_onboard_mpu9250_calibrate_compass:()=>Yg,sensor_onboard_mpu9250_field_strength:()=>gg,sensor_onboard_mpu9250_gesture:()=>Cg,sensor_onboard_mpu9250_get_acceleration:()=>cg,sensor_onboard_mpu9250_get_gyro:()=>Dg,sensor_onboard_mpu9250_get_magnetic:()=>Hg,sensor_onboard_mpu9250_temperature:()=>Ug,sensor_pin_near:()=>OB,sensor_pin_pressed:()=>sB,sensor_rm_acc:()=>Zg,sensor_rm_battery_left:()=>zg,sensor_rm_pin_near_double:()=>Kg,sensor_sound:()=>ig});var n_={};_.r(n_),_.d(n_,{serial_any:()=>SB,serial_print:()=>MB,serial_print_byte:()=>LB,serial_print_hex:()=>rB,serial_println:()=>RB,serial_read_from_ai:()=>HB,serial_readline:()=>AB,serial_readstr:()=>lB,serial_send_to_ai:()=>cB,serial_softserial:()=>PB,serial_softserial_new:()=>NB,system_input:()=>dB,system_print:()=>uB,system_print_end:()=>mB,system_print_inline:()=>hB,system_print_many:()=>CB});var o_={};_.r(o_),_.d(o_,{Panic_with_status_code:()=>vB,Timer_init:()=>tG,base_delay:()=>TG,controls_delay:()=>WB,controls_delay_new:()=>KB,controls_end_program:()=>VB,controls_millis:()=>XB,controls_uname:()=>wB,reset:()=>kB,system_bitbot_shutdown:()=>_G,system_device_name:()=>bB,system_device_serial_number:()=>xB,system_event_bus_source:()=>yB,system_event_bus_value:()=>fB,system_machine_reset:()=>$B,system_on_event:()=>BB,system_raise_event:()=>gB,system_reset:()=>YB,system_run_in_background:()=>DB,system_ticks_diff:()=>QB,system_timer:()=>ZB,system_timer_init:()=>JB,system_timestamp:()=>GB,system_value:()=>FB,system_wait:()=>UB,system_wdt_feed:()=>jB,system_wdt_init:()=>qB,time_ticks_diff:()=>iG,timer:()=>zB,timer2:()=>eG});var s_={};_.r(s_),_.d(s_,{WEATHER_DAILY:()=>nG,WEATHER_HOUR:()=>oG,WEATHER_NOW:()=>EG});var O_={};_.r(O_),_.d(O_,{analog_input:()=>AG,analog_output:()=>NG,espnow_channel:()=>rG,haskylens_model:()=>SG,i2c_A_pin:()=>dG,i2c_B_pin:()=>uG,pins_analog:()=>HG,pins_analog_pin:()=>DG,pins_axis:()=>WG,pins_brightness:()=>KG,pins_builtinimg:()=>bG,pins_builtinimg_extern:()=>xG,pins_button:()=>gG,pins_dac:()=>YG,pins_dac_pin:()=>UG,pins_digital:()=>aG,pins_digital_dot:()=>_F,pins_digital_pin:()=>pG,pins_exlcdh:()=>kG,pins_exlcdv:()=>wG,pins_imglist:()=>vG,pins_input_pin:()=>MG,pins_mpython_touch:()=>RG,pins_one_more:()=>$G,pins_output_pin:()=>LG,pins_playlist:()=>XG,pins_playlist_extern:()=>VG,pins_pwm:()=>BG,pins_pwm_pin:()=>GG,pins_radio_datarate:()=>jG,pins_radio_power:()=>qG,pins_serial:()=>fG,pins_tone_notes:()=>JG,pins_touch:()=>yG,pins_touch_pin:()=>FG,pins_tts_bgmusic:()=>QG,pins_tts_builtin_music:()=>ZG,pins_tts_voice:()=>zG,pwm_input:()=>lG,pwm_output:()=>PG,spi_A_pin:()=>hG,spi_B_pin:()=>mG,spi_C_pin:()=>CG,spi_D_pin:()=>cG});var I_={};_.r(I_),_.d(I_,{espnow_channel:()=>IF,haskylens_model:()=>aF,pins_analog:()=>oF,pins_analog_pin:()=>nF,pins_axis:()=>hF,pins_brightness:()=>cF,pins_builtinimg:()=>AF,pins_builtinimg_extern:()=>PF,pins_button:()=>eF,pins_dac:()=>LF,pins_dac_pin:()=>MF,pins_digital:()=>tF,pins_digital_dot:()=>FF,pins_digital_pin:()=>iF,pins_exlcdh:()=>mF,pins_exlcdv:()=>CF,pins_imglist:()=>NF,pins_input_pin:()=>TF,pins_interrupt:()=>SF,pins_mpython_touch:()=>pF,pins_one_more:()=>GF,pins_output_pin:()=>EF,pins_playlist:()=>dF,pins_playlist_extern:()=>uF,pins_pwm:()=>OF,pins_pwm_pin:()=>sF,pins_radio_datarate:()=>BF,pins_radio_power:()=>gF,pins_serial:()=>lF,pins_tone_notes:()=>UF,pins_touch:()=>rF,pins_touch_pin:()=>RF,pins_tts_bgmusic:()=>YF,pins_tts_builtin_music:()=>DF,pins_tts_voice:()=>HF});const a_=Blockly,p_=Mixly,M_={NAME_TYPE:"VARIABLE",allVariables:function(_){var t;if(_.getDescendants)t=_.getDescendants();else{if(!_.getAllBlocks)throw"Not Block or Workspace: "+_;t=_.getAllBlocks()}for(var e=Object.create(null),i=0;i1&&(n+=i)):e=n}else e="i";return e}},L_=M_; +(()=>{"use strict";var _={d:(t,e)=>{for(var i in e)_.o(e,i)&&!_.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},o:(_,t)=>Object.prototype.hasOwnProperty.call(_,t),r:_=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(_,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(_,"__esModule",{value:!0})}},t={};_.r(t),_.d(t,{controls_type:()=>d_,controls_typeLists:()=>u_,variables_change:()=>P_,variables_get:()=>l_,variables_global:()=>N_,variables_set:()=>A_});var e={};_.r(e),_.d(e,{base_setup:()=>C_,controls_delay:()=>c_,controls_end_program:()=>H_,controls_except:()=>X_,controls_finally:()=>V_,controls_flow_statements:()=>G_,controls_for:()=>F_,controls_forEach:()=>U_,controls_for_range:()=>y_,controls_if:()=>D_,controls_if_else:()=>x_,controls_if_elseif:()=>b_,controls_if_if:()=>f_,controls_lambda:()=>w_,controls_main:()=>m_,controls_pass:()=>W_,controls_range:()=>Y_,controls_repeat_ext:()=>k_,controls_thread:()=>K_,controls_try:()=>v_,controls_try_finally:()=>B_,controls_whileUntil:()=>g_,do_while:()=>z_,garbage_collection:()=>Z_,get_mem_alloc:()=>Q_,get_mem_free:()=>J_,get_unique_identifier:()=>q_});var i={};_.r(i),_.d(i,{base_map:()=>lt,math_arithmetic:()=>et,math_bit:()=>Tt,math_constant:()=>_t,math_constant_mp:()=>tt,math_constrain:()=>at,math_dec:()=>nt,math_indexer_number:()=>Mt,math_map:()=>pt,math_max_min:()=>st,math_number:()=>$_,math_number_base_conversion:()=>Ot,math_random:()=>It,math_random_seed:()=>Lt,math_round:()=>Rt,math_selfcalcu:()=>it,math_to_int:()=>ot,math_trig:()=>Et,text_to_number:()=>rt,text_to_number_skulpt:()=>St});var T={};_.r(T),_.d(T,{ascii_to_char:()=>ht,char_to_ascii:()=>mt,number_to_text:()=>Ct,os_system:()=>qt,text:()=>Pt,text_capital:()=>Ft,text_center:()=>yt,text_char:()=>dt,text_char_at:()=>Dt,text_char_at2:()=>Ht,text_char_at3:()=>zt,text_compareTo:()=>Kt,text_compare_to:()=>Gt,text_create_with_container:()=>kt,text_create_with_item:()=>wt,text_encode:()=>Qt,text_equals_starts_ends:()=>Bt,text_eval:()=>Jt,text_find:()=>ft,text_format:()=>Vt,text_format_noreturn:()=>Zt,text_join:()=>ut,text_join_seq:()=>bt,text_length:()=>ct,text_random_char:()=>Yt,text_replace:()=>xt,text_split:()=>vt,text_strip:()=>Xt,text_substring:()=>gt,text_substring2:()=>Ut,text_substring3:()=>Wt,text_textarea:()=>Nt});var E={};_.r(E),_.d(E,{list_many_input:()=>Pe,list_tolist:()=>ce,list_tolist2:()=>Fe,list_trig:()=>Se,lists_2d_get_col_row_data:()=>ee,lists_2d_get_data_with_col_row:()=>te,lists_append_extend:()=>se,lists_change_to:()=>Ae,lists_change_to_general:()=>de,lists_clear:()=>Me,lists_create_with:()=>ie,lists_create_with2:()=>He,lists_create_with_container:()=>Ee,lists_create_with_item:()=>ne,lists_create_with_noreturn:()=>Ne,lists_create_with_text:()=>Te,lists_create_with_text2:()=>De,lists_del_general:()=>ue,lists_find:()=>re,lists_getIndex3:()=>Ye,lists_getSublist3:()=>Ue,lists_get_index:()=>$t,lists_get_random_item:()=>Oe,lists_get_random_sublist:()=>Ie,lists_get_sublist:()=>_e,lists_insert_value:()=>ae,lists_insert_value2:()=>Be,lists_pop:()=>Re,lists_remove_at:()=>Le,lists_remove_at2:()=>Ge,lists_reverse:()=>pe,lists_setIndex3:()=>ge,lists_set_index:()=>oe,lists_sort:()=>le,lists_zip:()=>he,lists_zip_container:()=>me,lists_zip_item:()=>Ce});var n={};_.r(n),_.d(n,{dicts_add_change_del:()=>qe,dicts_add_or_change:()=>ke,dicts_clear:()=>Ke,dicts_create_with:()=>fe,dicts_create_with_container:()=>be,dicts_create_with_item:()=>xe,dicts_create_with_noreturn:()=>_i,dicts_deldict:()=>Je,dicts_delete:()=>we,dicts_get:()=>Xe,dicts_get_default:()=>Ve,dicts_items:()=>ze,dicts_keys:()=>ve,dicts_length:()=>Qe,dicts_pop:()=>je,dicts_setdefault:()=>$e,dicts_to_json:()=>ei,dicts_todict:()=>ti,dicts_update:()=>We,dicts_values:()=>Ze,json_to_dicts:()=>ii});var o={};_.r(o),_.d(o,{logic_boolean:()=>Oi,logic_compare:()=>Ei,logic_compare_continous:()=>ni,logic_is:()=>Mi,logic_is_in:()=>pi,logic_negate:()=>si,logic_null:()=>Ii,logic_operation:()=>oi,logic_tobool:()=>Li,logic_true_or_false:()=>ai});var s={};_.r(s),_.d(s,{sdcard_mount:()=>fi,sdcard_use_spi_init:()=>yi,storage_can_write_ornot:()=>ui,storage_change_dir:()=>Gi,storage_close_file:()=>mi,storage_delete_file:()=>ci,storage_file_seek:()=>Yi,storage_file_tell:()=>Di,storage_file_write:()=>Ai,storage_fileopen:()=>ri,storage_fileopen_new:()=>Si,storage_fileopen_new_encoding:()=>li,storage_get_a_line:()=>di,storage_get_contents:()=>Ni,storage_get_contents_without_para:()=>Pi,storage_get_current_dir:()=>Ui,storage_get_file_size:()=>Hi,storage_get_filename:()=>hi,storage_is_file:()=>Fi,storage_list_all_files:()=>Ci,storage_make_dir:()=>gi,storage_open_file_with_os:()=>Ri,storage_rename:()=>Bi});var O={};_.r(O),_.d(O,{procedures_callnoreturn:()=>wi,procedures_callreturn:()=>Wi,procedures_defnoreturn:()=>vi,procedures_defreturn:()=>Xi,procedures_ifreturn:()=>Ki,procedures_mutatorarg:()=>ki,procedures_mutatorcontainer:()=>Vi,procedures_return:()=>zi});var I={};_.r(I),_.d(I,{tuple_change_to:()=>ET,tuple_create_with:()=>Qi,tuple_create_with_container:()=>Ji,tuple_create_with_item:()=>qi,tuple_create_with_noreturn:()=>OT,tuple_create_with_text2:()=>ji,tuple_create_with_text_return:()=>$i,tuple_del:()=>eT,tuple_find:()=>nT,tuple_getIndex:()=>_T,tuple_getSublist:()=>sT,tuple_get_random_item:()=>aT,tuple_get_sublist:()=>IT,tuple_join:()=>iT,tuple_length:()=>tT,tuple_max:()=>TT,tuple_totuple:()=>pT,tuple_trig:()=>oT});var a={};_.r(a),_.d(a,{set_add_discard:()=>dT,set_clear:()=>AT,set_create_with:()=>LT,set_create_with_container:()=>RT,set_create_with_item:()=>rT,set_create_with_text_return:()=>mT,set_length:()=>ST,set_operate:()=>PT,set_operate_update:()=>NT,set_pop:()=>lT,set_sub:()=>uT,set_toset:()=>CT,set_update:()=>hT});var p={};_.r(p),_.d(p,{html_content:()=>UT,html_content_more:()=>gT,html_document:()=>HT,html_form:()=>GT,html_head_body:()=>YT,html_style:()=>BT,html_style_color:()=>yT,html_style_content:()=>FT,html_text:()=>fT,html_title:()=>DT});var M={};_.r(M),_.d(M,{attribute_access:()=>qT,function_call:()=>ZT,function_call_container:()=>QT,function_call_item:()=>JT,raw_block:()=>vT,raw_empty:()=>VT,raw_expression:()=>XT,raw_table:()=>xT,text_comment:()=>kT,text_print_multiple:()=>WT,text_print_multiple_container:()=>KT,text_print_multiple_item:()=>zT,type_check:()=>wT});var L={};_.r(L),_.d(L,{controls_type:()=>eE,controls_typeLists:()=>iE,variables_change:()=>_E,variables_get:()=>jT,variables_global:()=>tE,variables_set:()=>$T});var R={};_.r(R),_.d(R,{Panic_with_status_code:()=>ME,base_setup:()=>EE,controls_delay:()=>pE,controls_flow_statements:()=>aE,controls_for:()=>sE,controls_forEach:()=>lE,controls_for_range:()=>OE,controls_if:()=>nE,controls_interrupts:()=>rE,controls_lambda:()=>PE,controls_main:()=>TE,controls_millis:()=>LE,controls_nointerrupts:()=>SE,controls_pass:()=>dE,controls_range:()=>AE,controls_repeat:()=>YE,controls_repeat_ext:()=>mE,controls_thread:()=>uE,controls_try_finally:()=>oE,controls_whileUntil:()=>IE,do_while:()=>hE,garbage_collection:()=>CE,get_mem_alloc:()=>cE,get_mem_free:()=>HE,get_unique_identifier:()=>DE,reset:()=>RE,time_sleep:()=>NE});var r={};_.r(r),_.d(r,{base_map:()=>qE,math_arithmetic:()=>FE,math_bit:()=>GE,math_constant:()=>gE,math_constant_mp:()=>BE,math_constrain:()=>wE,math_dec:()=>xE,math_indexer_number:()=>zE,math_map:()=>kE,math_max_min:()=>XE,math_number:()=>UE,math_number_base_conversion:()=>WE,math_random:()=>VE,math_random_seed:()=>KE,math_round:()=>ZE,math_selfcalcu:()=>yE,math_single:()=>fE,math_to_int:()=>vE,math_trig:()=>bE,text_to_number:()=>QE,text_to_number_skulpt:()=>JE});var S={};_.r(S),_.d(S,{ascii_to_char:()=>en,char_to_ascii:()=>Tn,number_to_text:()=>En,os_system:()=>Hn,text:()=>jE,text_capital:()=>Ln,text_center:()=>Rn,text_char:()=>_n,text_char_at:()=>sn,text_char_at2:()=>on,text_char_at3:()=>mn,text_compareTo:()=>hn,text_compare_to:()=>an,text_encode:()=>Cn,text_equals_starts_ends:()=>In,text_eval:()=>cn,text_find:()=>rn,text_format:()=>Nn,text_format_noreturn:()=>dn,text_join:()=>tn,text_join_seq:()=>Sn,text_length:()=>nn,text_random_char:()=>On,text_replace:()=>ln,text_split:()=>An,text_strip:()=>Pn,text_substring:()=>Mn,text_substring2:()=>pn,text_substring3:()=>un,text_textarea:()=>$E});var l={};_.r(l),_.d(l,{list_many_input:()=>Zn,list_tolist:()=>no,list_tolist2:()=>oo,list_trig:()=>Wn,lists_2d_get_col_row_data:()=>Un,lists_2d_get_data_with_col_row:()=>Yn,lists_append_extend:()=>yn,lists_change_to:()=>zn,lists_change_to_general:()=>Jn,lists_clear:()=>Xn,lists_create_with:()=>gn,lists_create_with2:()=>jn,lists_create_with_noreturn:()=>Qn,lists_create_with_text:()=>Bn,lists_create_with_text2:()=>$n,lists_del_general:()=>qn,lists_find:()=>Vn,lists_getIndex3:()=>_o,lists_getSublist3:()=>to,lists_get_index:()=>Gn,lists_get_random_item:()=>fn,lists_get_random_sublist:()=>bn,lists_get_sublist:()=>Dn,lists_insert_value:()=>xn,lists_insert_value2:()=>io,lists_pop:()=>wn,lists_remove_at:()=>kn,lists_remove_at2:()=>To,lists_reverse:()=>vn,lists_setIndex3:()=>eo,lists_set_index:()=>Fn,lists_sort:()=>Kn,lists_zip:()=>Eo});var A={};_.r(A),_.d(A,{dicts_add_change_del:()=>Po,dicts_add_or_change:()=>po,dicts_clear:()=>Ro,dicts_create_with:()=>so,dicts_create_with_noreturn:()=>ho,dicts_deldict:()=>Ao,dicts_delete:()=>Mo,dicts_get:()=>Io,dicts_get_default:()=>ao,dicts_items:()=>ro,dicts_keys:()=>Oo,dicts_length:()=>lo,dicts_pop:()=>No,dicts_setdefault:()=>uo,dicts_to_json:()=>Co,dicts_todict:()=>mo,dicts_update:()=>Lo,dicts_values:()=>So,json_to_dicts:()=>co});var P={};_.r(P),_.d(P,{logic_boolean:()=>go,logic_compare:()=>Ho,logic_compare_continous:()=>Do,logic_is:()=>yo,logic_is_in:()=>Fo,logic_negate:()=>Uo,logic_null:()=>Bo,logic_operation:()=>Yo,logic_tobool:()=>fo,logic_true_or_false:()=>Go});var N={};_.r(N),_.d(N,{sdcard_mount:()=>ns,sdcard_use_spi_init:()=>Es,storage_can_write_ornot:()=>Ko,storage_change_dir:()=>_s,storage_close_file:()=>Zo,storage_delete_file:()=>Jo,storage_file_seek:()=>$o,storage_file_tell:()=>jo,storage_file_write:()=>Vo,storage_fileopen:()=>xo,storage_fileopen_new:()=>vo,storage_fileopen_new_encoding:()=>Xo,storage_get_a_line:()=>Wo,storage_get_contents:()=>wo,storage_get_contents_without_para:()=>ko,storage_get_current_dir:()=>ts,storage_get_file_size:()=>qo,storage_get_filename:()=>zo,storage_is_file:()=>Ts,storage_list_all_files:()=>Qo,storage_make_dir:()=>es,storage_open_file_with_os:()=>bo,storage_rename:()=>is});var d={};_.r(d),_.d(d,{procedures_callnoreturn:()=>Is,procedures_callreturn:()=>Os,procedures_defnoreturn:()=>ss,procedures_defreturn:()=>os,procedures_ifreturn:()=>as,procedures_return:()=>ps});var u={};_.r(u),_.d(u,{tuple_change_to:()=>Ns,tuple_create_with:()=>Ms,tuple_create_with_noreturn:()=>ms,tuple_create_with_text2:()=>Ls,tuple_create_with_text_return:()=>Rs,tuple_del:()=>ls,tuple_find:()=>ds,tuple_getIndex:()=>rs,tuple_getSublist:()=>hs,tuple_get_random_item:()=>cs,tuple_get_sublist:()=>Cs,tuple_join:()=>As,tuple_length:()=>Ss,tuple_max:()=>Ps,tuple_totuple:()=>Hs,tuple_trig:()=>us});var h={};_.r(h),_.d(h,{set_add_discard:()=>Fs,set_clear:()=>gs,set_create_with:()=>Ds,set_create_with_text_return:()=>bs,set_length:()=>Ys,set_operate:()=>Bs,set_operate_update:()=>Gs,set_pop:()=>Us,set_sub:()=>ys,set_toset:()=>xs,set_update:()=>fs});var m={};_.r(m),_.d(m,{html_content:()=>ks,html_content_more:()=>ws,html_document:()=>vs,html_form:()=>Ks,html_head_body:()=>Vs,html_style:()=>Ws,html_style_content:()=>zs,html_text:()=>Zs,html_title:()=>Xs});var C={};_.r(C),_.d(C,{attribute_access:()=>tO,function_call:()=>_O,raw_block:()=>Qs,raw_empty:()=>qs,raw_expression:()=>Js,raw_table:()=>js,type_check:()=>$s});var c={};_.r(c),_.d(c,{actuator_extern_get_led_bright:()=>MO,actuator_extern_get_led_state:()=>LO,actuator_extern_led_bright:()=>pO,actuator_extern_led_brightness:()=>RO,actuator_ms32006_dcmotor:()=>hO,actuator_ms32006_init:()=>uO,actuator_ms32006_stepper:()=>mO,actuator_neopixel_init:()=>CO,actuator_neopixel_rgb:()=>cO,actuator_neopixel_rgb_all:()=>HO,actuator_neopixel_write:()=>DO,actuator_use_uart_init:()=>YO,esp32_music_get_tempo_extern:()=>OO,esp32_music_pitch:()=>EO,esp32_music_pitch_init:()=>TO,esp32_music_pitch_with_time:()=>nO,esp32_music_play_list:()=>oO,esp32_music_reset_extern:()=>IO,esp32_music_set_tempo_extern:()=>sO,esp32_music_stop:()=>aO,mixbot_actuator_extern_get_addr:()=>ZO,mixbot_actuator_extern_set_addr:()=>QO,mixbot_addr_extern:()=>FO,robot_led_extern:()=>xO,robot_led_extern_get_value:()=>vO,robot_motor_extern:()=>yO,robot_motor_extern_get_speed:()=>fO,robot_servo_extern_absolute_run:()=>wO,robot_servo_extern_get_status:()=>XO,robot_servo_extern_relative_continue:()=>zO,robot_servo_extern_relative_origin:()=>WO,robot_servo_extern_relative_run:()=>KO,robot_servo_extern_stop:()=>kO,robot_servo_extern_stop_mode:()=>VO,robot_traffic_light_extern:()=>bO,servo_get_angle:()=>NO,servo_get_speed:()=>dO,servo_init:()=>rO,servo_move:()=>SO,servo_set_angle:()=>AO,servo_set_speed:()=>PO,servo_speed_360:()=>lO,syn6288_builtin_voice:()=>BO,syn6288_get_voice:()=>gO,syn6288_set_voice:()=>UO,syn6288_tts_play:()=>GO});var H={};_.r(H),_.d(H,{actuator_dc_motor:()=>cI,actuator_dc_motor_stop:()=>HI,actuator_get_led_bright:()=>_I,actuator_get_led_state:()=>tI,actuator_led_bright:()=>$O,actuator_led_brightness:()=>eI,actuator_mixbot_buzzer_on_off:()=>BI,actuator_mixgo_nova_mic_get:()=>bI,actuator_mixgo_nova_mic_set:()=>fI,actuator_mixgo_nova_onboard_music_pitch:()=>wI,actuator_mixgo_nova_onboard_music_stop:()=>WI,actuator_mixgo_nova_play_audio:()=>VI,actuator_mixgo_nova_play_online_audio:()=>kI,actuator_mixgo_nova_record_audio:()=>XI,actuator_mixgo_nova_voice_get:()=>vI,actuator_mixgo_nova_voice_set:()=>xI,actuator_mixgo_zero_led_color:()=>iI,actuator_onboard_neopixel_rgb:()=>OI,actuator_onboard_neopixel_rgb_all:()=>II,actuator_onboard_neopixel_rgb_show_all_chase:()=>pI,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>aI,actuator_onboard_neopixel_write:()=>MI,actuator_rm_onboard_neopixel_rgb:()=>LI,actuator_rm_onboard_neopixel_rgb_all:()=>RI,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>rI,actuator_stepper_keep:()=>mI,actuator_stepper_stop:()=>CI,analog_keyboard_input:()=>QI,analog_keyboard_str:()=>ia,analog_mouse_input:()=>ta,bitbot_motor:()=>yI,bitbot_move:()=>GI,bitbot_stop:()=>FI,cc_number:()=>sI,esp32_music_get_tempo:()=>lI,esp32_music_reset:()=>AI,esp32_music_set_tempo:()=>SI,esp32_onboard_music_pitch:()=>PI,esp32_onboard_music_pitch_with_time:()=>NI,esp32_onboard_music_play_list:()=>uI,esp32_onboard_music_stop:()=>dI,general_key:()=>qI,general_key_tuple:()=>jI,generalkey_container:()=>$I,generalkey_create_with_item:()=>_a,get_power_output:()=>zI,ledswitch:()=>jO,mixbot_motor:()=>gI,mixbot_motor_status:()=>DI,mixbot_move:()=>YI,mixbot_stop:()=>UI,mouse_key:()=>ea,number:()=>qO,rm_actuator_get_led_bright:()=>EI,rm_actuator_get_led_state:()=>nI,rm_actuator_led_bright:()=>TI,rm_actuator_led_brightness:()=>oI,rm_motor:()=>hI,set_all_power_output:()=>ZI,set_power_output:()=>KI,special_key:()=>JI});var D={};_.r(D),_.d(D,{ai_sensor_20object:()=>fa,ai_sensor_ailocal_class:()=>Ca,ai_sensor_ailocal_class_result:()=>ca,ai_sensor_ailocal_train:()=>ma,ai_sensor_asr_recognize:()=>ga,ai_sensor_audio_play:()=>Da,ai_sensor_audio_record:()=>Ha,ai_sensor_barcode:()=>aa,ai_sensor_circle:()=>Sa,ai_sensor_classifier_faces:()=>ya,ai_sensor_color:()=>Na,ai_sensor_color_chases:()=>ha,ai_sensor_color_chases_result:()=>ua,ai_sensor_config:()=>Oa,ai_sensor_face:()=>Fa,ai_sensor_find_20objects:()=>ba,ai_sensor_find_barcodes:()=>pa,ai_sensor_find_circles:()=>la,ai_sensor_find_colors:()=>da,ai_sensor_find_licenseplates:()=>Ga,ai_sensor_find_lines:()=>ra,ai_sensor_find_qrcodes:()=>sa,ai_sensor_find_rects:()=>Pa,ai_sensor_find_tags:()=>La,ai_sensor_licenseplate:()=>Ba,ai_sensor_line:()=>Ra,ai_sensor_qrcode:()=>na,ai_sensor_qrcode_lite:()=>oa,ai_sensor_rect:()=>Aa,ai_sensor_rgb:()=>Ia,ai_sensor_tag:()=>Ma,ai_sensor_use_uart_init:()=>Ea,ai_sensor_yolo_recognize:()=>Ya,ai_sensor_yolo_recognize_result:()=>Ua});var Y={};_.r(Y),_.d(Y,{MICROPYTHON_AI_Speech_asr:()=>Xa,MICROPYTHON_AI_Speech_unit:()=>va,MICROPYTHON_AI_client:()=>xa});var U={};_.r(U),_.d(U,{mpython_blynk_app_data:()=>ep,mpython_blynk_app_notify:()=>Qa,mpython_blynk_email:()=>ja,mpython_blynk_get_timers:()=>$a,mpython_blynk_on_connected:()=>Ka,mpython_blynk_on_disconnected:()=>Wa,mpython_blynk_run:()=>Za,mpython_blynk_sensor_data_to_app:()=>tp,mpython_blynk_set_property:()=>qa,mpython_blynk_setup:()=>ip,mpython_blynk_stop_timers:()=>Ja,mpython_blynk_sync_virtual:()=>wa,mpython_blynk_terminal_widget_vpin:()=>ka,mpython_blynktimer:()=>_p,mpython_blynktimer_run:()=>za});var g={};_.r(g),_.d(g,{communicate_bluetooth_central_init:()=>xp,communicate_bluetooth_connect:()=>kp,communicate_bluetooth_disconnect:()=>wp,communicate_bluetooth_handle:()=>Qp,communicate_bluetooth_is_connected:()=>Kp,communicate_bluetooth_mac:()=>Vp,communicate_bluetooth_peripheral_init:()=>vp,communicate_bluetooth_recv:()=>zp,communicate_bluetooth_recv_only:()=>Zp,communicate_bluetooth_scan:()=>Xp,communicate_bluetooth_send:()=>Wp,communicate_espnow_init:()=>Jp,communicate_espnow_init_new:()=>qp,communicate_i2c_available:()=>Np,communicate_i2c_init:()=>op,communicate_i2c_master_read:()=>Pp,communicate_i2c_onboard:()=>Ep,communicate_i2c_read:()=>sp,communicate_i2c_scan:()=>Ip,communicate_i2c_write:()=>Op,communicate_ir_recv_init:()=>Dp,communicate_ir_send_init:()=>Gp,communicate_ow_init:()=>up,communicate_ow_read:()=>mp,communicate_ow_reset:()=>Hp,communicate_ow_scan:()=>hp,communicate_ow_select:()=>cp,communicate_ow_write:()=>Cp,communicate_spi_buffer:()=>Mp,communicate_spi_init:()=>ap,communicate_spi_onboard:()=>np,communicate_spi_read:()=>Lp,communicate_spi_read_output:()=>Rp,communicate_spi_readinto:()=>rp,communicate_spi_readinto_output:()=>Sp,communicate_spi_set:()=>pp,communicate_spi_write:()=>lp,communicate_spi_write_readinto:()=>Ap,espnow_radio_channel:()=>iM,espnow_radio_channel_new:()=>EM,espnow_radio_on_off:()=>nM,espnow_radio_rec:()=>sM,espnow_radio_recv:()=>IM,espnow_radio_recv_certain_msg:()=>aM,espnow_radio_recv_certain_msg_new:()=>MM,espnow_radio_recv_msg:()=>OM,espnow_radio_recv_new:()=>pM,espnow_radio_send:()=>oM,espnow_radio_txpower:()=>TM,i2c_available:()=>FM,i2c_init:()=>NM,i2c_master_reader2:()=>GM,i2c_read:()=>dM,i2c_scan:()=>hM,i2c_slave_onreceive:()=>dp,i2c_write:()=>uM,internal_variable:()=>Yp,ir_recv_timeout:()=>Bp,ir_transmit_busy:()=>bp,ir_transmit_conventional_data:()=>Fp,ir_transmit_raw_code:()=>fp,ir_transmit_study_code:()=>yp,ir_whether_recv:()=>gp,lora_init:()=>LM,lora_packet:()=>RM,lora_recv:()=>SM,lora_send:()=>rM,network_espnow_info:()=>$p,network_espnow_mac:()=>jp,network_espnow_recv:()=>_M,network_espnow_recv_handle:()=>eM,network_espnow_send:()=>tM,recv_fun:()=>Up,spi_buffer:()=>cM,spi_init:()=>mM,spi_read:()=>HM,spi_read_output:()=>DM,spi_readinto:()=>YM,spi_readinto_output:()=>UM,spi_set:()=>CM,spi_write:()=>gM,spi_write_readinto:()=>BM,urequests_attribute:()=>AM,urequests_get:()=>lM,urequests_method:()=>PM});var B={};_.r(B),_.d(B,{display_animate:()=>aL,display_blink_rate:()=>oL,display_circle:()=>pL,display_color_seclet:()=>hL,display_draw_4strings:()=>tL,display_fill:()=>IL,display_get_screen_image:()=>nL,display_help:()=>LL,display_image_size:()=>eL,display_lcd_use_i2c_init:()=>YL,display_line:()=>TL,display_line_arbitrarily:()=>EL,display_matrix_extern_bright_point:()=>zM,display_matrix_extern_bright_screen:()=>QM,display_matrix_extern_clear:()=>JM,display_matrix_extern_get_pixel:()=>KM,display_matrix_extern_get_screen_pixel:()=>ZM,display_matrix_extern_image_builtins:()=>qM,display_matrix_extern_scroll_string:()=>XM,display_matrix_extern_scroll_string_delay:()=>VM,display_matrix_extern_shift:()=>WM,display_matrix_extern_show_frame_string:()=>kM,display_matrix_extern_show_frame_string_delay:()=>wM,display_matrix_extern_show_image:()=>xM,display_matrix_extern_show_image_or_string_delay:()=>vM,display_matrix_use_i2c_init:()=>bM,display_oled_drawPixel:()=>rL,display_oled_showBitmap:()=>RL,display_oled_use_i2c_init:()=>FL,display_onoff:()=>OL,display_rect:()=>iL,display_rgb_color:()=>sL,display_tm1650_power:()=>lL,display_tm1650_set_brightness:()=>NL,display_tm1650_show_dot:()=>PL,display_tm1650_show_num:()=>AL,display_tm_use_i2c_init:()=>SL,display_triangle:()=>ML,display_use_i2c_init:()=>_L,extern_oled_bright_point:()=>KL,extern_oled_clear:()=>zL,extern_oled_get_pixel:()=>WL,extern_oled_hvline:()=>QL,extern_oled_line:()=>JL,extern_oled_scroll_string:()=>vL,extern_oled_scroll_string_delay:()=>XL,extern_oled_shape_rect:()=>ZL,extern_oled_shift:()=>wL,extern_oled_show_frame_string:()=>VL,extern_oled_show_frame_string_delay:()=>kL,extern_oled_show_image:()=>yL,extern_oled_show_image_or_string_delay:()=>xL,extern_oled_show_image_xy:()=>fL,extern_oled_show_string:()=>bL,lcd_backlight:()=>BL,lcd_clear:()=>GL,lcd_print_string:()=>gL,lcd_show_image_or_string_delay:()=>UL,matrix_extern_image_arithmetic:()=>jM,matrix_extern_image_invert:()=>$M,tft_fill:()=>HL,tft_line_arbitrarily:()=>DL,tft_scroll_string_delay:()=>CL,tft_show_frame_string_delay:()=>cL,tft_show_image_or_string_delay:()=>mL,tft_show_image_xy:()=>uL,tft_use_spi_init:()=>dL});var G={};_.r(G),_.d(G,{bitbot_display_image_create:()=>FR,display_bright_point:()=>aR,display_bright_screen:()=>MR,display_clear:()=>LR,display_get_pixel:()=>IR,display_get_screen_pixel:()=>pR,display_image_builtins:()=>ER,display_image_builtins_all:()=>nR,display_image_create:()=>TR,display_scroll_string:()=>_R,display_scroll_string_delay:()=>tR,display_shift:()=>OR,display_show_frame_string:()=>eR,display_show_frame_string_delay:()=>iR,display_show_image:()=>jL,display_show_image_or_string_delay:()=>$L,image_arithmetic:()=>oR,image_invert:()=>sR,mixbot_display_bright_screen:()=>BR,mixbot_display_get_ambientbright:()=>gR,mixbot_display_get_screen_pixel:()=>UR,mixbot_display_image_create:()=>YR,mixbot_display_rotate:()=>GR,mixgo_display_image_create_new:()=>SR,mixgome_display_font:()=>lR,mixgome_display_image_create:()=>RR,mixgomini_display_image_create:()=>rR,mpython_display_hvline:()=>cR,mpython_display_line:()=>HR,mpython_display_shape_rect:()=>CR,mpython_pbm_image:()=>DR,onboard_oled_bright_point:()=>mR,onboard_oled_scroll_string_delay:()=>uR,onboard_oled_show_frame_string_delay:()=>hR,onboard_oled_show_image:()=>AR,onboard_oled_show_image_or_string_delay:()=>dR,onboard_oled_show_image_xy:()=>PR,onboard_oled_show_string:()=>NR,onboard_tft_bright_point:()=>ZR,onboard_tft_bright_screen:()=>qR,onboard_tft_clear:()=>QR,onboard_tft_clock_clear:()=>ir,onboard_tft_clock_draw:()=>er,onboard_tft_clock_get_rtctime:()=>_r,onboard_tft_clock_init:()=>$R,onboard_tft_clock_set_time:()=>tr,onboard_tft_display_hvline:()=>wR,onboard_tft_display_line:()=>WR,onboard_tft_display_shape_circle:()=>Tr,onboard_tft_display_shape_rect:()=>kR,onboard_tft_fill:()=>jR,onboard_tft_get_pixel:()=>zR,onboard_tft_get_screen_pixel:()=>JR,onboard_tft_scroll_string:()=>xR,onboard_tft_scroll_string_delay:()=>vR,onboard_tft_shift:()=>KR,onboard_tft_show_frame_string:()=>XR,onboard_tft_show_frame_string_delay:()=>VR,onboard_tft_show_image:()=>yR,onboard_tft_show_image_or_string_delay:()=>bR,onboard_tft_show_image_xy:()=>fR});var F={};_.r(F),_.d(F,{factory_block:()=>Rr,factory_block_return:()=>rr,factory_block_return_with_textarea:()=>lr,factory_block_with_textarea:()=>Sr,factory_callMethod_noreturn:()=>Mr,factory_callMethod_return:()=>Lr,factory_create_with_container:()=>Or,factory_create_with_item:()=>Ir,factory_declare:()=>pr,factory_from_import:()=>nr,factory_function_noreturn:()=>sr,factory_function_return:()=>ar,factory_import:()=>or,folding_block:()=>Ar});var y={};_.r(y),_.d(y,{controls_pin_attachInterrupt:()=>Xr,inout_analog_atten:()=>Dr,inout_analog_read:()=>Hr,inout_analog_read_init:()=>Fr,inout_analog_write:()=>mr,inout_analog_write_init:()=>Gr,inout_analog_write_set:()=>Cr,inout_analog_write_set_freq:()=>br,inout_digital_init:()=>gr,inout_digital_read:()=>ur,inout_digital_write:()=>dr,inout_highlow:()=>Nr,inout_pinMode:()=>fr,inout_pin_attachInterrupt:()=>Ur,inout_pin_pressed:()=>Yr,inout_pin_pressed_init:()=>yr,inout_pwm_analog_write:()=>hr,inout_pwm_analog_write_init:()=>Br,inout_pwm_analog_write_set_freq:()=>cr,pin_pressed:()=>vr,pin_pressed_init:()=>xr});var f={};_.r(f),_.d(f,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>aS,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>IS,IOT_EMQX_PING:()=>sS,IOT_FORMATTING:()=>nS,IOT_FORMAT_STRING:()=>oS,IOT_MIXIO_NTP:()=>OS,IOT_MIXIO_PUBLISH:()=>$r,IOT_MIXIO_SUBSCRIBE:()=>_S,iot_checkonenet:()=>NS,iot_client_onboard:()=>MS,iot_create_with_item:()=>qr,iot_http_client:()=>LS,iot_http_data:()=>RS,iot_mixio_check:()=>iS,iot_mixio_connect:()=>jr,iot_mixio_connect_only:()=>eS,iot_mixio_disconnect:()=>tS,iot_mixio_format_msg:()=>ES,iot_mixio_format_topic:()=>TS,iot_mixly_key:()=>pS,iot_mqtt_client:()=>rS,iot_mqtt_data:()=>SS,iot_onenet_check:()=>Kr,iot_onenet_connect:()=>wr,iot_onenet_disconnect:()=>Wr,iot_onenet_publish:()=>Zr,iot_onenet_publish_dict:()=>zr,iot_onenetconnect:()=>AS,iot_onenetdisconnect:()=>PS,iot_publish:()=>dS,iot_publish_container:()=>Qr,iot_publish_item:()=>Jr,iot_wifi_connect:()=>kr,iot_wificonnect:()=>lS});var b={};_.r(b),_.d(b,{network_ap_connect:()=>fS,network_connect:()=>HS,network_get_connect:()=>GS,network_get_wifi:()=>yS,network_init:()=>hS,network_is_active:()=>CS,network_open:()=>mS,network_scan:()=>cS,network_server:()=>bS,network_socket_accept:()=>kS,network_socket_bind:()=>vS,network_socket_close:()=>ZS,network_socket_connect:()=>XS,network_socket_init:()=>xS,network_socket_listen:()=>VS,network_socket_receive:()=>wS,network_socket_receive_from:()=>KS,network_socket_send:()=>WS,network_socket_send_to:()=>zS,network_stop:()=>FS,network_wifi_connect:()=>DS,ntptime_address:()=>$S,ntptime_time:()=>jS,requests_attribute:()=>JS,requests_get:()=>QS,requests_method:()=>qS,urequests_connect_url:()=>gS,urequests_response:()=>BS,urequests_wifi_connect:()=>YS,urequests_wifi_url:()=>US});var x={};_.r(x),_.d(x,{pe_g1_battery_left:()=>el,pe_g1_dc_motor:()=>il,pe_g1_dc_motor_speed:()=>Tl,pe_g1_servo_get_angle:()=>ol,pe_g1_servo_get_speed:()=>sl,pe_g1_servo_set_angle:()=>El,pe_g1_servo_set_speed:()=>nl,pe_g1_use_i2c_init:()=>tl});var v={};_.r(v),_.d(v,{HCSR04:()=>OA,PS2_Button:()=>MA,PS2_Buttons:()=>RA,PS2_Buttons_new:()=>AA,PS2_State:()=>LA,PS2_init:()=>IA,PS2_init_new:()=>SA,PS2_stk:()=>rA,PS2_stk_new:()=>PA,PS2_vibration:()=>pA,PS2_vibration_new:()=>lA,esp32_s2_weather_init:()=>EA,esp32_s2_weather_rain:()=>oA,esp32_s2_weather_wd:()=>nA,esp32_s2_weather_ws:()=>sA,extern_rfid_read:()=>Wl,extern_rfid_readcontent:()=>zl,extern_rfid_readid:()=>Kl,extern_rfid_status:()=>Jl,extern_rfid_write:()=>Zl,extern_rfid_write_return:()=>Ql,gnss_get_data:()=>hA,gnss_have_data:()=>uA,mixbot_sensor_extern_get_addr:()=>UA,mixbot_sensor_extern_set_addr:()=>gA,pm25_get_data:()=>dA,robot_button_extern_get_value:()=>mA,robot_color_extern_get_value:()=>YA,robot_infrared_extern_get_value:()=>cA,robot_infrared_extern_grey_get_value:()=>HA,robot_potentiometer_extern_get_value:()=>DA,robot_sonar_extern_get_value:()=>BA,robot_sonar_extern_led:()=>GA,robot_touch_extern_get_value:()=>CA,sensor_APDS9960_extern:()=>cl,sensor_LTR308_extern:()=>Hl,sensor_LTR390UV_extern:()=>Yl,sensor_MAX30102_extern:()=>Cl,sensor_QMC5883L_extern:()=>Fl,sensor_VL530LX_extern:()=>Ul,sensor_adxl345_get_acceleration:()=>Rl,sensor_aht11_extern:()=>Bl,sensor_bmp:()=>Nl,sensor_compass_reset:()=>kl,sensor_dht11:()=>Sl,sensor_ds18x20:()=>ul,sensor_hp203_extern:()=>Gl,sensor_light_level:()=>rl,sensor_lm35:()=>hl,sensor_ltr381_extern:()=>Dl,sensor_mixgo_extern_button_attachInterrupt:()=>Ml,sensor_mixgo_extern_button_get_presses:()=>pl,sensor_mixgo_extern_button_is_pressed:()=>Il,sensor_mixgo_extern_button_was_pressed:()=>al,sensor_mixgo_extern_light:()=>ll,sensor_mixgo_extern_pin_near:()=>Pl,sensor_mixgo_extern_sound:()=>Al,sensor_mixgoce_hot_wheel_degrees:()=>TA,sensor_mixgoce_hot_wheel_is_touched:()=>iA,sensor_mpu9250_attachGestureInterrupt:()=>Ll,sensor_mpu9250_calibrate_compass:()=>vl,sensor_mpu9250_field_strength:()=>Vl,sensor_mpu9250_gesture:()=>yl,sensor_mpu9250_get_acceleration:()=>fl,sensor_mpu9250_get_gyro:()=>xl,sensor_mpu9250_get_magnetic:()=>bl,sensor_mpu9250_temperature:()=>Xl,sensor_sht:()=>dl,sensor_shtc3_extern:()=>gl,sensor_use_i2c_init:()=>ml,sensor_use_spi_init:()=>wl,sensor_use_uart_init:()=>NA,sensor_weather_solo_init:()=>FA,sensor_weather_solo_rain:()=>bA,sensor_weather_solo_wd:()=>yA,sensor_weather_solo_ws:()=>fA,weather_data:()=>ql,weather_have_data:()=>jl,weather_set_label:()=>_A,weather_set_label_container:()=>tA,weather_set_label_item:()=>eA,weather_uart_mixio:()=>$l});var X={};_.r(X),_.d(X,{HCSR04:()=>tP,RTC_set_date:()=>_P,RTC_set_time:()=>$A,bitbot_als_num:()=>nN,dht11:()=>MN,number1:()=>iP,number2:()=>TP,number3:()=>EP,number4:()=>nP,number5:()=>oP,number6:()=>sP,number7:()=>OP,onboard_RTC_get_time:()=>rP,onboard_RTC_get_timestamp:()=>SP,onboard_RTC_set_datetime:()=>PP,onboard_RTC_settime_string:()=>AP,onboard_RTC_timestamp_totuple:()=>lP,rfid_readcontent:()=>HP,rfid_readid:()=>cP,rfid_write:()=>DP,rfid_write_return:()=>YP,sensor_LTR308:()=>dP,sensor_aht11:()=>hP,sensor_bitbot_ALS:()=>EN,sensor_button_get_presses:()=>ON,sensor_button_is_pressed:()=>oN,sensor_button_was_pressed:()=>sN,sensor_distance_hrsc04:()=>jA,sensor_eulerangles:()=>gP,sensor_field_strength:()=>LN,sensor_get_acceleration:()=>UP,sensor_get_temperature:()=>mP,sensor_hp203:()=>CP,sensor_light:()=>pN,sensor_mixbot_get_gyro:()=>TN,sensor_mixbot_patrol_calibrate:()=>tN,sensor_mixbot_patrol_value:()=>eN,sensor_mixbot_temperature:()=>iN,sensor_mixgo_LTR308:()=>RP,sensor_mixgo_button_attachInterrupt:()=>kA,sensor_mixgo_button_get_presses:()=>VA,sensor_mixgo_button_is_pressed:()=>vA,sensor_mixgo_button_was_pressed:()=>XA,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>kP,sensor_mixgo_cc_mmc5603_get_angle:()=>VP,sensor_mixgo_cc_mmc5603_get_magnetic:()=>XP,sensor_mixgo_light:()=>eP,sensor_mixgo_nova_LTR308:()=>LP,sensor_mixgo_nova_pin_near:()=>MP,sensor_mixgo_pin_near:()=>pP,sensor_mixgo_pin_near_double:()=>aP,sensor_mixgo_pin_near_single:()=>IP,sensor_mixgo_pin_pressed:()=>ZA,sensor_mixgo_touch_slide:()=>qA,sensor_mixgocar42_button_attachInterrupt:()=>zA,sensor_mixgocar42_button_get_presses:()=>KA,sensor_mixgocar42_button_is_pressed:()=>wA,sensor_mixgocar42_button_was_pressed:()=>WA,sensor_mixgocar_battery_left:()=>_N,sensor_mixgocar_pin_near:()=>jP,sensor_mixgocar_pin_near_line:()=>qP,sensor_mixgocar_pin_near_state_change:()=>$P,sensor_mixgoce_pin_pressed:()=>QA,sensor_mixgoce_temperature:()=>WP,sensor_mixgome_temperature:()=>wP,sensor_mpython_pin_pressed:()=>JA,sensor_mpython_qmi8658_get_gyro:()=>KP,sensor_mpython_qmi8658_temperature:()=>zP,sensor_onboard_compass_reset:()=>vP,sensor_onboard_mpu9250_calibrate_compass:()=>fP,sensor_onboard_mpu9250_field_strength:()=>xP,sensor_onboard_mpu9250_gesture:()=>BP,sensor_onboard_mpu9250_get_acceleration:()=>GP,sensor_onboard_mpu9250_get_gyro:()=>yP,sensor_onboard_mpu9250_get_magnetic:()=>FP,sensor_onboard_mpu9250_temperature:()=>bP,sensor_pin_near:()=>aN,sensor_pin_pressed:()=>IN,sensor_rm_acc:()=>JP,sensor_rm_battery_left:()=>QP,sensor_rm_pin_near_double:()=>ZP,sensor_rtc_init:()=>NP,sensor_sound:()=>uP,sensor_temperature:()=>RN});var V={};_.r(V),_.d(V,{serial_any:()=>uN,serial_begin:()=>HN,serial_print:()=>lN,serial_print_byte:()=>SN,serial_print_hex:()=>PN,serial_println:()=>AN,serial_read_from_ai:()=>fN,serial_readline:()=>hN,serial_readstr:()=>dN,serial_readstr_until:()=>mN,serial_receive_data_event:()=>NN,serial_send_to_ai:()=>yN,serial_softserial:()=>cN,serial_softserial_new:()=>CN,system_input:()=>DN,system_print:()=>YN,system_print_container:()=>GN,system_print_end:()=>gN,system_print_inline:()=>UN,system_print_item:()=>FN,system_print_many:()=>BN});var k={};_.r(k),_.d(k,{Panic_with_status_code:()=>XN,Timer_init:()=>_d,base_delay:()=>id,controls_delay:()=>vN,controls_delay_new:()=>xN,controls_millis:()=>kN,controls_uname:()=>WN,raw_block:()=>wN,reset:()=>VN,system_bitbot_shutdown:()=>$N,system_machine_reset:()=>jN,system_ticks_diff:()=>ZN,system_timer:()=>zN,system_timer_init:()=>QN,system_wdt_feed:()=>qN,system_wdt_init:()=>JN,time_ticks_diff:()=>ed,timer:()=>KN,timer2:()=>td});var w={};_.r(w),_.d(w,{WEATHER_DAILY:()=>nd,WEATHER_HOUR:()=>od,WEATHER_NOW:()=>Ed});var W={};_.r(W),_.d(W,{actuator_extern_get_led_bright:()=>cd,actuator_extern_get_led_state:()=>Hd,actuator_extern_led_bright:()=>Cd,actuator_extern_led_brightness:()=>Dd,actuator_ms32006_dcmotor:()=>Rd,actuator_ms32006_init:()=>Ld,actuator_ms32006_stepper:()=>rd,actuator_neopixel_init:()=>Yd,actuator_neopixel_rgb:()=>Bd,actuator_neopixel_rgb_all:()=>Ud,actuator_neopixel_write:()=>gd,actuator_use_uart_init:()=>Gd,esp32_music_get_tempo_extern:()=>dd,esp32_music_pitch:()=>ld,esp32_music_pitch_init:()=>Sd,esp32_music_pitch_with_time:()=>Ad,esp32_music_play_list:()=>ud,esp32_music_reset_extern:()=>hd,esp32_music_set_tempo_extern:()=>Nd,esp32_music_stop:()=>Pd,mixbot_actuator_extern_get_addr:()=>jd,mixbot_actuator_extern_set_addr:()=>$d,mixbot_addr_extern:()=>xd,robot_led_extern:()=>kd,robot_led_extern_get_value:()=>wd,robot_motor_extern:()=>vd,robot_motor_extern_get_speed:()=>Xd,robot_servo_extern_absolute_run:()=>Zd,robot_servo_extern_get_status:()=>Wd,robot_servo_extern_relative_continue:()=>qd,robot_servo_extern_relative_origin:()=>Qd,robot_servo_extern_relative_run:()=>Jd,robot_servo_extern_stop:()=>zd,robot_servo_extern_stop_mode:()=>Kd,robot_traffic_light_extern:()=>Vd,servo_get_angle:()=>pd,servo_get_speed:()=>Md,servo_init:()=>sd,servo_move:()=>md,servo_set_angle:()=>Id,servo_set_speed:()=>ad,servo_speed_360:()=>Od,syn6288_builtin_voice:()=>fd,syn6288_get_voice:()=>yd,syn6288_set_voice:()=>Fd,syn6288_tts_play:()=>bd});var K={};_.r(K),_.d(K,{actuator_dc_motor:()=>cu,actuator_dc_motor_stop:()=>Hu,actuator_get_led_bright:()=>Iu,actuator_get_led_state:()=>au,actuator_led_bright:()=>Ou,actuator_led_brightness:()=>pu,actuator_mixbot_buzzer_on_off:()=>Bu,actuator_mixgo_nova_mic_get:()=>bu,actuator_mixgo_nova_mic_set:()=>fu,actuator_mixgo_nova_onboard_music_pitch:()=>wu,actuator_mixgo_nova_onboard_music_stop:()=>Wu,actuator_mixgo_nova_play_audio:()=>Vu,actuator_mixgo_nova_play_online_audio:()=>ku,actuator_mixgo_nova_record_audio:()=>Xu,actuator_mixgo_nova_voice_get:()=>vu,actuator_mixgo_nova_voice_set:()=>xu,actuator_mixgo_zero_led_color:()=>Mu,actuator_onboard_neopixel_rgb:()=>Pu,actuator_onboard_neopixel_rgb_all:()=>Nu,actuator_onboard_neopixel_rgb_show_all_chase:()=>du,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>uu,actuator_onboard_neopixel_write:()=>Au,actuator_stepper_keep:()=>mu,actuator_stepper_stop:()=>Cu,analog_keyboard_input:()=>Qu,analog_keyboard_str:()=>_h,analog_mouse_input:()=>ju,bitbot_motor:()=>yu,bitbot_move:()=>Gu,bitbot_stop:()=>Fu,cc_number:()=>Lu,esp32_music_get_tempo:()=>tu,esp32_music_reset:()=>nu,esp32_music_set_tempo:()=>_u,esp32_onboard_music_pitch:()=>eu,esp32_onboard_music_pitch_with_time:()=>iu,esp32_onboard_music_play_list:()=>Eu,esp32_onboard_music_stop:()=>Tu,general_key:()=>qu,general_key_tuple:()=>th,get_power_output:()=>zu,ledswitch:()=>su,mixbot_motor:()=>gu,mixbot_motor_status:()=>Du,mixbot_move:()=>Yu,mixbot_stop:()=>Uu,mouse_key:()=>$u,number:()=>ou,rm_actuator_get_led_bright:()=>ru,rm_actuator_get_led_state:()=>Su,rm_actuator_led_bright:()=>Ru,rm_actuator_led_brightness:()=>lu,rm_motor:()=>hu,set_all_power_output:()=>Zu,set_power_output:()=>Ku,special_key:()=>Ju});var z={};_.r(z),_.d(z,{ai_sensor_20object:()=>Gh,ai_sensor_ailocal_class:()=>uh,ai_sensor_ailocal_class_result:()=>hh,ai_sensor_ailocal_train:()=>dh,ai_sensor_asr_recognize:()=>Dh,ai_sensor_audio_play:()=>Ch,ai_sensor_audio_record:()=>mh,ai_sensor_barcode:()=>sh,ai_sensor_circle:()=>Lh,ai_sensor_classifier_faces:()=>Bh,ai_sensor_color:()=>lh,ai_sensor_color_chases:()=>Nh,ai_sensor_color_chases_result:()=>Ph,ai_sensor_config:()=>Th,ai_sensor_face:()=>gh,ai_sensor_find_20objects:()=>Fh,ai_sensor_find_barcodes:()=>Oh,ai_sensor_find_circles:()=>Rh,ai_sensor_find_colors:()=>Ah,ai_sensor_find_licenseplates:()=>Uh,ai_sensor_find_lines:()=>Mh,ai_sensor_find_qrcodes:()=>oh,ai_sensor_find_rects:()=>Sh,ai_sensor_find_tags:()=>ah,ai_sensor_licenseplate:()=>Yh,ai_sensor_line:()=>ph,ai_sensor_qrcode:()=>nh,ai_sensor_qrcode_lite:()=>ih,ai_sensor_rect:()=>rh,ai_sensor_rgb:()=>Eh,ai_sensor_tag:()=>Ih,ai_sensor_use_uart_init:()=>eh,ai_sensor_yolo_recognize:()=>ch,ai_sensor_yolo_recognize_result:()=>Hh});var Z={};_.r(Z),_.d(Z,{MICROPYTHON_AI_Speech_asr:()=>bh,MICROPYTHON_AI_Speech_unit:()=>fh,MICROPYTHON_AI_client:()=>yh});var Q={};_.r(Q),_.d(Q,{mpython_blynk_app_data:()=>Jh,mpython_blynk_app_notify:()=>Wh,mpython_blynk_email:()=>qh,mpython_blynk_get_timers:()=>zh,mpython_blynk_on_connected:()=>Vh,mpython_blynk_on_disconnected:()=>Xh,mpython_blynk_run:()=>wh,mpython_blynk_sensor_data_to_app:()=>Qh,mpython_blynk_set_property:()=>jh,mpython_blynk_setup:()=>$h,mpython_blynk_stop_timers:()=>Kh,mpython_blynk_sync_virtual:()=>vh,mpython_blynk_terminal_widget_vpin:()=>xh,mpython_blynktimer:()=>Zh,mpython_blynktimer_run:()=>kh});var J={};_.r(J),_.d(J,{communicate_bluetooth_central_init:()=>Gm,communicate_bluetooth_connect:()=>fm,communicate_bluetooth_disconnect:()=>bm,communicate_bluetooth_handle:()=>wm,communicate_bluetooth_is_connected:()=>vm,communicate_bluetooth_mac:()=>xm,communicate_bluetooth_peripheral_init:()=>Fm,communicate_bluetooth_recv:()=>km,communicate_bluetooth_recv_only:()=>Vm,communicate_bluetooth_scan:()=>ym,communicate_bluetooth_send:()=>Xm,communicate_espnow_init:()=>Wm,communicate_espnow_init_new:()=>Km,communicate_i2c_available:()=>om,communicate_i2c_init:()=>em,communicate_i2c_master_read:()=>nm,communicate_i2c_onboard:()=>_m,communicate_i2c_read:()=>im,communicate_i2c_scan:()=>Em,communicate_i2c_write:()=>Tm,communicate_ir_recv_init:()=>hm,communicate_ir_send_init:()=>Dm,communicate_ow_init:()=>lm,communicate_ow_read:()=>Nm,communicate_ow_reset:()=>Pm,communicate_ow_scan:()=>Am,communicate_ow_select:()=>um,communicate_ow_write:()=>dm,communicate_spi_buffer:()=>am,communicate_spi_init:()=>Om,communicate_spi_onboard:()=>tm,communicate_spi_read:()=>pm,communicate_spi_read_output:()=>Mm,communicate_spi_readinto:()=>Lm,communicate_spi_readinto_output:()=>Rm,communicate_spi_set:()=>Im,communicate_spi_write:()=>rm,communicate_spi_write_readinto:()=>Sm,espnow_radio_channel:()=>jm,espnow_radio_channel_new:()=>_C,espnow_radio_on_off:()=>tC,espnow_radio_rec:()=>iC,espnow_radio_recv:()=>EC,espnow_radio_recv_certain_msg:()=>nC,espnow_radio_recv_certain_msg_new:()=>sC,espnow_radio_recv_msg:()=>TC,espnow_radio_recv_new:()=>oC,espnow_radio_send:()=>eC,espnow_radio_txpower:()=>$m,i2c_slave_onreceive:()=>sm,internal_variable:()=>mm,ir_recv_timeout:()=>Hm,ir_transmit_busy:()=>Bm,ir_transmit_conventional_data:()=>Ym,ir_transmit_raw_code:()=>gm,ir_transmit_study_code:()=>Um,ir_whether_recv:()=>cm,lora_init:()=>OC,lora_packet:()=>IC,lora_recv:()=>pC,lora_send:()=>aC,network_espnow_info:()=>Zm,network_espnow_mac:()=>zm,network_espnow_recv:()=>Qm,network_espnow_recv_handle:()=>qm,network_espnow_send:()=>Jm,recv_fun:()=>Cm,urequests_attribute:()=>LC,urequests_get:()=>MC,urequests_method:()=>RC});var q={};_.r(q),_.d(q,{display_animate:()=>vC,display_circle:()=>XC,display_color_seclet:()=>jC,display_draw_4strings:()=>BC,display_fill:()=>xC,display_lcd_use_i2c_init:()=>Tc,display_line:()=>yC,display_line_arbitrarily:()=>GC,display_matrix_extern_bright_point:()=>CC,display_matrix_extern_bright_screen:()=>HC,display_matrix_extern_clear:()=>uC,display_matrix_extern_get_pixel:()=>mC,display_matrix_extern_get_screen_pixel:()=>cC,display_matrix_extern_image_builtins:()=>DC,display_matrix_extern_scroll_string:()=>NC,display_matrix_extern_scroll_string_delay:()=>dC,display_matrix_extern_shift:()=>hC,display_matrix_extern_show_frame_string:()=>AC,display_matrix_extern_show_frame_string_delay:()=>PC,display_matrix_extern_show_image:()=>SC,display_matrix_extern_show_image_or_string_delay:()=>lC,display_matrix_use_i2c_init:()=>rC,display_oled_drawPixel:()=>wC,display_oled_showBitmap:()=>kC,display_oled_use_i2c_init:()=>Oc,display_onoff:()=>fC,display_rect:()=>FC,display_tm1650_power:()=>KC,display_tm1650_set_brightness:()=>QC,display_tm1650_show_dot:()=>ZC,display_tm1650_show_num:()=>zC,display_tm_use_i2c_init:()=>WC,display_triangle:()=>VC,display_use_i2c_init:()=>gC,extern_oled_bright_point:()=>Nc,extern_oled_clear:()=>lc,extern_oled_get_pixel:()=>Pc,extern_oled_hvline:()=>uc,extern_oled_line:()=>hc,extern_oled_scroll_string:()=>rc,extern_oled_scroll_string_delay:()=>Sc,extern_oled_shape_rect:()=>dc,extern_oled_shift:()=>Ac,extern_oled_show_frame_string:()=>Lc,extern_oled_show_frame_string_delay:()=>Rc,extern_oled_show_image:()=>Ic,extern_oled_show_image_or_string_delay:()=>Mc,extern_oled_show_image_xy:()=>ac,extern_oled_show_string:()=>pc,image_shift:()=>bC,lcd_backlight:()=>oc,lcd_clear:()=>sc,lcd_print_string:()=>nc,lcd_show_image_or_string_delay:()=>Ec,matrix_extern_image_arithmetic:()=>YC,matrix_extern_image_invert:()=>UC,tft_fill:()=>ec,tft_line_arbitrarily:()=>ic,tft_scroll_string_delay:()=>tc,tft_show_frame_string_delay:()=>_c,tft_show_image_or_string_delay:()=>$C,tft_show_image_xy:()=>qC,tft_use_spi_init:()=>JC});var j={};_.r(j),_.d(j,{bitbot_display_image_create:()=>sH,display_bright_point:()=>xc,display_bright_screen:()=>Xc,display_clear:()=>Gc,display_get_pixel:()=>bc,display_get_screen_pixel:()=>vc,display_image_builtins:()=>Uc,display_image_builtins_all:()=>gc,display_image_create:()=>Bc,display_scroll_string:()=>Dc,display_scroll_string_delay:()=>Yc,display_shift:()=>fc,display_show_frame_string:()=>cc,display_show_frame_string_delay:()=>Hc,display_show_image:()=>mc,display_show_image_or_string_delay:()=>Cc,image_arithmetic:()=>Fc,image_invert:()=>yc,mixbot_display_bright_screen:()=>nH,mixbot_display_get_ambientbright:()=>EH,mixbot_display_get_screen_pixel:()=>TH,mixbot_display_image_create:()=>iH,mixbot_display_rotate:()=>oH,mixgo_display_image_create_new:()=>Wc,mixgome_display_font:()=>wc,mixgome_display_image_create:()=>Vc,mixgomini_display_image_create:()=>kc,mpython_display_hvline:()=>tH,mpython_display_line:()=>eH,mpython_display_shape_rect:()=>_H,mpython_pbm_image:()=>Kc,onboard_oled_bright_point:()=>$c,onboard_oled_scroll_string_delay:()=>jc,onboard_oled_show_frame_string_delay:()=>qc,onboard_oled_show_image:()=>zc,onboard_oled_show_image_or_string_delay:()=>Jc,onboard_oled_show_image_xy:()=>Zc,onboard_oled_show_string:()=>Qc,onboard_tft_bright_point:()=>dH,onboard_tft_bright_screen:()=>hH,onboard_tft_clear:()=>AH,onboard_tft_clock_clear:()=>YH,onboard_tft_clock_draw:()=>DH,onboard_tft_clock_get_rtctime:()=>cH,onboard_tft_clock_init:()=>CH,onboard_tft_clock_set_time:()=>HH,onboard_tft_display_hvline:()=>SH,onboard_tft_display_line:()=>lH,onboard_tft_display_shape_circle:()=>UH,onboard_tft_display_shape_rect:()=>rH,onboard_tft_fill:()=>mH,onboard_tft_get_pixel:()=>NH,onboard_tft_get_screen_pixel:()=>uH,onboard_tft_scroll_string:()=>LH,onboard_tft_scroll_string_delay:()=>RH,onboard_tft_shift:()=>PH,onboard_tft_show_frame_string:()=>pH,onboard_tft_show_frame_string_delay:()=>MH,onboard_tft_show_image:()=>OH,onboard_tft_show_image_or_string_delay:()=>aH,onboard_tft_show_image_xy:()=>IH});var $={};_.r($),_.d($,{factory_block:()=>xH,factory_block_return:()=>vH,factory_block_return_with_textarea:()=>VH,factory_block_with_textarea:()=>XH,factory_callMethod_noreturn:()=>fH,factory_callMethod_return:()=>bH,factory_declare:()=>yH,factory_from_import:()=>gH,factory_function_noreturn:()=>GH,factory_function_return:()=>FH,factory_import:()=>BH,folding_block:()=>kH});var __={};_.r(__),_.d(__,{inout_analog_atten:()=>TD,inout_analog_read:()=>qH,inout_analog_read_init:()=>iD,inout_analog_write:()=>ZH,inout_analog_write_init:()=>eD,inout_analog_write_set:()=>QH,inout_digital_init:()=>_D,inout_digital_read:()=>KH,inout_digital_write:()=>WH,inout_highlow:()=>wH,inout_pin_attachInterrupt:()=>$H,inout_pin_pressed:()=>jH,inout_pin_pressed_init:()=>ED,inout_pwm_analog_write:()=>zH,inout_pwm_analog_write_init:()=>tD,inout_pwm_analog_write_set_freq:()=>JH});var t_={};_.r(t_),_.d(t_,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>hD,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>dD,IOT_EMQX_PING:()=>mD,IOT_FORMATTING:()=>PD,IOT_FORMAT_STRING:()=>ND,IOT_MIXIO_NTP:()=>CD,IOT_MIXIO_PUBLISH:()=>MD,IOT_MIXIO_SUBSCRIBE:()=>LD,iot_client_onboard:()=>cD,iot_http_client:()=>HD,iot_http_data:()=>DD,iot_mixio_check:()=>SD,iot_mixio_connect:()=>pD,iot_mixio_connect_only:()=>rD,iot_mixio_disconnect:()=>RD,iot_mixio_format_msg:()=>AD,iot_mixio_format_topic:()=>lD,iot_mixly_key:()=>uD,iot_mqtt_client:()=>YD,iot_mqtt_data:()=>UD,iot_onenet_check:()=>ID,iot_onenet_connect:()=>oD,iot_onenet_disconnect:()=>sD,iot_onenet_publish:()=>aD,iot_onenet_publish_dict:()=>OD,iot_wifi_connect:()=>nD});var e_={};_.r(e_),_.d(e_,{network_ap_connect:()=>vD,network_connect:()=>BD,network_get_connect:()=>FD,network_get_wifi:()=>xD,network_init:()=>gD,network_is_active:()=>bD,network_open:()=>fD,network_scan:()=>XD,network_server:()=>VD,network_socket_accept:()=>zD,network_socket_bind:()=>wD,network_socket_close:()=>jD,network_socket_connect:()=>WD,network_socket_init:()=>kD,network_socket_listen:()=>KD,network_socket_receive:()=>ZD,network_socket_receive_from:()=>JD,network_socket_send:()=>QD,network_socket_send_to:()=>qD,network_stop:()=>yD,network_wifi_connect:()=>GD,ntptime_address:()=>iY,ntptime_time:()=>eY,requests_attribute:()=>_Y,requests_get:()=>$D,requests_method:()=>tY,urequests_connect_url:()=>nY,urequests_response:()=>oY,urequests_wifi_connect:()=>TY,urequests_wifi_url:()=>EY});var i_={};_.r(i_),_.d(i_,{pe_g1_battery_left:()=>OY,pe_g1_dc_motor:()=>IY,pe_g1_dc_motor_speed:()=>aY,pe_g1_servo_get_angle:()=>LY,pe_g1_servo_get_speed:()=>RY,pe_g1_servo_set_angle:()=>pY,pe_g1_servo_set_speed:()=>MY,pe_g1_use_i2c_init:()=>sY});var T_={};_.r(T_),_.d(T_,{HCSR04:()=>TU,PS2_Button:()=>oU,PS2_Buttons:()=>sU,PS2_Buttons_new:()=>rU,PS2_State:()=>OU,PS2_init:()=>EU,PS2_init_new:()=>LU,PS2_stk:()=>IU,PS2_stk_new:()=>SU,PS2_vibration:()=>nU,PS2_vibration_new:()=>RU,RTC_get_time:()=>pU,RTC_set_date:()=>uY,RTC_set_datetime:()=>aU,RTC_set_time:()=>dY,esp32_s2_weather_init:()=>_U,esp32_s2_weather_rain:()=>eU,esp32_s2_weather_wd:()=>tU,esp32_s2_weather_ws:()=>iU,extern_rfid_read:()=>VY,extern_rfid_readcontent:()=>wY,extern_rfid_readid:()=>kY,extern_rfid_status:()=>zY,extern_rfid_write:()=>WY,extern_rfid_write_return:()=>KY,gnss_get_data:()=>PU,gnss_have_data:()=>NU,mixbot_sensor_extern_get_addr:()=>YU,mixbot_sensor_extern_set_addr:()=>UU,pm25_get_data:()=>AU,robot_button_extern_get_value:()=>dU,robot_color_extern_get_value:()=>cU,robot_infrared_extern_get_value:()=>hU,robot_infrared_extern_grey_get_value:()=>mU,robot_potentiometer_extern_get_value:()=>CU,robot_sonar_extern_get_value:()=>HU,robot_sonar_extern_led:()=>DU,robot_touch_extern_get_value:()=>uU,sensor_APDS9960_extern:()=>gY,sensor_LTR308_extern:()=>BY,sensor_LTR390UV_extern:()=>yY,sensor_MAX30102_extern:()=>UY,sensor_QMC5883L_extern:()=>fY,sensor_VL530LX_extern:()=>vY,sensor_aht11_extern:()=>xY,sensor_bmp:()=>HY,sensor_dht11:()=>MU,sensor_distance_hrsc04:()=>NY,sensor_hp203_extern:()=>GY,sensor_ltr381_extern:()=>FY,sensor_mixgo_extern_button_attachInterrupt:()=>AY,sensor_mixgo_extern_button_get_presses:()=>lY,sensor_mixgo_extern_button_is_pressed:()=>rY,sensor_mixgo_extern_button_was_pressed:()=>SY,sensor_mixgo_extern_light:()=>hY,sensor_mixgo_extern_pin_near:()=>CY,sensor_mixgo_extern_sound:()=>mY,sensor_mixgoce_hot_wheel_degrees:()=>$Y,sensor_mixgoce_hot_wheel_is_touched:()=>jY,sensor_mpu9250_attachGestureInterrupt:()=>PY,sensor_rtc_init:()=>cY,sensor_sht:()=>DY,sensor_shtc3_extern:()=>bY,sensor_use_i2c_init:()=>YY,sensor_use_spi_init:()=>XY,sensor_use_uart_init:()=>lU,sensor_weather_solo_init:()=>gU,sensor_weather_solo_rain:()=>FU,sensor_weather_solo_wd:()=>BU,sensor_weather_solo_ws:()=>GU,weather_data:()=>ZY,weather_have_data:()=>QY,weather_set_label:()=>qY,weather_uart_mixio:()=>JY});var E_={};_.r(E_),_.d(E_,{HCSR04:()=>wU,bitbot_als_num:()=>sB,dht11:()=>rB,number1:()=>WU,number2:()=>KU,number3:()=>zU,number4:()=>ZU,number5:()=>QU,number6:()=>JU,number7:()=>qU,onboard_RTC_get_time:()=>vg,onboard_RTC_get_timestamp:()=>Xg,onboard_RTC_set_datetime:()=>bg,onboard_RTC_settime_string:()=>xg,onboard_RTC_timestamp_totuple:()=>Vg,rfid_readcontent:()=>pg,rfid_readid:()=>ag,rfid_write:()=>Mg,rfid_write_return:()=>Lg,sensor_LTR308:()=>ng,sensor_adxl345_get_acceleration:()=>ug,sensor_aht11:()=>Og,sensor_bitbot_ALS:()=>oB,sensor_button_get_presses:()=>aB,sensor_button_is_pressed:()=>OB,sensor_button_was_pressed:()=>IB,sensor_compass_reset:()=>Dg,sensor_ds18x20:()=>Tg,sensor_eulerangles:()=>rg,sensor_get_acceleration:()=>Rg,sensor_get_temperature:()=>Ig,sensor_hp203:()=>sg,sensor_light:()=>RB,sensor_lm35:()=>Eg,sensor_mixbot_get_gyro:()=>nB,sensor_mixbot_patrol_calibrate:()=>iB,sensor_mixbot_patrol_value:()=>TB,sensor_mixbot_temperature:()=>EB,sensor_mixgo_LTR308:()=>eg,sensor_mixgo_button_attachInterrupt:()=>xU,sensor_mixgo_button_get_presses:()=>bU,sensor_mixgo_button_is_pressed:()=>yU,sensor_mixgo_button_was_pressed:()=>fU,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Wg,sensor_mixgo_cc_mmc5603_get_angle:()=>wg,sensor_mixgo_cc_mmc5603_get_magnetic:()=>kg,sensor_mixgo_light:()=>LB,sensor_mixgo_nova_LTR308:()=>ig,sensor_mixgo_nova_pin_near:()=>tg,sensor_mixgo_pin_near:()=>_g,sensor_mixgo_pin_near_double:()=>$U,sensor_mixgo_pin_near_single:()=>jU,sensor_mixgo_pin_pressed:()=>Ng,sensor_mixgo_touch_slide:()=>Pg,sensor_mixgocar42_button_attachInterrupt:()=>kU,sensor_mixgocar42_button_get_presses:()=>VU,sensor_mixgocar42_button_is_pressed:()=>vU,sensor_mixgocar42_button_was_pressed:()=>XU,sensor_mixgocar_battery_left:()=>eB,sensor_mixgocar_pin_near:()=>_B,sensor_mixgocar_pin_near_line:()=>$g,sensor_mixgocar_pin_near_state_change:()=>tB,sensor_mixgoce_pin_pressed:()=>Ag,sensor_mixgoce_temperature:()=>zg,sensor_mixgome_temperature:()=>Kg,sensor_mpu9250_calibrate_compass:()=>Cg,sensor_mpu9250_field_strength:()=>Hg,sensor_mpu9250_gesture:()=>Sg,sensor_mpu9250_get_acceleration:()=>lg,sensor_mpu9250_get_gyro:()=>mg,sensor_mpu9250_get_magnetic:()=>hg,sensor_mpu9250_temperature:()=>cg,sensor_mpython_pin_pressed:()=>dg,sensor_mpython_qmi8658_get_gyro:()=>Zg,sensor_mpython_qmi8658_temperature:()=>Qg,sensor_onboard_compass_reset:()=>fg,sensor_onboard_mpu9250_calibrate_compass:()=>Gg,sensor_onboard_mpu9250_field_strength:()=>yg,sensor_onboard_mpu9250_gesture:()=>Yg,sensor_onboard_mpu9250_get_acceleration:()=>Ug,sensor_onboard_mpu9250_get_gyro:()=>Bg,sensor_onboard_mpu9250_get_magnetic:()=>gg,sensor_onboard_mpu9250_temperature:()=>Fg,sensor_pin_near:()=>MB,sensor_pin_pressed:()=>pB,sensor_rm_acc:()=>jg,sensor_rm_battery_left:()=>qg,sensor_rm_pin_near_double:()=>Jg,sensor_sound:()=>og});var n_={};_.r(n_),_.d(n_,{serial_any:()=>NB,serial_print:()=>SB,serial_print_byte:()=>lB,serial_print_hex:()=>PB,serial_println:()=>AB,serial_read_from_ai:()=>gB,serial_readline:()=>uB,serial_readstr:()=>dB,serial_send_to_ai:()=>UB,serial_softserial:()=>hB,serial_softserial_new:()=>mB,system_input:()=>CB,system_print:()=>cB,system_print_end:()=>DB,system_print_inline:()=>HB,system_print_many:()=>YB});var o_={};_.r(o_),_.d(o_,{Panic_with_status_code:()=>wB,Timer_init:()=>EG,base_delay:()=>sG,controls_delay:()=>QB,controls_delay_new:()=>JB,controls_end_program:()=>KB,controls_millis:()=>WB,controls_uname:()=>ZB,reset:()=>zB,system_bitbot_shutdown:()=>TG,system_device_name:()=>VB,system_device_serial_number:()=>kB,system_event_bus_source:()=>vB,system_event_bus_value:()=>XB,system_machine_reset:()=>iG,system_on_event:()=>fB,system_raise_event:()=>yB,system_reset:()=>GB,system_run_in_background:()=>BB,system_ticks_diff:()=>$B,system_timer:()=>jB,system_timer_init:()=>_G,system_timestamp:()=>bB,system_value:()=>xB,system_wait:()=>FB,system_wdt_feed:()=>eG,system_wdt_init:()=>tG,time_ticks_diff:()=>oG,timer:()=>qB,timer2:()=>nG});var s_={};_.r(s_),_.d(s_,{WEATHER_DAILY:()=>IG,WEATHER_HOUR:()=>aG,WEATHER_NOW:()=>OG});var O_={};_.r(O_),_.d(O_,{analog_input:()=>uG,analog_output:()=>mG,espnow_channel:()=>PG,haskylens_model:()=>NG,i2c_A_pin:()=>CG,i2c_B_pin:()=>cG,pins_analog:()=>gG,pins_analog_pin:()=>BG,pins_axis:()=>QG,pins_brightness:()=>JG,pins_builtinimg:()=>VG,pins_builtinimg_extern:()=>kG,pins_button:()=>yG,pins_dac:()=>GG,pins_dac_pin:()=>FG,pins_digital:()=>RG,pins_digital_dot:()=>TF,pins_digital_pin:()=>rG,pins_exlcdh:()=>zG,pins_exlcdv:()=>ZG,pins_imglist:()=>wG,pins_input_pin:()=>SG,pins_mpython_touch:()=>AG,pins_one_more:()=>iF,pins_output_pin:()=>lG,pins_playlist:()=>WG,pins_playlist_extern:()=>KG,pins_pwm:()=>fG,pins_pwm_pin:()=>bG,pins_radio_datarate:()=>eF,pins_radio_power:()=>tF,pins_serial:()=>XG,pins_tone_notes:()=>_F,pins_touch:()=>vG,pins_touch_pin:()=>xG,pins_tts_bgmusic:()=>$G,pins_tts_builtin_music:()=>jG,pins_tts_voice:()=>qG,pwm_input:()=>dG,pwm_output:()=>hG,spi_A_pin:()=>HG,spi_B_pin:()=>DG,spi_C_pin:()=>YG,spi_D_pin:()=>UG});var I_={};_.r(I_),_.d(I_,{espnow_channel:()=>LF,haskylens_model:()=>RF,pins_analog:()=>aF,pins_analog_pin:()=>IF,pins_axis:()=>HF,pins_brightness:()=>UF,pins_builtinimg:()=>uF,pins_builtinimg_extern:()=>hF,pins_button:()=>nF,pins_dac:()=>lF,pins_dac_pin:()=>SF,pins_digital:()=>EF,pins_digital_dot:()=>xF,pins_digital_pin:()=>oF,pins_exlcdh:()=>DF,pins_exlcdv:()=>YF,pins_imglist:()=>mF,pins_input_pin:()=>sF,pins_interrupt:()=>NF,pins_mpython_touch:()=>rF,pins_one_more:()=>bF,pins_output_pin:()=>OF,pins_playlist:()=>CF,pins_playlist_extern:()=>cF,pins_pwm:()=>MF,pins_pwm_pin:()=>pF,pins_radio_datarate:()=>fF,pins_radio_power:()=>yF,pins_serial:()=>dF,pins_tone_notes:()=>FF,pins_touch:()=>PF,pins_touch_pin:()=>AF,pins_tts_bgmusic:()=>GF,pins_tts_builtin_music:()=>BF,pins_tts_voice:()=>gF});const a_=Blockly,p_=Mixly,M_={NAME_TYPE:"VARIABLE",allVariables:function(_){var t;if(_.getDescendants)t=_.getDescendants();else{if(!_.getAllBlocks)throw"Not Block or Workspace: "+_;t=_.getAllBlocks()}for(var e=Object.create(null),i=0;i1&&(n+=i)):e=n}else e="i";return e}},L_=M_; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class R_{constructor(_,t){if(this.variablePrefix_=t||"",this.reservedDict_=Object.create(null),_)for(var e=_.split(","),i=0;i0;T--)t.getInputTargetBlock("IF"+T)&&t.getInputTargetBlock("IF"+T).previousConnection?e[T]=t.getInputTargetBlock("IF"+T).previousConnection:e[T]=null,this.removeInput("IF"+T),t.getInputTargetBlock("DO"+T)&&t.getInputTargetBlock("DO"+T).previousConnection?i[T]=t.getInputTargetBlock("DO"+T).previousConnection:i[T]=null,this.removeInput("DO"+T);this.elseifCount_=parseInt(_.getAttribute("elseif"),10),this.elseCount_=parseInt(_.getAttribute("else"),10);for(T=1;T<=this.elseifCount_;T++)this.appendValueInput("IF"+T).setCheck([Boolean,Number]).appendField(a_.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+T).appendField(a_.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.CONTROLS_IF_MSG_ELSE);for(T=e.length-2;T>0;T--)e[T]&&e[T].reconnect(this,"IF"+T);for(T=i.length-2;T>0;T--)i[T]&&i[T].reconnect(this,"DO"+T)},decompose:function(_){var t=_.newBlock("controls_if_if");t.initSvg();for(var e=t.getInput("STACK").connection,i=1;i<=this.elseifCount_;i++){var T=_.newBlock("controls_if_elseif");T.initSvg(),e.connect(T.previousConnection),e=T.nextConnection}if(this.elseCount_){var E=_.newBlock("controls_if_else");E.initSvg(),e.connect(E.previousConnection)}return t},compose:function(_){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var t=this.elseifCount_;t>0;t--)this.removeInput("IF"+t),this.removeInput("DO"+t);this.elseifCount_=0;for(var e=_.getInputTargetBlock("STACK"),i=[null],T=[null],E=null;e;){switch(e.type){case"controls_if_elseif":this.elseifCount_++,i.push(e.valueConnection_),T.push(e.statementConnection_);break;case"controls_if_else":this.elseCount_++,E=e.statementConnection_;break;default:throw Error("Unknown block type: "+e.type)}e=e.nextConnection&&e.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(i,T,E)},saveConnections:function(_){for(var t=_.getInputTargetBlock("STACK"),e=1;t;){switch(t.type){case"controls_if_elseif":var i=this.getInput("IF"+e),T=this.getInput("DO"+e);t.valueConnection_=i&&i.connection.targetConnection,t.statementConnection_=T&&T.connection.targetConnection,e++;break;case"controls_if_else":T=this.getInput("ELSE");t.statementConnection_=T&&T.connection.targetConnection;break;default:throw"Unknown block type."}t=t.nextConnection&&t.nextConnection.targetBlock()}},rebuildShape_:function(){var _=[null],t=[null],e=null;this.getInput("ELSE")&&(e=this.getInput("ELSE").connection.targetConnection);for(var i=1;this.getInput("IF"+i);){var T=this.getInput("IF"+i),E=this.getInput("DO"+i);console.log(T.connection.targetConnection),_.push(T.connection.targetConnection),t.push(E.connection.targetConnection),i++}this.updateShape_(),this.reconnectChildBlocks_(_,t,e)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var _=1;this.getInput("IF"+_);)this.removeInput("IF"+_),this.removeInput("DO"+_),_++;for(_=1;_<=this.elseifCount_;_++)this.appendValueInput("IF"+_).setCheck([Number,Boolean]).appendField(a_.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+_).appendField(a_.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(_,t,e){for(var i=1;i<=this.elseifCount_;i++)_[i]&&_[i].reconnect(this,"IF"+i),t[i]&&t[i].reconnect(this,"DO"+i);e&&e.reconnect(this,"ELSE")}},Y_={init:function(){this.setColour(h_),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PYTHON_RANGE).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},U_={init:function(){this.setColour(h_),this.appendValueInput("LIST").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(a_.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return a_.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},g_={init:function(){this.setColour(h_),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new a_.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(a_.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return{WHILE:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[t]}))}},B_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new a_.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var _=document.createElement("mutation");return this.elseifCount_&&_.setAttribute("elseif",this.elseifCount_),this.elseCount_&&_.setAttribute("else",1),_},domToMutation:function(_){var t=this,e=[],i=[];this.elseCount_&&this.removeInput("ELSE");for(var T=this.elseifCount_;T>0;T--)t.getInputTargetBlock("IF"+T)&&t.getInputTargetBlock("IF"+T).previousConnection?e[T]=t.getInputTargetBlock("IF"+T).previousConnection:e[T]=null,this.removeInput("IF"+T),t.getInputTargetBlock("DO"+T)&&t.getInputTargetBlock("DO"+T).previousConnection?i[T]=t.getInputTargetBlock("DO"+T).previousConnection:i[T]=null,this.removeInput("DO"+T);this.elseifCount_=parseInt(_.getAttribute("elseif"),10),this.elseCount_=parseInt(_.getAttribute("else"),10);for(T=1;T<=this.elseifCount_;T++)this.appendValueInput("IF"+T).setCheck([Boolean,Number]).appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+T).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.MIXLY_PYTHON_FINALLY);for(T=e.length-2;T>0;T--)e[T]&&e[T].reconnect(this,"IF"+T);for(T=i.length-2;T>0;T--)i[T]&&i[T].reconnect(this,"DO"+T)},decompose:function(_){var t=_.newBlock("controls_try");t.initSvg();for(var e=t.getInput("STACK").connection,i=1;i<=this.elseifCount_;i++){var T=_.newBlock("controls_except");T.initSvg(),e.connect(T.previousConnection),e=T.nextConnection}if(this.elseCount_){var E=_.newBlock("controls_finally");E.initSvg(),e.connect(E.previousConnection)}return t},compose:function(_){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var t=this.elseifCount_;t>0;t--)this.removeInput("IF"+t),this.removeInput("DO"+t);this.elseifCount_=0;for(var e=_.getInputTargetBlock("STACK"),i=[null],T=[null],E=null;e;){switch(e.type){case"controls_except":this.elseifCount_++,i.push(e.valueConnection_),T.push(e.statementConnection_);break;case"controls_finally":this.elseCount_++,E=e.statementConnection_;break;default:throw Error("Unknown block type: "+e.type)}e=e.nextConnection&&e.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(i,T,E)},saveConnections:function(_){for(var t=_.getInputTargetBlock("STACK"),e=1;t;){switch(t.type){case"controls_except":var i=this.getInput("IF"+e),T=this.getInput("DO"+e);t.valueConnection_=i&&i.connection.targetConnection,t.statementConnection_=T&&T.connection.targetConnection,e++;break;case"controls_finally":T=this.getInput("ELSE");t.statementConnection_=T&&T.connection.targetConnection;break;default:throw"Unknown block type."}t=t.nextConnection&&t.nextConnection.targetBlock()}},rebuildShape_:function(){var _=[null],t=[null],e=null;this.getInput("ELSE")&&(e=this.getInput("ELSE").connection.targetConnection);for(var i=1;this.getInput("IF"+i);){var T=this.getInput("IF"+i),E=this.getInput("DO"+i);console.log(T.connection.targetConnection),_.push(T.connection.targetConnection),t.push(E.connection.targetConnection),i++}this.updateShape_(),this.reconnectChildBlocks_(_,t,e)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var _=1;this.getInput("IF"+_);)this.removeInput("IF"+_),this.removeInput("DO"+_),_++;for(_=1;_<=this.elseifCount_;_++)this.appendValueInput("IF"+_).setCheck([Number,Boolean]).appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+_).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(_,t,e){for(var i=1;i<=this.elseifCount_;i++)_[i]&&_[i].reconnect(this,"IF"+i),t[i]&&t[i].reconnect(this,"DO"+i);e&&e.reconnect(this,"ELSE")}},G_={init:function(){this.setColour(h_);var _=new a_.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(_,"FLOW").appendField(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var t=this;this.setTooltip((function(){var _=t.getFieldValue("FLOW");return{BREAK:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[_]}))},onchange:function(){if(this.workspace){var _=!1,t=this;do{if("controls_repeat"==t.type||"controls_for"==t.type||"controls_forEach"==t.type||"controls_repeat_ext"==t.type||"controls_whileUntil"==t.type||"do_while"==t.type){_=!0;break}t=t.getSurroundParent()}while(t);_?this.setWarningText(null):this.setWarningText(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},F_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new a_.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){return a_.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",_.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},y_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new a_.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){return a_.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",_.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}};g_.OPERATORS=[[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],G_.OPERATORS=[[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const f_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},b_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},x_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(a_.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},v_={init:function(){this.setColour(h_),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},X_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},V_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},k_={init:function(){this.jsonInit({message0:a_.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:h_,tooltip:a_.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:a_.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},w_={init:function(){this.setColour(h_),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_STAT),this.setOutput(!0)}},W_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},K_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},z_={init:function(){this.appendDummyInput().appendField(a_.Msg.CONTROLS_REPEAT_TITLE_REPEAT+a_.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(a_.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new a_.FieldDropdown([[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(h_),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Z_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Q_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},J_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},q_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_GET_UNIQUE_IDEN)}},j_=230;a_.FieldTextInput.math_number_validator=function(_){return String(_)},a_.FieldTextInput.math_number_validator_include_blank=function(_){if(""===_)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(_)?String(_):null};const $_={init:function(){this.setColour(j_),this.appendDummyInput().appendField(new a_.FieldTextInput("0",a_.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MATH_NUMBER_TOOLTIP)}},_t={init:function(){this.setColour(j_);this.appendDummyInput("").appendField(a_.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new a_.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var _=this;this.setTooltip((function(){var t=_.getFieldValue("CONSTANT");return{pi:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[t]}))}},tt={init:function(){this.setColour(j_);this.appendDummyInput("").appendField(a_.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new a_.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var _=this;this.setTooltip((function(){var t=_.getFieldValue("CONSTANT");return{pi:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[t]}))}},et={init:function(){this.setColour(j_),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{ADD:a_.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:a_.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:a_.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[t]}))}},it={init:function(){this.setColour(j_),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{ADD:a_.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:a_.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:a_.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[t]}))}},Tt={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new a_.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},Et={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new a_.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{SIN:a_.Msg.MATH_TRIG_TOOLTIP_SIN,COS:a_.Msg.MATH_TRIG_TOOLTIP_COS,TAN:a_.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:a_.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:a_.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:a_.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:a_.Msg.MATH_SINGLE_TOOLTIP_LN}[t]}))}},nt={init:function(){var _=[[a_.Msg.MATH_BIN,"bin"],[a_.Msg.MATH_OCT,"oct"],[a_.Msg.MATH_HEX,"hex"]];this.setColour(j_),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new a_.FieldDropdown(_),"OP");var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{bin:a_.Msg.MATH_DEC_TOOLTIP_BIN,oct:a_.Msg.MATH_DEC_TOOLTIP_OCT,hex:a_.Msg.MATH_DEC_TOOLTIP_HEX}[_]}))}},ot={init:function(){var _=[[a_.Msg.LANG_MATH_TO_ROUND,"round"],[a_.Msg.LANG_MATH_TO_CEIL,"ceil"],[a_.Msg.LANG_MATH_TO_FLOOR,"floor"],[a_.Msg.MATH_ABS,"fabs"],[a_.Msg.MATH_SQRT,"sqrt"]];this.setColour(j_),this.appendValueInput("A").setCheck(Number).appendField(new a_.FieldDropdown(_),"OP"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{sqrt:a_.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:a_.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:a_.Msg.MATH_SINGLE_TOOLTIP_SQ,round:a_.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:a_.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:a_.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[_]}))}},st={init:function(){var _=[[a_.Msg.MIXLY_MAX,"max"],[a_.Msg.MIXLY_MIN,"min"]];this.setColour(j_),this.appendValueInput("A").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown(_),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(a_.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{max:a_.Msg.MIXLY_TOOLTIP_MATH_MAX,min:a_.Msg.MIXLY_TOOLTIP_MATH_MIN}[_]}))}},Ot={init:function(){var _=[[a_.Msg.MATH_TWO,"two"],[a_.Msg.MATH_EIGHT,"eight"],[a_.Msg.MATH_TEN,"ten"],[a_.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(j_),this.appendDummyInput("").appendField(a_.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new a_.FieldDropdown(_),"OP").appendField(a_.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MATH_ZHW).appendField(new a_.FieldDropdown(_),"OP2").appendField(a_.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e={two:a_.Msg.MATH_Before_two,eight:a_.Msg.MATH_Before_eight,ten:a_.Msg.MATH_Before_ten,sixteen:a_.Msg.MATH_Before_sixteen},i=t.getFieldValue("OP2"),T={two:a_.Msg.MATH_Behind_two,eight:a_.Msg.MATH_Behind_eight,ten:a_.Msg.MATH_Behind_ten,sixteen:a_.Msg.MATH_Behind_sixteen};return e[_]+T[i]}))}},It={init:function(){var _=[[a_.Msg.LANG_MATH_INT,"int"],[a_.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(j_),this.setOutput(!0,Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_RANDOM).appendField(new a_.FieldDropdown(_),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TYPE"),e={int:a_.Msg.LANG_MATH_INT,float:a_.Msg.LANG_MATH_FLOAT_RANDOM};return a_.Msg.MATH_RANDOM_INT_TOOLTIP+e[_]}))}},at={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(a_.Msg.MATH_CONSTRAIN_TOOLTIP)}},pt={init:function(){this.setColour(j_),this.appendValueInput("NUM",Number).appendField(a_.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(a_.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(a_.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Mt={init:function(){this.setColour(j_),this.appendDummyInput().appendField(new a_.FieldTextInput("0",a_.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(a_.Msg.MATH_NUMBER_TOOLTIP)}},Lt={init:function(){this.setColour(j_),this.appendValueInput("NUM").setCheck(Number).appendField(a_.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Rt={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MATH_ROUND).appendField(a_.Msg.TEXT_KEEP),this.appendDummyInput().appendField(a_.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(a_.Msg.MATH_ROUND_NEW_TOOLTIP)}},rt={init:function(){var _=[[a_.Msg.MIXLY_TO_INT,"int"],[a_.Msg.MIXLY_TO_FLOAT,"float"],[a_.Msg.MIXLY_TO_BITES,"b"]];this.setColour(j_),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{int:a_.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:a_.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:a_.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[_]}))}},St={init:function(){var _=[[a_.Msg.MIXLY_TO_INT,"int"],[a_.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(j_),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{int:a_.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:a_.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[_]}))}},lt=pt,At=160,Pt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(a_.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(_){if(_==this.RTL)var t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new a_.FieldImage(t,12,12,'"')}},Nt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(a_.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(_){if(_==this.RTL)var t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new a_.FieldImage(t,12,12,'"')}};a_.FieldTextInput.char_validator=function(_){if(_.length>1&&"\\"===_.charAt(0)){var t=_.charAt(1);if("0"===t||"b"===t||"f"===t||"n"===t||"r"===t||"t"===t||"\\"===t||"'"===t)return String(_).substring(0,2);if("x"===t&&"0"===_.charAt(2)&&"B"===_.charAt(3))return String(_).substring(0,4)}return String(_).substring(0,1)};const dt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldTextInput("",a_.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(a_.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(_){if(1==_)var t="../../media/quote2.png";else t="../../media/quote3.png";return new a_.FieldImage(t,7,12,'"')}},ut={init:function(){this.setColour(At),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(a_.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ht={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},mt={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(String).appendField(a_.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Ct={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},ct={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Ht={init:function(){this.WHERE_OPTIONS=[[a_.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[a_.Msg.TEXT_GET_INDEX_RANDOM+1+a_.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.LISTS_GET_INDEX_GET,"MODE"),a_.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(a_.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=_.getFieldValue("WHERE"),i="";switch(t+" "+e){case"GET FROM_START":case"GET FROM_END":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=e&&"FROM_END"!=e||(i+=" "+a_.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",a_.Msg.ONE_BASED_INDEXING?"#1":"#0")),i}));var t=this;this.setTooltip((function(){var _=t.getFieldValue("WHERE"),e={FROM_START:a_.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:a_.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:a_.Msg.TEXT_GET_INDEX_RANDOM};return a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+e[_]+"n"+a_.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var _=document.createElement("mutation");_.setAttribute("statement",!this.outputConnection);var t=this.getInput("AT").type==a_.INPUT_VALUE;return _.setAttribute("at",t),_},domToMutation:function(_){var t="true"==_.getAttribute("statement");this.updateStatement_(t),_="false"!=_.getAttribute("at"),this.updateAt_(_)},updateStatement_:function(_){_!=!this.outputConnection&&(this.unplug(!0,!0),_?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(_){this.removeInput("AT"),this.removeInput("ORDINAL",!0),_?(this.appendValueInput("AT").setCheck(Number),a_.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(a_.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var t=new a_.FieldDropdown(this.WHERE_OPTIONS,(function(t){var e="FROM_START"==t||"FROM_END"==t;if(e!=_){var i=this.sourceBlock_;return i.updateAt_(e),i.setFieldValue(t,"WHERE"),null}}));this.getInput("AT").appendField(t,"WHERE"),a_.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Dt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(a_.Msg.LISTS_GET_INDEX_GET+" "+a_.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(a_.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+a_.Msg.LISTS_GET_INDEX_FROM_START+"n"+a_.Msg.TEXT_CHARAT2)}},Yt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(a_.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(a_.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Ut={init:function(){this.WHERE_OPTIONS_1=[[a_.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[a_.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[a_.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[a_.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(a_.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation"),t=this.getInput("AT1").type==a_.INPUT_VALUE;_.setAttribute("at1",t);var e=this.getInput("AT2").type==a_.INPUT_VALUE;return _.setAttribute("at2",e),_},domToMutation:function(_){var t="true"==_.getAttribute("at1"),e="true"==_.getAttribute("at2");this.updateAt_(1,t),this.updateAt_(2,e)},updateAt_:function(_,t){this.removeInput("AT"+_),this.removeInput("ORDINAL"+_,!0),t?(this.appendValueInput("AT"+_).setCheck(Number),a_.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+_).appendField(a_.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+_);var e=new a_.FieldDropdown(this["WHERE_OPTIONS_"+_],(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var T=this.sourceBlock_;return T.updateAt_(_,i),T.setFieldValue(e,"WHERE"+_),null}}));this.getInput("AT"+_).appendField(e,"WHERE"+_),1==_&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},gt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(a_.Msg.LISTS_GET_INDEX_GET+" "+a_.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(a_.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(a_.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(a_.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Bt={init:function(){var _=[[a_.Msg.MIXLY_EQUALS,"==="],[a_.Msg.MIXLY_STARTSWITH,"startswith"],[a_.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(At),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new a_.FieldDropdown(_),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Gt={init:function(){this.setColour(At),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(a_.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_COMPARETO_HELP)}},Ft={init:function(){var _=[[a_.Msg.TEXT_UPPER,"upper"],[a_.Msg.TEXT_TITLE,"title"],[a_.Msg.TEXT_CAPITALIZE,"capitalize"],[a_.Msg.TEXT_SWAPCASE,"swapcase"],[a_.Msg.TEXT_LOWER,"lower"]];this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new a_.FieldDropdown(_),"CAPITAL").setCheck(String),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var _=t.getFieldValue("CAPITAL");return{upper:a_.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:a_.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:a_.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:a_.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:a_.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[_]}))}},yt={init:function(){var _=[[a_.Msg.TEXT_LJUST,"ljust"],[a_.Msg.TEXT_CENTER,"center"],[a_.Msg.TEXT_RJUST,"rjust"]];this.setColour(At),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(a_.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(a_.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ft={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(a_.Msg.MIXLY_MID+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(a_.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},bt={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},xt={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(a_.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(a_.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},vt={init:function(){this.setColour(At),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(a_.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(a_.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Xt={init:function(){var _=[[a_.Msg.TEXT_TRIM_BOTH,"strip"],[a_.Msg.TEXT_TRIM_LEFT,"lstrip"],[a_.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(At),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(a_.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.appendDummyInput("").appendField(a_.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{strip:a_.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:a_.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:a_.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[_]}))}},Vt={init:function(){this.setColour(At),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new a_.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new a_.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("text_create_with_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;it?_[t]:0==t?'"key"':'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},be={init:function(){this.setColour(ye),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},xe={init:function(){this.setColour(ye),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},ve={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_KEYS),this.setTooltip(a_.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Xe={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(a_.Msg.DICTS_GET_TOOLTIP)}},Ve={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(a_.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(a_.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},ke={init:function(){this.setColour(ye),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(a_.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},we={init:function(){this.setColour(ye),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_DELETE_TOOLTIP)}},We={init:function(){this.setColour(ye),this.appendValueInput("DICT2").setCheck("Dict").appendField(a_.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(a_.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MID),this.setTooltip(a_.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ke={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_CLEAR),this.setTooltip(a_.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ze={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_ITEMS),this.setTooltip(a_.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Ze={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_VALUES),this.setTooltip(a_.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},Qe={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_LENGTH),this.setTooltip(a_.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},Je={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_DELDICT),this.setTooltip(a_.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qe={init:function(){this.MODE=[[a_.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[a_.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(a_.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t="";switch(_.getFieldValue("WHERE")){case"INSERT":t=a_.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":t=a_.Msg.DICTS_DELETE_TOOLTIP}return t}))},mutationToDom:function(){var _=document.createElement("mutation"),t=this.getInput("AT2").type==a_.INPUT_VALUE;return _.setAttribute("at2",t),_},domToMutation:function(_){var t="true"==_.getAttribute("at2");this.updateAt_(t)},updateAt_:function(_){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),_?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var t=new a_.FieldDropdown(this.MODE,(function(t){var e="INSERT"==t;if(e!=_){var i=this.sourceBlock_;return i.updateAt_(e),i.setFieldValue(t,"WHERE"),null}}));this.getInput("AT2").appendField(t,"WHERE")}},je={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.setTooltip(a_.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},$e={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(a_.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_SETDEFAULT_TOOLTIP)}},_i={init:function(){this.setColour(ye),this.appendDummyInput("").appendField(new a_.FieldLabel(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new a_.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("dicts_create_with_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;it?_[t]:0==t?'"key"':'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},ti={init:function(){this.setColour(ye),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},ei={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TO_JSON),this.setTooltip(a_.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ii={init:function(){this.setColour(ye),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(a_.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},Ti=210,Ei={init:function(){var _=a_.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{EQ:a_.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:a_.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:a_.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:a_.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:a_.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:a_.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[_]})),this.prevBlocks_=[null,null]}},ni={init:function(){var _=a_.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],t=a_.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP1"),this.appendValueInput("C").appendField(new a_.FieldDropdown(t),"OP2"),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},oi={init:function(){var _=[[a_.Msg.LOGIC_OPERATION_AND,"AND"],[a_.Msg.LOGIC_OPERATION_OR,"OR"],[a_.Msg.LOGIC_OPERATION_NOR,"NOR"],[a_.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{AND:a_.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:a_.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:a_.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:a_.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[_]}))}},si={init:function(){this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(a_.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(a_.Msg.LOGIC_NEGATE_TOOLTIP)}},Oi={init:function(){var _=[[a_.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[a_.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new a_.FieldDropdown(_),"BOOL"),this.setTooltip(a_.Msg.LOGIC_BOOLEAN_TOOLTIP)}},Ii={init:function(){this.setColour(Ti),this.setOutput(!0),this.appendDummyInput().appendField(a_.Msg.LOGIC_NULL),this.setTooltip(a_.Msg.LOGIC_NULL_TOOLTIP)}},ai={init:function(){this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").appendField(a_.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(a_.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},pi={init:function(){var _=[[a_.Msg.TEXT_APPEND_TO,"in"],[a_.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new a_.FieldDropdown(_),"BOOL"),this.appendDummyInput("").appendField(a_.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.IN)}},Mi={init:function(){var _=[[a_.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[a_.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},Li={init:function(){this.setColour(Ti),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Ri={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(a_.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},ri={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},Si={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG,n=a_.Msg.PY_STORAGE_FILE_OBJECT;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T+n}))}},li={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(a_.Msg.MIXPY_TEXT_ENCODE).appendField(new a_.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG,n=a_.Msg.PY_STORAGE_FILE_OBJECT;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T+n}))}},Ai={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Pi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Ni={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return e+{read:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[t]+"x"+i}))}},di={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(a_.Msg.MICROBIT_PYTHON_TYPE)}},ui={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.HTML_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},hi={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},mi={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Ci={init:function(){this.setColour(0),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const ci={init:function(){this.setColour(0),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Hi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Di={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Yi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return e+" "+{start:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[t]+T+"x"+i}))}},Ui={init:function(){this.setColour(0),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},gi={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+a_.Msg.MIXLY_ESP32_SET+{mkdir:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[t]}))}},Bi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(a_.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Gi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Fi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.HTML_FILE,"isfile"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[t]}))}},yi={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(a_.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},fi={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(a_.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},bi={};bi.NAME_TYPE=a_.PROCEDURE_CATEGORY_NAME,bi.allProcedures=function(_){for(var t=_.getAllBlocks(!1),e=[],i=[],T=0;T"),this.appendValueInput("style").appendField(a_.Msg.MIXLY_AIP_ATTR).setAlign(a_.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},BT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},GT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_FORM_CONTENT).appendField(new a_.FieldDropdown([[a_.Msg.HTML_TEXT,"text"],[a_.Msg.HTML_EMAIL,"email"],[a_.Msg.HTML_NUMBER,"number"],[a_.Msg.HTML_PASSWORD,"password"],[a_.Msg.HTML_CHECKBOX,"checkbox"],[a_.Msg.HTML_RADIOBUTTON,"radiobutton"],[a_.Msg.HTML_BUTTON,"button"],[a_.Msg.HTML_COLOUR,"colour"],[a_.Msg.HTML_DATE,"date"],[a_.Msg.HTML_LOCALTIME,"local time"],[a_.Msg.HTML_FILE,"file"],[a_.Msg.HTML_HIDDEN,"hidden"],[a_.Msg.HTML_IMAGE,"image"],[a_.Msg.HTML_MONTH,"month"],[a_.Msg.HTML_RANGE,"range"],[a_.Msg.HTML_RESET,"reset"],[a_.Msg.HTML_SEARCH,"search"],[a_.Msg.HTML_SUBMIT,"submit"],[a_.Msg.HTML_TELEPHONENUMBER,"telephone number"],[a_.Msg.HTML_TIME,"time"],[a_.Msg.HTML_URL,"url"],[a_.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(a_.Msg.HTML_NAME).appendField(new a_.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(a_.Msg.HTML_VALUE).appendField(new a_.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(a_.Msg.MIXLY_AIP_ATTR).setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},FT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(new a_.FieldTextInput("property"),"KEY").appendField(":").appendField(new a_.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},yT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(new a_.FieldTextInput("property"),"KEY").appendField(":").appendField(new a_.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_TEXT).appendField(new a_.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bT=160,xT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new a_.FieldTable(""),"TEXT")}},vT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new a_.FieldMultilineInput(""),"TEXT")}},XT={init:function(){this.setColour(bT),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new a_.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},VT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},kT={init:function(){this.setColour(bT),this.appendDummyInput().appendTitle("Comment:").appendTitle(new a_.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},wT={init:function(){this.setColour(bT),this.appendValueInput("VALUE").appendField(a_.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},WT={init:function(){this.setColour(bT),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new a_.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(a_.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=a_.Block.obtain(_,"text_print_multiple_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;i= stop:"," yield start"," start -= abs(step)"])};if(_=function(_,t,e){return"("+_+" <= "+t+") and "+s()+"("+_+", "+t+", "+e+") or "+O()+"("+_+", "+t+", "+e+")"},a_.isNumber(i)&&a_.isNumber(T)&&a_.isNumber(E))i=parseFloat(i),T=parseFloat(T),E=Math.abs(parseFloat(E)),0==i%1&&0==T%1&&0==E%1?(i<=T?(T++,_=0==i&&1==E?T:i+", "+T,1!=E&&(_+=", "+E)):_=i+", "+--T+", -"+E,_="range("+_+")"):(_=i",GTE:">="};const Yo=function(_,t){var e=this.getFieldValue("OP"),i="&&"==e?t.ORDER_LOGICAL_AND:t.ORDER_LOGICAL_OR,T=t.valueToCode(this,"A",i)||"False",E=t.valueToCode(this,"B",i)||"False";if("AND"==e)var n=T+" and "+E;else if("OR"==e)n=T+" or "+E;else if("NOR"==e)n="not("+T+"^"+E+")";else n=T+"^"+E;return[n,i]},Uo=function(_,t){var e=t.ORDER_UNARY_PREFIX;return["not "+(t.valueToCode(this,"BOOL",e)||"False"),e]},go=function(_,t){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",t.ORDER_ATOMIC]},Bo=function(_,t){return["None",t.ORDER_ATOMIC]},Go=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"False";return["("+(t.valueToCode(this,"B",t.ORDER_ATOMIC)||"False")+" if "+e+" else "+(t.valueToCode(this,"C",t.ORDER_ATOMIC)||"False")+")",t.ORDER_ATOMIC]},Fo=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"''",i=t.valueToCode(this,"B",t.ORDER_ATOMIC)||"''";return[e+" "+this.getFieldValue("BOOL")+" "+i,t.ORDER_ATOMIC]},yo=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"''",i=t.valueToCode(this,"B",t.ORDER_ATOMIC)||"''";return[e+" "+this.getFieldValue("BOOL")+" "+i,t.ORDER_ATOMIC]},fo=function(_,t){return["bool("+(t.valueToCode(this,"VAR",t.ORDER_ATOMIC)||"0")+")",t.ORDER_ATOMIC]},bo=function(_,t){return t.definitions_.import_os="import os","os.startfile("+t.valueToCode(this,"fn",t.ORDER_ATOMIC)+")\n"},xo=function(_,t){return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+" = open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},vo=function(_,t){return["open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",t.ORDER_ATOMIC]},Xo=function(_,t){return["open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',t.ORDER_ATOMIC]},Vo=function(_,t){var e=t.valueToCode(this,"data",t.ORDER_ATOMIC);return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".write("+e+")\n"},ko=function(_,t){var e=this.getFieldValue("MODE");return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+"."+e+"()",t.ORDER_ATOMIC]},wo=function(_,t){var e=this.getFieldValue("MODE");return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+"."+e+"("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},Wo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".readline("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},Ko=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".writable()",t.ORDER_ATOMIC]},zo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".name()",t.ORDER_ATOMIC]},Zo=function(_,t){return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".close()\n"},Qo=function(_,t){t.definitions_.import_os="import os";return["os.listdir()",t.ORDER_ATOMIC]},Jo=function(_,t){return t.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")\n"},qo=function(_,t){return t.definitions_.import_os="import os",["os.path.getsize("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},jo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".tell()",t.ORDER_ATOMIC]},$o=function(_,t){var e=this.getFieldValue("MODE"),i=0;return i="start"==e?0:"current"==e?1:2,t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".seek("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+","+i+")\n"},_s=function(_,t){return t.definitions_.import_os="import os","os.chdir("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")\n"},ts=function(_,t){t.definitions_.import_os="import os";return["os.getcwd()",t.ORDER_ATOMIC]},es=function(_,t){return t.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+t.valueToCode(this,"PATH",t.ORDER_ATOMIC)+")\n"},is=function(_,t){return t.definitions_.import_os="import os","os.rename("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+","+t.valueToCode(this,"NEWFILE",t.ORDER_ATOMIC)+")\n"},Ts=function(_,t){t.definitions_.import_os="import os";var e=t.valueToCode(this,"FILE",t.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+e+")",t.ORDER_ATOMIC]},Es=function(_,t){return t.definitions_.import_os="import os",t.definitions_.import_sdcard="import sdcard",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+" = sdcard.SDCard("+t.valueToCode(this,"SPISUB",t.ORDER_ATOMIC)+","+t.valueToCode(this,"PINSUB",t.ORDER_ATOMIC)+")\n"},ns=function(_,t){return t.definitions_.import_os="import os",t.definitions_.import_sdcard="import sdcard","os.mount("+t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+","+t.valueToCode(this,"DIR",t.ORDER_ATOMIC)+")\n"},os=function(_,t){var e=t.variableDB_.getName(this.getFieldValue("NAME"),a_.Procedures.NAME_TYPE),i=t.statementToCode(this,"STACK")||" pass\n";t.INFINITE_LOOP_TRAP&&(i=t.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+i);var T=t.valueToCode(this,"RETURN",t.ORDER_NONE)||"";T&&(T=" return "+T+"\n");for(var E=[],n=0;n\n\n\n\t\n"+t.statementToCode(this,"HEAD")+"\n\n"+t.statementToCode(this,"BODY")+"\n\n'''",t.ORDER_ATOMIC]},Xs=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");return"\n"+e+"\n"},Vs=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");if("head"==i)var T="<"+i+'>\n\t\n'+e+"\n";else T="<"+i+">\n"+e+"\n";return T},ks=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");return"<"+i+">\n"+e+"\n"},ws=function(_,t){var e=t.statementToCode(this,"DO"),i=t.valueToCode(this,"style"),T=this.getFieldValue("LEVEL");return"<"+T+" "+i+" >\n"+e+"\n"},Ws=function(_,t){return['style="'+t.statementToCode(this,"STYLE")+'"',t.ORDER_ATOMIC]},Ks=function(_,t){return'"},zs=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Zs=function(){return this.getFieldValue("TEXT")+"\n"},Qs=function(_){return _.getFieldValue("TEXT")+"\n"},Js=function(_,t){return[_.getFieldValue("TEXT"),t.ORDER_ATOMIC]},qs=function(_,t){return(t.valueToCode(_,"VALUE",t.ORDER_ATOMIC)||"")+"\n"},js=function(){return""},$s=function(_,t){return["type("+(t.valueToCode(_,"VALUE",t.ORDER_MEMBER)||"___")+")",t.ORDER_ATOMIC]},_O=function(_,t){for(var e=_.getFieldValue("NAME"),i=_.hasReturn_,T=new Array(_.itemCount_),E=0;E<_.itemCount_;E++)T[E]=t.valueToCode(_,"ARGUMENT"+E,t.ORDER_NONE)||"___";var n=e+"("+T.join(", ")+")";return i?[n,t.ORDER_ATOMIC]:n+"\n"},tO=function(_,t){var e=t.valueToCode(_,"MODULE",t.ORDER_ATOMIC),i=t.valueToCode(_,"NAME",t.ORDER_ATOMIC);return[e+"."+(i=i.substring(1,i.length-1)),t.ORDER_NONE]},eO=new a_.Generator("Python");eO.INDENT=" ",eO.addReservedWords("False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,print,raise,return,try,while,with,yield,NotImplemented,Ellipsis,__debug__,quit,exit,copyright,license,credits,ArithmeticError,AssertionError,AttributeError,BaseException,BlockingIOError,BrokenPipeError,BufferError,BytesWarning,ChildProcessError,ConnectionAbortedError,ConnectionError,ConnectionRefusedError,ConnectionResetError,DeprecationWarning,EOFError,Ellipsis,EnvironmentError,Exception,FileExistsError,FileNotFoundError,FloatingPointError,FutureWarning,GeneratorExit,IOError,ImportError,ImportWarning,IndentationError,IndexError,InterruptedError,IsADirectoryError,KeyError,KeyboardInterrupt,LookupError,MemoryError,ModuleNotFoundError,NameError,NotADirectoryError,NotImplemented,NotImplementedError,OSError,OverflowError,PendingDeprecationWarning,PermissionError,ProcessLookupError,RecursionError,ReferenceError,ResourceWarning,RuntimeError,RuntimeWarning,StandardError,StopAsyncIteration,StopIteration,SyntaxError,SyntaxWarning,SystemError,SystemExit,TabError,TimeoutError,TypeError,UnboundLocalError,UnicodeDecodeError,UnicodeEncodeError,UnicodeError,UnicodeTranslateError,UnicodeWarning,UserWarning,ValueError,Warning,ZeroDivisionError,_,__build_class__,__debug__,__doc__,__import__,__loader__,__name__,__package__,__spec__,abs,all,any,apply,ascii,basestring,bin,bool,buffer,bytearray,bytes,callable,chr,classmethod,cmp,coerce,compile,complex,copyright,credits,delattr,dict,dir,divmod,enumerate,eval,exec,execfile,exit,file,filter,float,format,frozenset,getattr,globals,hasattr,hash,help,hex,id,input,int,intern,isinstance,issubclass,iter,len,license,list,locals,long,map,max,memoryview,min,next,object,oct,open,ord,pow,print,property,quit,range,raw_input,reduce,reload,repr,reversed,round,set,setattr,slice,sorted,staticmethod,str,sum,super,tuple,type,unichr,unicode,vars,xrange,zip"),eO.ORDER_ATOMIC=0,eO.ORDER_COLLECTION=1,eO.ORDER_STRING_CONVERSION=1,eO.ORDER_UNARY_POSTFIX=1,eO.ORDER_UNARY_PREFIX=2,eO.ORDER_MEMBER=2.1,eO.ORDER_FUNCTION_CALL=2.2,eO.ORDER_EXPONENTIATION=3,eO.ORDER_UNARY_SIGN=4,eO.ORDER_BITWISE_NOT=4,eO.ORDER_MULTIPLICATIVE=5,eO.ORDER_ADDITIVE=6,eO.ORDER_BITWISE_SHIFT=7,eO.ORDER_BITWISE_AND=8,eO.ORDER_BITWISE_XOR=9,eO.ORDER_BITWISE_OR=10,eO.ORDER_RELATIONAL=11,eO.ORDER_EQUALITY=11,eO.ORDER_LOGICAL_NOT=12,eO.ORDER_LOGICAL_AND=13,eO.ORDER_LOGICAL_OR=14,eO.ORDER_ASSIGNMENT=14,eO.ORDER_CONDITIONAL=15,eO.ORDER_LAMBDA=16,eO.ORDER_NONE=99,eO.ORDER_OVERRIDES=[[eO.ORDER_FUNCTION_CALL,eO.ORDER_MEMBER],[eO.ORDER_FUNCTION_CALL,eO.ORDER_FUNCTION_CALL],[eO.ORDER_MEMBER,eO.ORDER_MEMBER],[eO.ORDER_MEMBER,eO.ORDER_FUNCTION_CALL]],eO.init=function(){eO.PASS=this.INDENT+"pass\n",eO.definitions_=Object.create(null),eO.functionNames_=Object.create(null),eO.setups_=Object.create(null),eO.loops_=Object.create(null),eO.codeEnd_=Object.create(null),eO.variableDB_?eO.variableDB_.reset():eO.variableDB_=new r_(eO.RESERVED_WORDS_)},eO.finish=function(_){""!==_&&(_=(_=_.replace(/\n/g,"\n")).replace(/\n\s+$/,"\n"));var t=[];for(var e in eO.definitions_)t.push(eO.definitions_[e]);var i=[];for(var e in eO.functions_)i.push(eO.functions_[e]);var T=[];for(var e in eO.setups_)T.push(eO.setups_[e]);0!==T.length&&T.push("\n");var E=[];for(var e in eO.loops_)E.push(eO.loops_[e]);var n=[];for(var e in eO.codeEnd_)n.push(eO.codeEnd_[e]);return 0!==n.length&&n.push("\n"),E.length>0?t.join("\n")+"\n"+i.join("\n")+"\n"+T.join("")+"\n"+_+"while True:\n"+E.join("")+n.join("\n"):t.join("\n")+"\n"+i.join("\n")+"\n"+T.join("")+"\n"+_+n.join("\n")},eO.scrubNakedValue=function(_){return _+"\n"},eO.quote_=function(_){var t="'";return-1!==(_=_.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===_.indexOf('"')?t='"':_=_.replace(/'/g,"\\'")),t+_+t},eO.multiline_quote_=function(_){return"'''"+(_=_.replace(/'''/g,"\\'\\'\\'"))+"'''"},eO.scrub_=function(_,t,e){var i="";if(!_.outputConnection||!_.outputConnection.targetConnection){(E=_.getCommentText())&&(E=a_.utils.string.wrap(E,eO.COMMENT_WRAP-3),i+=eO.prefixLines(E+"\n","# "));for(var T=0;T<_.inputList.length;T++)if(_.inputList[T].type==a_.INPUT_VALUE){var E,n=_.inputList[T].connection.targetBlock();if(n)(E=eO.allNestedComments(n))&&(i+=eO.prefixLines(E,"# "))}}var o=_.nextConnection&&_.nextConnection.targetBlock();return i+t+(e?"":eO.blockToCode(o))},eO.getAdjustedInt=function(_,t,e,i){var T=e||0;_.workspace.options.oneBasedIndex&&T--;var E=_.workspace.options.oneBasedIndex?"1":"0",n=T?eO.ORDER_ADDITIVE:eO.ORDER_NONE,o=eO.valueToCode(_,t,n)||E;return a_.isNumber(o)?(o=parseInt(o,10)+T,i&&(o=-o)):(o=T>0?"int("+o+" + "+T+")":T<0?"int("+o+" - "+-T+")":"int("+o+")",i&&(o="-"+o)),o};const iO="#74A55B",TO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_RGB_PIN_COUNT)}},EO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},nO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},oO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},sO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(a_.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(a_.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},OO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},IO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_RESET)}},aO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},MO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},LO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},RO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},rO={init:function(){this.setColour(iO),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},SO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},lO={init:function(){this.setColour(iO),this.appendValueInput("VAR").appendField("360°"+a_.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SETTING+a_.Msg.blockpy_turtle_rotate+a_.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},AO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},PO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},NO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},dO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},uO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new a_.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(a_.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},hO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"ms32006.MOT_CW"],[a_.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[a_.Msg.MOTOR_N,"ms32006.MOT_N"],[a_.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},mO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new a_.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"ms32006.MOT_CW"],[a_.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},CO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_RGB_PIN_COUNT)}},cO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},HO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},DO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_WRI)}},YO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new a_.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+a_.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},UO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},gO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},BO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(a_.Msg.MIXLY_PROGRAM_BLOCK).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},GO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(a_.Msg.MIXLY_PROGRAM_BLOCK).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},FO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},yO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},fO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_TRAFFIC_LIGHT).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LISTS_SET_INDEX_SET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_WHITE,"W"],[a_.Msg.COLOUR_RGB_RED,"R"],[a_.Msg.COLOUR_RGB_YELLOW,"Y"],[a_.Msg.COLOUR_RGB_GREEN,"G"],[a_.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_WHITE,"W"],[a_.Msg.COLOUR_RGB_RED,"R"],[a_.Msg.COLOUR_RGB_YELLOW,"Y"],[a_.Msg.COLOUR_RGB_GREEN,"G"],[a_.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},XO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[a_.Msg.MIXLY_SPEED,"[1]"],[a_.Msg.MATH_SINGLE_OP_ABSOLUTE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[a_.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[a_.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[a_.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},VO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MATH_SINGLE_OP_ABSOLUTE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"0"],[a_.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[a_.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},WO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},KO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField("("+a_.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},zO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField("("+a_.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"0"],[a_.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MOTOR,"ext_motor"],[a_.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[a_.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[a_.Msg.COLOUR_RGB_RED+"LED","R_LED"],[a_.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[a_.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[a_.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[a_.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},QO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MOTOR,"ext_motor"],[a_.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[a_.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[a_.Msg.COLOUR_RGB_RED+"LED","R_LED"],[a_.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[a_.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[a_.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[a_.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},JO="#6C9858",qO={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},jO={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_ON,"1"],[a_.Msg.MIXLY_ESP32_OFF,"0"],[a_.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},$O={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},_I={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},tI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},eI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_BUILDIN_LED+a_.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},iI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(a_.Msg.MIXLY_LCD_SETCOLOR).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LIGHT_OFF,"0"],[a_.Msg.MIXLY_LIGHT_RED,"1"],[a_.Msg.MIXLY_LIGHT_GREEN,"2"],[a_.Msg.MIXLY_LIGHT_BLUE,"3"],[a_.Msg.MIXLY_LIGHT_YELLOW,"4"],[a_.Msg.MIXLY_LIGHT_CYAN,"5"],[a_.Msg.MIXLY_LIGHT_PURPLE,"6"],[a_.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},TI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},EI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},nI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},oI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_BUILDIN_LED+a_.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},sI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},OI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(p_.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},II={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},aI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},pI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.PYTHON_RANGE_STEP).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},MI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_WRI)}},LI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(p_.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},RI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},rI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.PYTHON_RANGE_STEP).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},SI={init:function(){this.setColour(JO),this.appendValueInput("TICKS").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(a_.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(a_.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},lI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},AI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_RESET)}},PI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},NI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},dI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},uI={init:function(){this.setColour(JO),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},hI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},mI={init:function(){this.setColour(JO),this.appendDummyInput().appendField("MixGo Car").appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},CI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField("MixGo Car").appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([[a_.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[a_.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},HI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([[a_.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[a_.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_STOP).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},YI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[a_.Msg.MIXLY_SPEED,"SPEED"],[a_.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},UI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},gI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.MIXLY_MOTOR).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"1"],[a_.Msg.TEXT_TRIM_RIGHT,"2"],[a_.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[a_.Msg.MIXLY_SPEED,"SPEED"],[a_.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},BI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},GI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},FI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(a_.Msg.MIXLY_MOTOR).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"0"],[a_.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fI={init:function(){this.setColour(JO),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},bI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},xI={init:function(){this.setColour(JO),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_MIXBOT_BUZZER+a_.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},vI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MIXBOT_BUZZER+a_.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},XI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_RECORD_AUDIO).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(a_.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},VI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_PLAY_AUDIO).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},kI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},WI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},KI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.LISTS_SET_INDEX_SET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},zI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT+a_.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.LISTS_SET_INDEX_SET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.MIXLY_ALL+a_.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(a_.ALIGN_RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT+a_.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},QI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(a_.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(a_.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(a_.Msg.MIXLY_RELEASE).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT)}},JI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPECIAL_KEY0,"0"],[a_.Msg.MIXLY_SPECIAL_KEY1,"1"],[a_.Msg.MIXLY_SPECIAL_KEY2,"2"],[a_.Msg.MIXLY_SPECIAL_KEY1,"4"],[a_.Msg.MIXLY_SPECIAL_KEY8,"8"],[a_.Msg.MIXLY_SPECIAL_KEY16,"16"],[a_.Msg.MIXLY_SPECIAL_KEY32,"32"],[a_.Msg.MIXLY_SPECIAL_KEY64,"64"],[a_.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},qI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},jI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.ANALOG+a_.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(a_.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(a_.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(a_.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(a_.Msg.MIXLY_RELEASE).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT)}},$I={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPECIAL_KEY0,"0"],[a_.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[a_.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[a_.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},_a={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(a_.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(a_.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},ta="#90A244",ea={init:function(){this.setColour(ta),this.appendDummyInput("").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new a_.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+a_.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ia={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_QR_CODE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.OLED_STRING,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},Ta={init:function(){this.setColour(ta),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_QR_CODE+a_.Msg.MIXPY_OBJECT,"qrcode"],[a_.Msg.MIXLY_BAR_CODE+a_.Msg.MIXPY_OBJECT,"barcode"],[a_.Msg.MIXLY_TAG+a_.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},Ea={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},na={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().appendField(a_.Msg.SOFT_RESET+a_.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},oa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(a_.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},sa={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_BAR_CODE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.OLED_STRING,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},Oa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},Ia={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TAG+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.OLED_STRING,"info1"],[a_.Msg.blockpy_turtle_rotate+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},aa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},pa={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_LINE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LINE_ANGLE,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},Ma={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(a_.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},La={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_CIRCLE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_CIRCLE_AREA,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Ra={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(a_.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},ra={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_RECT+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_CIRCLE_AREA,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},Sa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},la={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["RGB"+a_.Msg.HTML_COLOUR,"[0]"],["LAB"+a_.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},Aa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Pa={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_COLOR_CHASE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_CIRCLE_AREA,"info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Na={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+a_.Msg.MIXLY_COLOR_LAB).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(a_.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},da={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_OBJECT_LIST).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+a_.Msg.MIXLY_MODEL_NAME).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(a_.Msg.MIXLY_TRAIN_TIME).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(a_.Msg.MIXLY_AipNlp_Topic_Title).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},ua={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_OBJECT_LIST).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_MODEL_NAME).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(a_.Msg.MIXLY_AipNlp_Topic_Title).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},ha={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_LOCAL_CLASS+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["ID","info1"],[a_.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},ma={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXPY_AI_AUDIO_TIME).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},Ca={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_MP3_VOL).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ca={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_ANCHOR).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_MODEL_PATH).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(a_.Msg.MIXLY_AipNlp_Topic_Title).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},Ha={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_YOLO_RECOGNIZE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["ID","info1"],[a_.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"],[a_.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+a_.Msg.MIXLY_POSITION_XY,"xc"],[a_.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+a_.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},Da={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(a_.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(a_.Msg.MIXLY_ESP32_THRESHOLD).setAlign(a_.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},Ya={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_LICENSEPLATE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["ID","info1"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},Ua={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},ga={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_FACE+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["ID","info1"],[a_.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Ba={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},Ga={init:function(){this.setColour(ta),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_20OBJECTS+a_.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([["ID","info1"],[a_.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[a_.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+a_.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+a_.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+a_.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+a_.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},Fa={init:function(){this.setColour(ta),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},ya={init:function(){this.setColour(205),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_AipSpeech_asr,"ASR"],[a_.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_Client).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},fa={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_AI_UNIT).appendField(a_.Msg.MIXLY_Client).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(a_.Msg.OLED_STRING).setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},ba={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_AipSpeech_asr).appendField(a_.Msg.MIXLY_Client).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(a_.Msg.MIXPY_AI_AUDIO_TIME).setAlign(a_.inputs.Align.RIGHT),this.appendDummyInput("").appendField(a_.Msg.MIXLY_LANGUAGE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[a_.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[a_.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},xa="#2FAD7A",va={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Xa={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Va={init:function(){this.jsonInit({inputsInline:!0,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(a_.CONTROLS_REPEAT_INPUT_DO)}},ka={init:function(){this.jsonInit({inputsInline:!0,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(a_.CONTROLS_REPEAT_INPUT_DO)}},wa={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},Wa={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},Ka={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},za={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},Za={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},Qa={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},Ja={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},qa={init:function(){this.jsonInit({message0:a_.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[a_.Msg.MIXLY_PYTHON_PERIODIC,"False"],[a_.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(a_.CONTROLS_REPEAT_INPUT_DO)}},ja={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},$a={init:function(){this.jsonInit({inputsInline:!0,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(a_.CONTROLS_REPEAT_INPUT_DO)}},_p={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:xa,helpUrl:a_.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:a_.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:a_.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},tp=140,ep={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},ip={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},Tp={init:function(){this.setColour(tp),this.appendValueInput("SUB").appendField("I2C "+a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_I2C_INIT)}},Ep={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},np={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},op={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_I2C_SCAN1+a_.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_I2C_SCAN)}},sp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(a_.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},Op={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_SET)}},Ip={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_SET+a_.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},ap={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(a_.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+a_.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_READ)}},pp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(a_.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(a_.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+a_.Msg.LANG_MATH_BYTE+" "+a_.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},Mp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(a_.Msg.MIXLY_SERIAL_READ+a_.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_READINTO)}},Lp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(a_.Msg.MIXLY_SERIAL_READ+a_.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},Rp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_WRITE)}},rp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(a_.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},Sp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},lp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_READ+a_.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},Ap={init:function(){this.setColour(tp),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+a_.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(a_.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_INIT)}},Np={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_SCAN)}},dp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_READ)}},up={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_WRITE).appendField(new a_.FieldDropdown([[a_.Msg.LANG_MATH_STRING,"write"],[a_.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_WRITE)}},hp={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(a_.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_SELECT)}},mp={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_OW_RESET)}},Cp={init:function(){this.setColour(tp),this.appendValueInput("PIN").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_IR_INPUT1,"8"],[a_.Msg.MIXLY_IR_INPUT2,"16"],[a_.Msg.MIXLY_IR_INPUT3,"0"],[a_.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(a_.Msg.CONTROLS_REPEAT_INPUT_DO+a_.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_IR_CMD_CODE,"0"],[a_.Msg.MIXLY_IR_ADDR_CODE,"1"],[a_.Msg.MIXLY_IR_RAW_CODE,"2"],[a_.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},Hp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXlY_RECV_FUN).appendField(new a_.FieldDropdown([[a_.Msg.MILY_PAUSE,"True"],[a_.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Dp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(a_.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},Yp={init:function(){this.setColour(tp),this.appendValueInput("time").appendField(a_.Msg.MIXlY_RECV_FUN).appendField(a_.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(a_.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Up={init:function(){this.setColour(tp),this.appendValueInput("PIN").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.MIXLY_IR_SEND).appendField(a_.Msg.MIXLY_PIN),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_IR_SEND_samsung1,"False"],[a_.Msg.MIXLY_IR_SEND_samsung2,"True"],[a_.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(a_.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},gp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(a_.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(a_.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(a_.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},Bp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_IR_PULSE).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(a_.Msg.MIXLY_IR_RAW_CODE).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fp={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},yp={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField(a_.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MSG.catEthernet_init+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+a_.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},fp={init:function(){this.setColour(tp),this.appendValueInput("VAR").appendField(a_.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MSG.catEthernet_init+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+a_.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},bp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_ONEWIRE_SCAN+a_.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},xp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},vp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_TEXT_JOIN+a_.Msg.MSG.catBLE).appendField(new a_.FieldDropdown([[a_.Msg.HTML_NAME,"name"],[a_.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Xp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Vp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MSG.catBLE+a_.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(a_.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},kp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MSG.catBLE+a_.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},wp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(a_.Msg.CONTROLS_REPEAT_INPUT_DO+a_.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},Kp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(a_.Msg.CONTROLS_REPEAT_INPUT_DO+a_.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+a_.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(a_.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TX_POWER).appendField(new a_.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Zp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+a_.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(a_.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},Qp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},Jp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},qp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new a_.FieldDropdown([["("+a_.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+a_.Msg.OLED_STRING+")",""],[a_.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[a_.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},jp={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},$p={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(a_.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},_M={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},tM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_MP_ESPNOW_RADIO+a_.Msg.MIXLY_TX_POWER).appendField(new a_.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},eM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},iM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},TM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},EM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},nM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},oM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},sM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new a_.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},OM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},IM={init:function(){this.setColour(tp),this.appendDummyInput().appendField(a_.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new a_.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},aM={init:function(){this.setColour(tp),this.appendValueInput("SUB").appendField("Lora"+a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(a_.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(a_.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(a_.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(a_.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(a_.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new a_.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_LORA_INIT_TOOLTIP)}},pM={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_PACKAGE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[a_.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},MM={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(a_.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},LM={init:function(){this.setColour(tp),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},RM={init:function(){this.setColour(tp),this.appendValueInput("DOMAIN").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS_GET).appendField(new a_.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},rM={init:function(){this.appendValueInput("VAL");var _=[[a_.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(tp),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown(_),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var _=t.getFieldValue("DIR");return{clear:a_.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:a_.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:a_.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[_]}))}},SM={init:function(){this.appendValueInput("VAR").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(tp),this.appendDummyInput("").appendField(a_.Msg.blockpy_CONDUCT).appendField(new a_.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},lM=Tp,AM=Ep,PM=np,NM=op,dM=sp,uM=Op,hM=Ip,mM=ap,CM=pp,cM=Mp,HM=Lp,DM=Rp,YM=rp,UM=Sp,gM=lp,BM=120;({init:function(){this.setColour(BM),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(a_.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new a_.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return{WHILE:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[t]}))}}).OPERATORS=[[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(BM);var _=new a_.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(_,"FLOW").appendField(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("FLOW");return{BREAK:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[_]}))},onchange:function(){if(this.workspace){var _=!1,t=this;do{if("controls_repeat"==t.type||"controls_for"==t.type||"controls_forEach"==t.type||"controls_repeat_ext"==t.type||"controls_whileUntil"==t.type){_=!0;break}t=t.getSurroundParent()}while(t);_?this.setWarningText(null):this.setWarningText(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const GM="5BA5A5",FM={init:function(){this.setColour(GM),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},yM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},fM={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},bM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},vM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},XM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},VM={init:function(){var _=[[a_.Msg.MIXLY_UP,"shift_up"],[a_.Msg.MIXLY_DOWN,"shift_down"],[a_.Msg.MIXLY_LEFT,"shift_left"],[a_.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET2).appendField(new a_.FieldDropdown(_),"OP"),this.appendValueInput("val").appendField(a_.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e=a_.Msg.DISPLAY_IMAGE_LET,i=a_.Msg.DISPLAY_IMAGE_LET2,T=a_.Msg.DISPLAY_IMAGE_LET3;return e+i+{up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT}[_]+T}))}},kM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},wM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},WM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},KM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},zM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},ZM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new a_.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},QM={init:function(){var _=[[a_.Msg.MICROBIT_DISPLAY_UNION,"add"],[a_.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(a_.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{"+":a_.Msg.MIXLY_MICROBIT_image_add,"-":a_.Msg.MIXLY_MICROBIT_image_reduce}[_]}))}},JM={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(GM),this.appendValueInput("A").setCheck("esp32_image").appendField(a_.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},qM={init:function(){this.setColour(GM),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},jM={init:function(){this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.OLEDDISPLAY+a_.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(GM),this.setTooltip(a_.Msg.MIXLY_DF_LCD+a_.Msg.OLEDDISPLAY+a_.Msg.MIXLY_MICROBIT_TYPE_STRING)}},$M={init:function(){var _=[[a_.Msg.MIXLY_HEIGHT,"height"],[a_.Msg.MIXLY_WIDTH,"width"]];this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+a_.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+a_.Msg.MIXLY_MICROBIT_IMAGE+{height:a_.Msg.MIXLY_HEIGHT,width:a_.Msg.MIXLY_WIDTH}[_]}))}},_L={init:function(){var _=[[a_.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[a_.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RECT).appendField(new a_.FieldDropdown(_),"OP"),this.jsonInit({message0:a_.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_OLED_RECT)}},tL={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_DISPLAY_DRAW).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_DISPLAY_RLINE,"hline"],[a_.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:a_.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_OLED_LINE)}},eL={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.jsonInit({message0:a_.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_OLED_LINE_ARBIT)}},iL={init:function(){this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(a_.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},TL={init:function(){this.setColour(GM),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},EL={init:function(){this.setColour(GM),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(a_.Msg.LISTS_SET_INDEX_SET+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B)}},nL={init:function(){this.setColour(GM),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_ON,"ON"],[a_.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},oL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[a_.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e={0:a_.Msg.MIXLY_LCD_STAT_CLEAR,1:a_.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return a_.Msg.MIXLY_DF_LCD+e[t]}))}},sL={init:function(){this.setColour(GM),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new a_.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},OL={init:function(){var _=[[a_.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[a_.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new a_.FieldDropdown(_),"OP"),this.jsonInit({message0:a_.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},IL={init:function(){var _=[[a_.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[a_.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_DISPLAY_DRAW+a_.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new a_.FieldDropdown(_),"OP"),this.jsonInit({message0:a_.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_DISPLAY_DRAW+a_.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},aL={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(a_.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},pL={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(a_.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(a_.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(a_.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(a_.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(a_.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.OLED_SHOW_BMP_TOOLTIP)}},ML={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(a_.Msg.OLED),this.appendDummyInput("").appendField(a_.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(a_.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(a_.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.OLED_DRAW_PIXE_TOOLTIP)}},LL={init:function(){this.setColour(GM),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return a_.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[t]}))}},RL={init:function(){this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_4DIGITDISPLAY).appendField(new a_.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ON,"on"],[a_.Msg.MIXLY_OFF,"off"],[a_.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},rL={init:function(){this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_4DIGITDISPLAY).appendField(new a_.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},SL={init:function(){this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_4DIGITDISPLAY).appendField(new a_.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(a_.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(a_.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+a_.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},lL={init:function(){this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_4DIGITDISPLAY).appendField(new a_.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},AL={init:function(){this.setColour(GM),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+a_.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(a_.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(a_.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.blockpy_turtle_rotate).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_NO,"0"],[a_.Msg.ANTI_CLOCKWISE+"90°","1"],[a_.Msg.ANTI_CLOCKWISE+"180°","2"],[a_.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},PL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catTFT),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},NL={init:function(){this.setColour(GM);let _=new a_.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(a_.inputs.Align.RIGHT).appendField(_,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},dL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},uL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},hL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},mL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catTFT),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[a_.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e={0:a_.Msg.MIXLY_LCD_STAT_CLEAR,1:a_.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return a_.Msg.MIXLY_DF_LCD+e[t]}))}},CL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:a_.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_OLED_LINE_ARBIT)}},cL={init:function(){this.setColour(GM),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(a_.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return a_.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[t]}))}},HL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.array2_rows),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},DL={init:function(){this.setColour(GM),this.appendValueInput("SUB").appendField(a_.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_SERIAL_PRINT+a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},YL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catLCD),this.appendDummyInput().appendField(a_.Msg.TFT_Brightness).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[a_.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e={1:a_.Msg.MIXLY_MICROBIT_Turn_on_display,0:a_.Msg.MIXLY_MICROBIT_Turn_off_display};return a_.Msg.MSG.catLCD+a_.Msg.TFT_Brightness+e[t]}))}},UL={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catLCD),this.setColour(GM),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},gL={init:function(){this.setColour(GM),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(a_.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return a_.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[t]}))}},BL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},GL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},FL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(a_.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},yL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},fL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},bL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},xL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},XL={init:function(){var _=[[a_.Msg.MIXLY_UP,"shift_up"],[a_.Msg.MIXLY_DOWN,"shift_down"],[a_.Msg.MIXLY_LEFT,"shift_left"],[a_.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET2).appendField(new a_.FieldDropdown(_),"OP"),this.appendValueInput("val").appendField(a_.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e=a_.Msg.DISPLAY_IMAGE_LET,i=a_.Msg.DISPLAY_IMAGE_LET2,T=a_.Msg.DISPLAY_IMAGE_LET3;return e+i+{up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT}[_]+T}))}},VL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},kL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},wL={init:function(){this.setColour(GM),this.appendValueInput("SUB").setCheck("var").appendField(a_.Msg.MSG.catOLED),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},WL={init:function(){this.jsonInit({colour:GM,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[a_.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[a_.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[a_.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[a_.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:a_.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},KL={init:function(){this.jsonInit({colour:GM,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[a_.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[a_.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[a_.Msg.mpython_vertical,"0"],[a_.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:a_.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},zL={init:function(){this.jsonInit({colour:GM,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[a_.Msg.mpython_display_hline_1,"1"],[a_.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.mpython_display_line_TOOLTIP,message0:a_.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},ZL="#569A98",QL={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==p_.Boards.getSelectedBoardKey()&&this.setTooltip(a_.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},JL={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qL={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},jL={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$L={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_R={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<12;_++){let t=this.appendDummyInput();for(let e=0;e<32;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},eR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:a_.Msg.MIXLY_MICROBIT_Built_in_image1,message0:a_.Msg.MIXLY_MICROBIT_Built_in_image})}},iR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:a_.Msg.MIXLY_MICROBIT_Built_in_image1,message0:a_.Msg.MIXLY_MICROBIT_Built_in_image})}},TR={init:function(){var _=[[a_.Msg.MICROBIT_DISPLAY_UNION,"add"],[a_.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(ZL),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(a_.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{"+":a_.Msg.MIXLY_MICROBIT_image_add,"-":a_.Msg.MIXLY_MICROBIT_image_reduce}[_]}))}},ER={init:function(){this.setColour(ZL),this.appendValueInput("A").setCheck("esp32_image").appendField(a_.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},nR={init:function(){var _=[[a_.Msg.MIXLY_UP,"shift_up"],[a_.Msg.MIXLY_DOWN,"shift_down"],[a_.Msg.MIXLY_LEFT,"shift_left"],[a_.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(ZL),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET2).appendField(new a_.FieldDropdown(_),"OP"),this.appendValueInput("val").appendField(a_.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e=a_.Msg.DISPLAY_IMAGE_LET,i=a_.Msg.DISPLAY_IMAGE_LET2,T=a_.Msg.DISPLAY_IMAGE_LET3;return e+i+{shift_up:a_.Msg.MIXLY_UP,shift_down:a_.Msg.MIXLY_DOWN,shift_left:a_.Msg.MIXLY_LEFT,shift_right:a_.Msg.MIXLY_RIGHT}[_]+T}))}},oR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},sR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},OR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},IR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},aR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},pR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<5;_++){let t=this.appendDummyInput();for(let e=0;e<8;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},MR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<8;_++){let t=this.appendDummyInput();for(let e=0;e<12;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},LR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<8;_++){let t=this.appendDummyInput();for(let e=0;e<16;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0,"esp32_image"),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},RR={init:function(){var _=[["4x5"+a_.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+a_.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+a_.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.OLED_SET_FONT).appendField(new a_.FieldDropdown(_),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},rR={init:function(){this.setColour(ZL),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},SR={init:function(){this.setColour(ZL),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},lR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(a_.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},AR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},PR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},NR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},uR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"state",options:[[a_.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[a_.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[a_.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[a_.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:a_.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},hR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"state",options:[[a_.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[a_.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[a_.Msg.mpython_vertical,"0"],[a_.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:a_.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},mR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"state",options:[[a_.Msg.mpython_display_hline_1,"1"],[a_.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.mpython_display_line_TOOLTIP,message0:a_.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},CR={init:function(){this.jsonInit({colour:ZL,args0:[{type:"field_label",name:"size_image",text:a_.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},cR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<5;_++){let t=this.appendDummyInput();for(let e=0;e<5;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},HR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},DR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},YR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},UR={init:function(){var _=[[a_.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[a_.Msg.CLOCKWISE+"90"+a_.Msg.blockpy_setheading_degree,"1"],[a_.Msg.CLOCKWISE+"180"+a_.Msg.blockpy_setheading_degree,"2"],[a_.Msg.CLOCKWISE+"270"+a_.Msg.blockpy_setheading_degree,"3"]];this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new a_.FieldDropdown(_),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},gR={init:function(){this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let _=0;_<12;_++){let t=this.appendDummyInput();for(let e=0;e<12;e++)t.appendField(new a_.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),_+"-"+e)}this.setOutput(!0),this.setColour(ZL),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Create_image1)}},BR={init:function(){this.setColour(ZL),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},GR={init:function(){this.setColour(ZL),this.appendValueInput("data").appendField(a_.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.OLED_BITMAP_OR_STRING)}},FR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(a_.Msg.TEXT_CENTER).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},yR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(a_.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},bR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xR={init:function(){this.setColour(ZL),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"shape",options:[[a_.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[a_.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:a_.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},XR={init:function(){this.jsonInit({colour:ZL,args0:[{name:"dir_h_v",options:[[a_.Msg.mpython_vertical,"0"],[a_.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:a_.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},VR={init:function(){this.jsonInit({colour:ZL,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,tooltip:a_.Msg.mpython_display_line_TOOLTIP,message0:a_.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},kR={init:function(){var _=[[a_.Msg.MIXLY_UP,"shift_up"],[a_.Msg.MIXLY_DOWN,"shift_down"],[a_.Msg.MIXLY_LEFT,"shift_left"],[a_.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(ZL),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_LET2).appendField(new a_.FieldDropdown(_),"OP"),this.appendValueInput("val").appendField(a_.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e=a_.Msg.DISPLAY_IMAGE_LET,i=a_.Msg.DISPLAY_IMAGE_LET2,T=a_.Msg.DISPLAY_IMAGE_LET3;return e+i+{up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT}[_]+T}))}},wR={init:function(){this.setColour(ZL),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(a_.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},WR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_LCD_SETCOLOR).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},KR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Clear_display)}},zR={init:function(){this.setColour(ZL),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},ZR={init:function(){this.setColour(ZL),this.appendValueInput("x").setCheck(Number).appendField(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},QR={init:function(){this.setColour(ZL),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},JR={init:function(){this.setColour(ZL),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(a_.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(a_.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qR={init:function(){this.setColour(ZL),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},jR={init:function(){this.setColour(ZL),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(a_.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(a_.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(a_.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$R={init:function(){this.setColour(ZL),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_r={init:function(){this.setColour(ZL),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.jsonInit({colour:ZL,args0:[{name:"shape",options:[[a_.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[a_.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:a_.Msg.mpython_HELPURL,message0:a_.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},er="#777777",ir={init:function(){this.setColour(er),this.appendDummyInput("").appendField("from ").appendField(new a_.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new a_.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Tr={init:function(){this.setColour(er),this.appendDummyInput("").appendField("import ").appendField(new a_.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Er={init:function(){this.setColour(er),this.appendDummyInput("").appendField(new a_.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new a_.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var _=document.createElement("mutation");_.setAttribute("items",this.itemCount_);for(var t=0;tt?_[t]:'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},Kr={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},zr={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Zr={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Qr={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(a_.Msg.MIXLY_WIFI_USERNAME).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(a_.Msg.MIXLY_IOT_PASSWORD).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(a_.Msg.MIXLY_EMQX_PROJECT).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Jr={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(a_.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(a_.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},qr={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(a_.Msg.MIXLY_EMQX_SUBSCRIBE+a_.Msg.MIXLY_MICROBIT_MSG).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(a_.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},jr={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$r={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},_S={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tS={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(a_.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},eS={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},iS={init:function(){this.setColour(xr),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},TS={init:function(){this.setColour(xr),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},ES={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},nS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO").appendField(a_.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(a_.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},oS={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+a_.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sS={init:function(){this.setColour(xr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},OS={init:function(){this.VISITOR_ID=p_.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(xr),this.appendDummyInput("").appendField(new a_.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const _=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==_&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},IS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MixIO").appendField(a_.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},aS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("HTTP"+a_.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(a_.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(a_.Msg.MIXLY_REQUESTS_GET).appendField(a_.Msg.MIXLY_GET_CURRENT_TIME).appendField(a_.Msg.MIXLY_OPEN_DEBUG).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("HTTP"+a_.Msg.MIXLY_Client).appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_REQUESTS_LEN,"client_len"],[a_.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[a_.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},MS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MQTT"+a_.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(a_.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(a_.Msg.MIXLY_INIT_SUBSCRIBE).appendField(a_.Msg.MQTT_Topic).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(a_.Msg.MIXLY_OPEN_DEBUG).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},LS={init:function(){this.setColour(xr),this.appendDummyInput().appendField("MQTT"+a_.Msg.MIXLY_Client).appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_REQUESTS_LEN,"client_len"],[a_.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[a_.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},RS=vr,rS=Xr,SS=Vr,lS=kr,AS=Wr,PS=225,NS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(a_.Msg.MIXLY_NETWORK_MODE).appendField(new a_.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},dS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[a_.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("op"),e=a_.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:a_.Msg.MIXLY_NETWORK_WIFI_OPEN,False:a_.Msg.MIXLY_NETWORK_WIFI_CLOSE}[t]+e}))}},uS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},hS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return a_.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:a_.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},mS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(a_.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(a_.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},CS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_CONNECT+a_.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},cS={init:function(){this.setColour(PS),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(a_.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(a_.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},HS={init:function(){this.setColour(PS),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},DS={init:function(){this.setColour(PS),this.appendValueInput("url").appendField(a_.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},YS={init:function(){this.setColour(PS),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},US={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[a_.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[a_.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("mode");return a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:a_.Msg.MIXLY_ESP32_NETWORK_IP,1:a_.Msg.MIXLY_ESP32_NETWORK_MASK,2:a_.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[t]}))}},gS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},BS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[a_.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},GS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(a_.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(a_.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},FS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},yS={init:function(){this.setColour(PS),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new a_.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("mode");return a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[t]}))}},fS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},bS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},xS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},vS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},XS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},VS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},kS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},wS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},WS={init:function(){this.setColour(PS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},KS={init:function(){this.setColour(PS),this.appendValueInput("DOMAIN").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS_GET).appendField(new a_.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},zS={init:function(){this.appendValueInput("VAL");var _=[[a_.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(PS),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown(_),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var _=t.getFieldValue("DIR");return{clear:a_.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:a_.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:a_.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[_]}))}},ZS={init:function(){this.appendValueInput("VAR").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(PS),this.appendDummyInput("").appendField(a_.Msg.blockpy_CONDUCT).appendField(new a_.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("DIR");return{forward:a_.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:a_.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[t]}))}},QS={init:function(){this.setColour(PS),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(a_.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},JS={init:function(){this.setColour(PS),this.appendDummyInput("").appendField(new a_.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},qS=100,jS={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(t),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},$S={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},_l={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField(a_.Msg.MOTOR_DC).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField(a_.Msg.MOTOR_DC).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},el={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},il={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Tl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+a_.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},El={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(qS),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},nl="#A58C5B",ol={init:function(){this.setColour(nl),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(a_.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SENOR_IS_PRESSED)}},sl={init:function(){this.setColour(nl),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(a_.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SENOR_WAS_PRESSED)}},Ol={init:function(){this.setColour(nl),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_BUTTON+a_.Msg.MIXLY_GET_PRESSES)}},Il={init:function(){this.setColour(nl),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[a_.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[a_.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},al={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_shake,"shake"],[a_.Msg.MIXLY_UP,"up"],[a_.Msg.MIXLY_DOWN,"down"],[a_.Msg.MIXLY_LEFT,"left"],[a_.Msg.MIXLY_RIGHT,"right"],[a_.Msg.MIXLY_MICROBIT_face_up,"face up"],[a_.Msg.MIXLY_MICROBIT_face_down,"face down"],[a_.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("gesture"),e=a_.Msg.MIXLY_MICROBIT_JS_CURRENT,i=a_.Msg.MSG.catSensor,T=a_.Msg.MIXLY_MICROBIT_JS_STATE,E=a_.Msg.MIXLY_MICROBIT_PERFORMANCE;return e+i+T+{shake:a_.Msg.MIXLY_MICROBIT_shake,up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT,"face up":a_.Msg.MIXLY_MICROBIT_face_up,"face down":a_.Msg.MIXLY_MICROBIT_face_down,freefall:a_.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[t]+E}))}},pl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},Ml={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},Ll={init:function(){var _=[[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(nl),this.appendValueInput("PIN",Number).appendField(new a_.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new a_.FieldDropdown(_),"WHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("WHAT");return{temperature:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[_]}))}},Rl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},rl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},Sl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"left"],[a_.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(a_.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("direction"),e=a_.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,i=a_.Msg.MIXLY_ESP32_NEAR;return e+{left:a_.Msg.TEXT_TRIM_LEFT,right:a_.Msg.TEXT_TRIM_RIGHT}[t]+i}))}},ll={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[a_.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{"get_BMP_temperature()":a_.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":a_.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[t]}))}},Al={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[a_.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{"get_SHT_temperature()":a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Pl={init:function(){this.setColour(nl),this.appendValueInput("PIN",Number).appendField("DS18x20 "+a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},Nl={init:function(){this.setColour(nl),this.appendDummyInput("").appendField("LM35"+a_.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_LM35)}},dl={init:function(){this.setColour(nl),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},ul={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[a_.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[a_.Msg.MIXLY_ESP32_MAX30102_IR+","+a_.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},hl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[a_.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[a_.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ml={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},Cl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.HTML_COLOUR+a_.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET+a_.Msg.HTML_COLOUR,"[2]"],[a_.Msg.MIXLY_GET+a_.Msg.MIXLY_IR_STRENGTH,"[1]"],[a_.Msg.MIXLY_GET+a_.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET_ENV_LIGHT,"E"],[a_.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Dl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{temperature:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Yl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{temperature:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Ul={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_Altitude+a_.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETPRESSURE,"pressure()"],[a_.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[a_.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},gl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MIXGOPE_FIELD+a_.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[a_.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Bl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_shake,"shake"],[a_.Msg.MIXLY_UP,"up"],[a_.Msg.MIXLY_DOWN,"down"],[a_.Msg.MIXLY_LEFT,"left"],[a_.Msg.MIXLY_RIGHT,"right"],[a_.Msg.MIXLY_MICROBIT_face_up,"face up"],[a_.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("gesture"),e=a_.Msg.MIXLY_MICROBIT_JS_CURRENT,i=a_.Msg.MSG.catSensor,T=a_.Msg.MIXLY_MICROBIT_JS_STATE,E=a_.Msg.MIXLY_MICROBIT_PERFORMANCE;return e+i+T+{shake:a_.Msg.MIXLY_MICROBIT_shake,up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT,"face up":a_.Msg.MIXLY_MICROBIT_face_up,"face down":a_.Msg.MIXLY_MICROBIT_face_down}[t]+E}))}},Gl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},Fl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_GET+a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},yl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+a_.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_ESP32_SENOR_GYRO;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},fl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},bl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_GETTEMPERATUE)}},xl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("compass");return a_.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[t]}))}},vl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},Xl={init:function(){this.setColour(nl),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},Vl={init:function(){this.setColour(nl),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[a_.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},kl={init:function(){this.setColour(nl),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},wl={init:function(){this.setColour(nl),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},Wl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(a_.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Kl={init:function(){this.setColour(nl),this.appendDummyInput().appendField(a_.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(a_.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(a_.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},zl={init:function(){this.setColour(nl),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RFID_SCAN_OK,"0"],[a_.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[a_.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Zl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},Ql={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Jl={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ql={init:function(){this.setColour(nl),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new a_.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("weather_set_label_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;i>6),e.push(128|63&E)):(2048<=E&&E<=55295||57344<=E&&E<=65535)&&(i+=3,e.push(224|15&E>>12),e.push(128|63&E>>6),e.push(128|63&E))}for(T=0;T>8,255&i].concat(e)}(_,!0),e="",i=0;i=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==n?(t.definitions_.import_matrix32x12="import matrix32x12",e=T+" = matrix32x12.Matrix("+E+",font_address="+o+")\n"):"16x8 Matrix"==n&&(t.definitions_.import_matrix16x8="import matrix16x8",e=T+" = matrix16x8.Matrix("+E+")\n"),e},MC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},LC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},RC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},rC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},SC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},lC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},AC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".fill(0)\n"+e+".show()\n"},PC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},NC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+"))",t.ORDER_ATOMIC]},dC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".pixel(int("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+"), int("+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+"), "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"+e+".show()\n"},uC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".get_brightness()",t.ORDER_ATOMIC]},hC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".set_brightness("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+")\n"},mC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("image"),t.ORDER_ATOMIC]},CC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".map_"+_.getFieldValue("OP")+"("+t.valueToCode(_,"A",t.ORDER_ATOMIC)+","+t.valueToCode(_,"B",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},cC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".map_invert("+t.valueToCode(_,"A",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},HC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC);return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+t.valueToCode(this,"row",t.ORDER_ATOMIC)+","+t.valueToCode(this,"column",t.ORDER_ATOMIC)+","+e+")\n"},DC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_str("+(t.valueToCode(this,"Text_line1",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line2",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line3",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line4",t.ORDER_ASSIGNMENT)||"''")+")\n"},YC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_line("+t.valueToCode(this,"x1",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"y1",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"x2",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"y2",t.ORDER_ATOMIC)+", 1)\n"},UC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"width",t.ORDER_ATOMIC),n=t.valueToCode(this,"height",t.ORDER_ATOMIC),o="TRUE"==this.getFieldValue("fill")?"True":"False",s=this.getFieldValue("OP");switch(o){case"True":return e+".show_fill_rect("+i+", "+T+", "+E+", "+n+","+s+")\n";case"False":return e+".show_rect("+i+", "+T+", "+E+", "+n+","+s+")\n"}},gC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"length",t.ORDER_ATOMIC);return e+".show_"+this.getFieldValue("direction")+"("+i+", "+T+", "+E+", 1)\n"},BC=function(_,t){return["ON"==this.getFieldValue("ONOFF")?"1":"0",t.ORDER_ATOMIC]},GC=function(_,t){t.definitions_.import_matrix="import matrix";var e=_.getFieldValue("OP");return[t.valueToCode(_,"img",t.ORDER_ATOMIC)+".shift_"+e+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},FC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return t.definitions_.import_ssd1306="import ssd1306",t.definitions_.import_machine="import machine",e+".show_fill("+this.getFieldValue("key")+")\n"},yC=function(_,t){return["matrix.Image."+this.getFieldValue("ANIMATION"),t.ORDER_ATOMIC]},fC=function(_,t){var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"r",t.ORDER_ATOMIC),n="TRUE"==this.getFieldValue("fill")?"True":"False",o=this.getFieldValue("OP");switch(n){case"True":return e+".show_fill_circle("+i+", "+T+", "+E+", "+o+")\n";case"False":return e+".show_circle("+i+", "+T+", "+E+", "+o+")\n"}},bC=function(_,t){var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var i=t.valueToCode(this,"x0",t.ORDER_ATOMIC),T=t.valueToCode(this,"y0",t.ORDER_ATOMIC),E=t.valueToCode(this,"x1",t.ORDER_ATOMIC),n=t.valueToCode(this,"y1",t.ORDER_ATOMIC),o=t.valueToCode(this,"x2",t.ORDER_ATOMIC),s=t.valueToCode(this,"y2",t.ORDER_ATOMIC),O="TRUE"==this.getFieldValue("fill")?"True":"False",I=this.getFieldValue("OP");switch(O){case"True":return e+".show_fill_triangle("+i+", "+T+", "+E+", "+n+", "+o+", "+s+", "+I+")\n";case"False":return e+".show_triangle("+i+", "+T+", "+E+", "+n+", "+o+", "+s+", "+I+")\n"}},xC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_bitmap("+t.valueToCode(this,"START_X",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"START_Y",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"bitmap_name",t.ORDER_ATOMIC)+","+t.valueToCode(this,"WIDTH",t.ORDER_ATOMIC)+","+t.valueToCode(this,"HEIGHT",t.ORDER_ATOMIC)+")\n"},vC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_pixel("+t.valueToCode(this,"POS_X",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"POS_Y",t.ORDER_ATOMIC)+")\n"},XC=function(_,t){var e,i=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),T=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),E=this.getFieldValue("key");return"TM1650"==E?(t.definitions_.import_tm1650="import tm1650",e=i+" = tm1650."+E+"("+T+")\n"):"TM1637"==E&&(t.definitions_.import_tm1637="import tm1637",e=i+" = tm1637."+E+"("+T+")\n"),e},VC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},kC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".shownum("+t.valueToCode(this,"VALUE",t.ORDER_ATOMIC)+")\n"},wC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".showDP("+t.valueToCode(this,"NO",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"},WC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".intensity("+t.valueToCode(this,"VALUE",t.ORDER_ATOMIC)+")\n"},KC=function(_,t){t.definitions_.import_st7789="import st7789";var e=p_.Boards.getSelectedBoardKey().split(":")[2],i="";i=["mpython","mixgo_pe","mixgo_nova"].indexOf(e)>=0?"0x700000":["mixgo_zero"].indexOf(e)>=0?"0xE00000":"0x3A0000";var T=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),E=t.valueToCode(this,"SPISUB",t.ORDER_ATOMIC),n=t.valueToCode(this,"PINCS",t.ORDER_ATOMIC),o=t.valueToCode(this,"PINDC",t.ORDER_ATOMIC);return T+" = st7789.ST7789("+E+","+t.valueToCode(this,"WIDTH",t.ORDER_ATOMIC)+","+t.valueToCode(this,"HEIGHT",t.ORDER_ATOMIC)+",dc_pin="+o+",cs_pin="+n+",rotation="+this.getFieldValue("rotate")+",font_address="+i+")\n"},zC=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=e+".image("+i+",x = "+T+",y = "+E+",size = "+n+",color="+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=e+".image("+i+",x = "+T+",y = "+E+",size = "+n+",color=0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},ZC=function(_,t){var e="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&e)>>8|(64512&e)>>5|(255&e)>>3).toString(16),t.ORDER_ATOMIC]},QC=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),O=this.getFieldValue("center");if("0x"==s.slice(0,2))var I=e+".shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+O+",color="+s+")\n";else{const _=s.match(/\d+/g);var a="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");I=e+".shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+O+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return I},JC=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==n.slice(0,2))var o=e+".frame("+i+",size = "+T+",delay = "+E+",color="+n+")\n";else{const _=n.match(/\d+/g);var s="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");o=e+".frame("+i+",size = "+T+",delay = "+E+",color=0x"+((16252928&s)>>8|(64512&s)>>5|(255&s)>>3).toString(16)+")\n"}return o},qC=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==s.slice(0,2))var O=e+".scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color="+s+")\n";else{const _=s.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O=e+".scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color=0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\n"}return O},jC=function(_,t){return t.definitions_.import_st7789="import st7789",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},$C=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"x1",t.ORDER_ATOMIC),T=t.valueToCode(this,"y1",t.ORDER_ATOMIC),E=t.valueToCode(this,"x2",t.ORDER_ATOMIC),n=t.valueToCode(this,"y2",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=e+".line("+i+", "+T+", "+E+", "+n+", color="+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=e+".line("+i+", "+T+", "+E+", "+n+", color=0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},_c=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),T=this.getFieldValue("key"),E=t.valueToCode(this,"ADDR",t.ORDER_ATOMIC);return t.definitions_.import_i2clcd="import i2clcd",e+" = i2clcd.LCD("+i+",lcd_width="+T+",i2c_addr="+E+")\n"},tc=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",column = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",line = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},ec=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".print("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",column = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",line = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",delay="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},ic=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},Tc=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".clear()\n"},Ec=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),T=t.valueToCode(this,"ADDR",t.ORDER_ATOMIC),E=p_.Boards.getSelectedBoardKey().split(":")[2],n="";return n=["mpython","mixgo_pe","mixgo_nova"].indexOf(E)>=0?"0x700000":["mixgo_zero"].indexOf(E)>=0?"0xE00000":"0x3A0000",t.definitions_.import_oled128x64="import oled128x64",e+" = oled128x64.OLED("+i+",address="+T+",font_address="+n+")\n"},nc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".image("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},oc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".image("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",x = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+")\n"},sc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Oc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",x = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},Ic=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},ac=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},pc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Mc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},Lc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".fill(0)\n"+e+".show()\n"},Rc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},rc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+"))",t.ORDER_ATOMIC]},Sc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".pixel(int("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+"), int("+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+"), "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"+e+".show()\n"},lc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"w",t.ORDER_ATOMIC),n=t.valueToCode(_,"h",t.ORDER_ATOMIC),o=_.getFieldValue("state");return e+"."+_.getFieldValue("shape")+"("+i+", "+T+", "+E+", "+n+", "+o+")\n"+e+".show()\n"},Ac=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"length",t.ORDER_ATOMIC),n=_.getFieldValue("state");return e+"."+("0"==_.getFieldValue("dir_h_v")?"v":"h")+"line("+i+", "+T+", "+E+", "+n+")\n"+e+".show()\n"},Pc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".line("+t.valueToCode(_,"x1",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"y1",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"x2",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"y2",t.ORDER_ATOMIC)+", "+_.getFieldValue("state")+")\n"+e+".show()\n"},Nc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},dc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2],i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),E=this.getFieldValue("center");return"mixgo_zero"==e||"mixgo_nova"==e?(t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft.shows("+i+",space = "+T+",center = "+E+")\n"):(t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.shows("+i+",space = "+T+",center = "+E+")\n")},uc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==e){t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_oled";var i="onboard_oled.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}else{t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix";i="onboard_matrix.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}return i},hc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},mc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==e){t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_oled";var i="onboard_oled.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}else{t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix";i="onboard_matrix.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}return i},Cc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},cc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix",["onboard_matrix."+_.getFieldValue("image"),t.ORDER_ATOMIC]},Hc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix",["onboard_matrix."+_.getFieldValue("image"),t.ORDER_ATOMIC]},Dc=function(_,t){var e={"#000000":"0","#ff0000":"1"};function i(_){let t="";if(_.length%2==1&&(_="0"+_),_.length<8){let t=8-_.length;for(let e=1;e<=t;e++)_="0"+_}for(let e=1;e<=_.length;e++)e%2==0&&e!==_.length?t=t+_[e-1]+",0x":t+=_[e-1];return"0x"+t}let T=[];for(let t=0;t<12;t++){let E="",n=0,o=0;for(let i=0;i<32;i++)i<8?o=7-i:i<16?o=23-i:i<24?o=39-i:i<32&&(o=55-i),n+=Number(e[_.getFieldValue(t+"-"+i)])*Math.pow(2,31-o);E+=i(n.toString(16)),T.unshift(E)}let E=[];for(let _=0;_>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},oH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=this.getFieldValue("center"),O=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==O.slice(0,2))var I="onboard_tft.shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+s+",color="+O+")\n";else{const _=O.match(/\d+/g);var a="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");I="onboard_tft.shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+s+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return I},sH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_tft","onboard_tft.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",color=0xffff)\n"},OH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==n.slice(0,2))var o="onboard_tft.frame("+i+",size = "+T+",delay = "+E+",color="+n+")\n";else{const _=n.match(/\d+/g);var s="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");o="onboard_tft.frame("+i+",size = "+T+",delay = "+E+",color=0x"+((16252928&s)>>8|(64512&s)>>5|(255&s)>>3).toString(16)+")\n"}return o},IH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_tft","onboard_tft.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",color=0xffff)\n"},aH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==s.slice(0,2))var O="onboard_tft.scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color="+s+")\n";else{const _=s.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O="onboard_tft.scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color=0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\n"}return O},pH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"w",t.ORDER_ATOMIC),n=t.valueToCode(_,"h",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),s=_.getFieldValue("shape");if("0x"==o.slice(0,2))var O="onboard_tft."+s+"("+i+", "+T+", "+E+", "+n+", "+o+")\nonboard_tft.show()\n";else{const _=o.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O="onboard_tft."+s+"("+i+", "+T+", "+E+", "+n+", 0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\nonboard_tft.show()\n"}return O},MH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"length",t.ORDER_ATOMIC),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),o=_.getFieldValue("dir_h_v");if("0x"==n.slice(0,2))var s="onboard_tft."+("0"==o?"v":"h")+"line("+i+", "+T+", "+E+", "+n+")\nonboard_tft.show()\n";else{const _=n.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft."+("0"==o?"v":"h")+"line("+i+", "+T+", "+E+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},LH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x1",t.ORDER_ATOMIC),T=t.valueToCode(_,"y1",t.ORDER_ATOMIC),E=t.valueToCode(_,"x2",t.ORDER_ATOMIC),n=t.valueToCode(_,"y2",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s="onboard_tft.line("+i+", "+T+", "+E+", "+n+", "+o+")\nonboard_tft.show()\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft.line("+i+", "+T+", "+E+", "+n+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},RH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},rH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},SH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft",["hex(onboard_tft.pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+")))",t.ORDER_ATOMIC]},lH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==E.slice(0,2))var n="onboard_tft.pixel(int("+i+"), int("+T+"), "+E+")\nonboard_tft.show()\n";else{const _=E.match(/\d+/g);var o="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");n="onboard_tft.pixel(int("+i+"), int("+T+"), 0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return n},AH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";return["onboard_tft.get_brightness()",t.ORDER_ATOMIC]},PH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft.set_brightness("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+")\n"},NH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"VAR",t.ORDER_ASSIGNMENT);if("0x"==i.slice(0,2))var T="onboard_tft.fill("+i+")\nonboard_tft.show()\n";else{const _=i.match(/\d+/g);var E="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");T="onboard_tft.fill(0x"+((16252928&E)>>8|(64512&E)>>5|(255&E)>>3).toString(16)+")\nonboard_tft.show()\n"}return T},dH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock";var i=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=n+"=Clock("+i+","+T+","+E+","+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=n+"=Clock("+i+","+T+","+E+",0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},uH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".set_rtctime()\n"},hH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".set_time("+t.valueToCode(this,"h",t.ORDER_ASSIGNMENT)+","+t.valueToCode(this,"m",t.ORDER_ASSIGNMENT)+","+t.valueToCode(this,"s",t.ORDER_ASSIGNMENT)+")\n"},mH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".draw_clock()\n"},CH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock";var i=t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==T.slice(0,2))var E=i+".clear("+T+")\n";else{const _=T.match(/\d+/g);var n="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");E=i+".clear(0x"+((16252928&n)>>8|(64512&n)>>5|(255&n)>>3).toString(16)+")\n"}return E},cH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"r",t.ORDER_ATOMIC),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),o=_.getFieldValue("shape");if("0x"==n.slice(0,2))var s="onboard_tft.ellipse("+i+", "+T+", "+E+", "+E+", "+n+","+o+")\nonboard_tft.show()\n";else{const _=n.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft.ellipse("+i+", "+T+", "+E+", "+E+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+","+o+")\nonboard_tft.show()\n"}return s},HH=function(_,t){var e=this.getFieldValue("path"),i=this.getFieldValue("module");return t.definitions_["import_"+e+"_"+i]="from "+e+" import "+i,""},DH=function(_,t){var e=this.getFieldValue("module");return t.definitions_["import_"+e]="import "+e,""},YH=function(_,t){for(var e=this.getFieldValue("NAME"),i=new Array(this.itemCount_),T=0;T {\n"+t.statementToCode(this,"do")+"})\n"},YB=function(){return"control.reset()\n"},UB=function(_,t){return"control.waitMicros("+(t.valueToCode(this,"data",t.ORDER_ATOMIC)||p_.Profile.default.serial)+")\n"},gB=function(_,t){return"control.raiseEvent("+(t.valueToCode(this,"system_event_bus_source",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", "+(t.valueToCode(this,"system_event_bus_value",t.ORDER_ATOMIC)||p_.Profile.default.serial)+")\n"},BB=function(_,t){return"control.onEvent("+(t.valueToCode(this,"system_event_bus_source",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", "+(t.valueToCode(this,"system_event_bus_value",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", () => {\n"+t.statementToCode(this,"do")+")\n"},GB=function(_,t){return["control.eventTimestamp()",t.ORDER_ATOMIC]},FB=function(_,t){return["control.eventValue()",t.ORDER_ATOMIC]},yB=function(_,t){return[this.getFieldValue("key"),t.ORDER_ATOMIC]},fB=function(_,t){return[this.getFieldValue("key"),t.ORDER_ATOMIC]},bB=function(_,t){return["control.deviceName()",t.ORDER_ATOMIC]},xB=function(_,t){return["control.deviceSerialNumber()",t.ORDER_ATOMIC]},vB=function(_,t){return"panic("+(t.valueToCode(this,"STATUS_CODE",t.ORDER_ATOMIC)||"1000")+")\n"},XB=function(_,t){switch(t.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",t.ORDER_ATOMIC];case"us":return["time.ticks_us()",t.ORDER_ATOMIC]}},VB=function(){return"while True:\n pass\n"},kB=function(_,t){return t.definitions_.import_mixgo="import mixgo","reset()\n"},wB=function(_,t){return t.definitions_.import_os="import os","os.uname()"},WB=function(_,t){t.definitions_.import_time="import time";var e=t.valueToCode(this,"DELAY_TIME",t.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+e+")\n";case"ms":return"time.sleep_ms("+e+")\n";case"us":return"time.sleep_us("+e+")\n"}},KB=function(_,t){t.definitions_.import_time="import time";var e=t.valueToCode(this,"DELAY_TIME",t.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+e+")\n";case"ms":return"time.sleep_ms("+e+")\n";case"us":return"time.sleep_us("+e+")\n"}},zB=function(_,t){return t.definitions_.import_mixgo="import mixgo",(t.valueToCode(this,"VAR",t.ORDER_NONE)||"None")+".init(period = "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+", mode = Timer."+(t.valueToCode(this,"mode",t.ORDER_NONE)||"None")+", callback = "+(t.valueToCode(this,"callback",t.ORDER_NONE)||"None")+")\n"},ZB=function(_,t){return t.definitions_.import_machine="import machine",(t.valueToCode(this,"VAR",t.ORDER_NONE)||"None")+".init(period = "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(t.valueToCode(this,"callback",t.ORDER_NONE)||"None")+")\n"},QB=function(_,t){return t.definitions_.import_time="import time",["time.ticks_diff("+(t.valueToCode(this,"END",t.ORDER_NONE)||"0")+", "+(t.valueToCode(this,"START",t.ORDER_NONE)||"0")+")",t.ORDER_ATOMIC]},JB=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return t.definitions_.import_machine="import machine",e+" = machine.Timer(0)\n"},qB=function(_,t){return t.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+")\n"},jB=function(_,t){t.definitions_.import_machine="import machine";return"wdt.feed()\n"},$B=function(_,t){t.definitions_.import_machine="import machine";return"machine.reset()\n"},_G=function(_,t){t.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},tG=JB,eG=ZB,iG=QB,TG=WB,EG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},nG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+","+t.valueToCode(this,"day",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},oG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+","+t.valueToCode(this,"hour",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},sG={};sG["MixGo(ESP32, 4M)"]={description:"MicroPython[ESP32 MixGo]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},sG["MixGo PE"]={description:"MicroPython[ESP32 MixGo PE]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin7","pin7"],["pin8","pin8"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm7","pwm7"],["pwm8","pwm8"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"],["pwm33","pwm33"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:p_.Profile.generate(["0-7"]),exlcdv:p_.Profile.generate(["0-4"]),brightness:p_.Profile.generate(["0-9"]),tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},sG["ESP32 Generic"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin11","pin11"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},sG.mPython={description:"MicroPython[ESP32 Generic]",digital_pin:[["p0","33"],["p1","32"],["p2","35"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],digital:[["pin0","pin33"],["pin1","pin32"],["pin2","pin35"],["pin5","pin0"],["pin6","pin16"],["pin7","pin17"],["pin8","pin26"],["pin9","pin25"],["pin11","pin2"],["pin13","pin18"],["pin14","pin19"],["pin15","pin21"],["pin16","pin5"],["pin19","pin22"],["pin20","pin23"]],input_pin:[["p0","33"],["p1","32"],["p2","35"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],output_pin:[["p0","33"],["p1","32"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],pwm_pin:[["p0","33"],["p1","32"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],pwm:[["pwm0","pwm33"],["pwm1","pwm32"],["pwm5","pwm0"],["pwm6","pwm16"],["pwm7","pwm17"],["pwm8","pwm26"],["pwm9","pwm25"],["pwm11","pwm2"],["pwm13","pwm18"],["pwm14","pwm19"],["pwm15","pwm21"],["pwm16","pwm5"],["pwm19","pwm22"],["pwm20","pwm23"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),analog_pin:[["p0","33"],["p1","32"],["p2","35"],["p3","34"],["p4","39"],["p10","36"]],analog:[["adc0","adc33"],["adc1","adc32"],["adc2","adc35"],["adc3","adc34"],["adc4","adc39"],["adc10","adc36"]],dac_pin:[["p8","26"],["p9","25"]],dac:[["dac8","dac26"],["dac9","dac25"]],touch_mpython:[["p","p"],["y","y"],["t","t"],["h","h"],["o","o"],["n","n"]],touch:[["tc0","tc33"],["tc1","tc32"],["tc5","tc0"],["tc11","tc2"],["tc23","tc27"],["tc24","tc14"],["tc25","tc12"],["tc26","tc13"],["tc27","tc15"],["tc28","tc4"]],touch_pin:[["p0","33"],["p1","32"],["p5","0"],["p11","2"],["p23","27"],["p24","14"],["p25","12"],["p26","13"],["p27","15"],["p28","4"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]};const OG=sG,IG=230,aG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital),"PIN"),this.setOutput(!0)}},pG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},MG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},LG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},RG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch_mpython),"PIN"),this.setOutput(!0,Number)}},rG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},SG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},lG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},AG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},PG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},NG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},dG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},uG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},hG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},mG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},CG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},cG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},HG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog),"PIN"),this.setOutput(!0)}},DG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},YG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.dac),"PIN"),this.setOutput(!0)}},UG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},gG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},BG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm),"PIN"),this.setOutput(!0)}},GG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},FG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},yG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch),"PIN"),this.setOutput(!0)}},fG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},bG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},xG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},vG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.imglist),"PIN"),this.setOutput(!0)}},XG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.playlist),"PIN"),this.setOutput(!0)}},VG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},kG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},wG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},WG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},KG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},zG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},ZG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},QG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},JG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},qG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},jG={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},$G={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.one_more),"PIN"),this.setOutput(!0)}},_F={init:function(){this.setColour(IG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},tF=function(_,t){return[this.getFieldValue("PIN"),t.ORDER_ATOMIC]},eF=tF,iF=tF,TF=tF,EF=tF,nF=tF,oF=tF,sF=tF,OF=tF,IF=tF,aF=tF,pF=tF,MF=tF,LF=tF,RF=tF,rF=tF,SF=tF,lF=tF,AF=tF,PF=tF,NF=tF,dF=tF,uF=tF,hF=tF,mF=tF,CF=tF,cF=tF,HF=tF,DF=tF,YF=tF,UF=tF,gF=tF,BF=tF,GF=tF,FF=tF,yF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"是数字",TEXT_IS_ALPHA:"是字母",TEXT_IS_ALNUM:"是数字和字母的组合",TEXT_LIST_START:"初始化列表 [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"初始化元组 (",TEXT_TUPLE_END:")",TEXT_DICT_START:"初始化字典 {",TEXT_DICT_END:"}",TEXT_SET_START:"初始化集合 {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",ADD_COMMENT:"添加注释",CHANGE_VALUE_TITLE:"更改值:",CLEAN_UP:"整理块",COLLAPSE_ALL:"折叠块",COLLAPSE_BLOCK:"折叠块",COLOUR_BLEND_COLOUR1:"颜色1",COLOUR_BLEND_COLOUR2:"颜色2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"比例",COLOUR_BLEND_TITLE:"混合",COLOUR_BLEND_TOOLTIP:"用一个给定的比率(0.0-1.0)混合两种颜色。",COLOUR_PICKER_HELPURL:"https://zh.wikipedia.org/wiki/颜色",COLOUR_PICKER_TOOLTIP:"从调色板中选择一种颜色。",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"随机颜色",COLOUR_RANDOM_TOOLTIP:"随机选择一种颜色。",COLOUR_RGB_BLUE:"蓝色",COLOUR_RGB_GREEN:"绿色",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"红色",COLOUR_RGB_TITLE:"颜色",COLOUR_RGB_TOOLTIP:"通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须介于0和100之间。",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"中断循环",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"继续下一次循环",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"中断包含它的循环。",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"跳过这个循环的剩余部分,并继续下一次迭代。",CONTROLS_FLOW_STATEMENTS_WARNING:"警告:此块仅可用于在一个循环内。",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"为每个项目 %1 在列表中 %2",CONTROLS_FOREACH_TOOLTIP:"遍历每个列表中的项目,将变量“%1”设定到该项中,然后执行某些语句。",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"使用 %1 从范围 %2 到 %3 每隔 %4",CONTROLS_FOR_TOOLTIP:"从起始数到结尾数中取出变量“%1”的值,按指定的时间间隔,执行指定的块。",CONTROLS_IF_ELSEIF_TOOLTIP:"在if语句块中增加一个条件。",CONTROLS_IF_ELSE_TOOLTIP:"添加一个最终的,包括所有情况的节到if块中。",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",CONTROLS_IF_IF_TOOLTIP:"增加、删除或重新排列各节来重新配置“if”块。",CONTROLS_IF_MSG_ELSE:"否则",CONTROLS_IF_MSG_ELSEIF:"否则如果",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",CONTROLS_IF_MSG_IF:"如果",CONTROLS_IF_TOOLTIP_1:"如果值为真,执行一些语句。",CONTROLS_IF_TOOLTIP_2:"如果值为真,则执行第一块语句。否则,则执行第二块语句。",CONTROLS_IF_TOOLTIP_3:"如果第一个值为真,则执行第一块的语句。否则,如果第二个值为真,则执行第二块的语句。",CONTROLS_IF_TOOLTIP_4:"如果第一个值为真,则执行第一块对语句。否则,如果第二个值为真,则执行语句的第二块。如果没有值为真,则执行最后一块的语句。",CONTROLS_REPEAT_FOREVER:"一直重复",CONTROLS_REPEAT_FOREVER_TOOLTIP:"一直执行一些语句。",CONTROLS_REPEAT_HELPURL:"https://zh.wikipedia.org/wiki/For循环",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"重复 %1 次",CONTROLS_REPEAT_TOOLTIP:"多次执行一些语句。",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"重复直到",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"重复当",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"只要值为假,执行一些语句。",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"只要值为真,执行一些语句。",DELETE_ALL_BLOCKS:"删除所有%1块吗?",DELETE_BLOCK:"删除块",DELETE_VARIABLE:"删除“%1”变量",DELETE_VARIABLE_CONFIRMATION:"删除“%2”变量的%1种用途么?",DELETE_X_BLOCKS:"删除块",DISABLE_BLOCK:"禁用块",DUPLICATE_BLOCK:"复制",ENABLE_BLOCK:"启用块",EXPAND_ALL:"展开块",EXPAND_BLOCK:"展开块",EXTERNAL_INPUTS:"多行输入",HELP:"帮助",INLINE_INPUTS:"单行输入",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"创建空列表",TUPLE_CREATE_EMPTY_TITLE:"创建空元组",DICT_CREATE_EMPTY_TITLE:"创建空字典",SET_CREATE_EMPTY_TITLE:"创建空集合",LISTS_CREATE_EMPTY_TOOLTIP:"返回一个列表,长度为 0,不包含任何数据记录",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"列表",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"元组",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"字典",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"集合",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个列表块。",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个元组块。",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个字典块。",SET_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个集合块。",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"初始化列表",TUPLE_CREATE_WITH_INPUT_WITH:"初始化元组",DICT_CREATE_WITH_INPUT_WITH:"初始化字典",SET_CREATE_WITH_INPUT_WITH:"初始化集合",LISTS_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到列表中。",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到元组中。",DICT_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到字典中。",SET_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到集合中。",LISTS_CREATE_WITH_TOOLTIP:"建立一个具有任意数量项目的列表。",LISTS_GET_INDEX_FIRST:"第一",LISTS_GET_INDEX_FROM_END:"倒数第",LISTS_GET_INDEX_FROM_START:"第",LISTS_GET_INDEX_GET:"获得",LISTS_GET_INDEX_GET_REMOVE:"取出并移除",LISTS_GET_INDEX_LAST:"最后",LISTS_GET_INDEX_RANDOM:"随机",LISTS_GET_INDEX_REMOVE:"移除",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"在列表 %1 中移除 %2 项",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"返回列表中的第一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_FROM:"返回在列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"返回列表中的最后一项。",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"随机返回列表中的一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"移除并返回列表中的第一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM:"移除并返回列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"移除并返回列表中的最后一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"移除并返回列表中的一个随机项目中。",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"移除列表中的第一项",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM:"移除在列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"移除列表中的最后一项",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"删除列表中的一个随机的项。",LISTS_GET_SUBLIST_END_FROM_END:"到倒数第#",LISTS_GET_SUBLIST_END_FROM_START:"到#",LISTS_GET_SUBLIST_END_LAST:"到最后",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"从头获得子列表",LISTS_GET_SUBLIST_START_FROM_END:"从倒数#取得子列表",LISTS_GET_SUBLIST_START_FROM_START:"从#取得子列表",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"复制列表中指定的部分。",LISTS_INDEX_FROM_END_TOOLTIP:"%1是最后一项。",LISTS_INDEX_FROM_START_TOOLTIP:"%1是第一个项目。",LISTS_INDEX_OF_FIRST:"找出第一个项出现",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"找出最后一个项出现",LISTS_INDEX_OF_TOOLTIP:"返回在列表中的第一/最后一个匹配项的索引值。如果找不到项目则返回0",LISTS_INLIST:"在列表中",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1是空的",LISTS_ISEMPTY_TOOLTIP:"如果改列表为空,则返回真。",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"%1的长度",LISTS_LENGTH_TOOLTIP:"返回列表的长度。",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"建立列表 项 %1 重复 %2 次",LISTS_REPEAT_TOOLTIP:"建立包含指定重复次数的值的列表。",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"为",LISTS_SET_INDEX_INSERT:"插入在",LISTS_SET_INDEX_SET:"设置",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"在列表的起始处添加该项。",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM:"插入在列表中指定位置的项。",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"将该项追加到列表的末尾。",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"在列表中随机插入项。",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"设置列表中的第一个项目。",LISTS_SET_INDEX_TOOLTIP_SET_FROM:"设置在列表中指定位置的项。",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"设置列表中的最后一项。",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"设置列表中一个随机的项目。",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"升序",LISTS_SORT_ORDER_DESCENDING:"降序",LISTS_SORT_TITLE:"排序%1 %2 %3",LISTS_SORT_TOOLTIP:"排序一个列表的拷贝。",LISTS_SORT_TYPE_IGNORECASE:"按字母排序,忽略大小写",LISTS_SORT_TYPE_NUMERIC:"按数字排序",LISTS_SORT_TYPE_TEXT:"按字母排序",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"从文本制作列表",LISTS_SPLIT_TEXT_FROM_LIST:"从列表组合文本",LISTS_SPLIT_TOOLTIP_JOIN:"加入文本列表至一个文本,由分隔符分隔。",LISTS_SPLIT_TOOLTIP_SPLIT:"拆分文本到文本列表,按每个分隔符拆分。",LISTS_SPLIT_WITH_DELIMITER:"用分隔符",LOGIC_BOOLEAN_FALSE:"假",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"返回真或假。",LOGIC_BOOLEAN_TRUE:"真",LOGIC_COMPARE_HELPURL:"https://zh.wikipedia.org/wiki/不等",LOGIC_COMPARE_TOOLTIP_EQ:"如果两个输入结果相等,则返回真。",LOGIC_COMPARE_TOOLTIP_GT:"如果第一个输入结果比第二个大,则返回真。",LOGIC_COMPARE_TOOLTIP_GTE:"如果第一个输入结果大于或等于第二个输入结果,则返回真。",LOGIC_COMPARE_TOOLTIP_LT:"如果第一个输入结果比第二个小,则返回真。",LOGIC_COMPARE_TOOLTIP_LTE:"如果第一个输入结果小于或等于第二个输入结果,则返回真。",LOGIC_COMPARE_TOOLTIP_NEQ:"如果两个输入结果不相等,则返回真。",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"非%1",LOGIC_NEGATE_TOOLTIP:"如果输入结果为假,则返回真;如果输入结果为真,则返回假。",LOGIC_NULL:"空",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"返回空值。",LOGIC_OPERATION_AND:"和",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"或",LOGIC_OPERATION_TOOLTIP_AND:"如果两个输入结果都为真,则返回真。",LOGIC_OPERATION_TOOLTIP_OR:"如果至少有一个输入结果为真,则返回真。",LOGIC_TERNARY_CONDITION:"测试",LOGIC_TERNARY_HELPURL:"https://zh.wikipedia.org/wiki/条件运算符",LOGIC_TERNARY_IF_FALSE:"如果为假",LOGIC_TERNARY_IF_TRUE:"如果为真",LOGIC_TERNARY_TOOLTIP:"检查“test”中的条件。如果条件为真,则返回“if true”的值,否则,则返回“if false”的值。",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://zh.wikipedia.org/wiki/算术",MATH_ARITHMETIC_TOOLTIP_ADD:"返回两个数字的和。",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"返回两个数字的商。",MATH_ARITHMETIC_TOOLTIP_MINUS:"返回两个数字的区别。",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"返回两个数字的乘积。",MATH_ARITHMETIC_TOOLTIP_POWER:"返回第一个数的第二个数次幂。",MATH_CHANGE_HELPURL:"https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95",MATH_CHANGE_TITLE:"将变量 %1 的值增加 %2",MATH_CHANGE_TOOLTIP:"将一个数添加到变量“%1”。",MATH_CONSTANT_HELPURL:"https://zh.wikipedia.org/wiki/数学常数",MATH_CONSTANT_TOOLTIP:"返回一个常见常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(无穷大)。",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"限制数字 %1 介于 (低) %2 到 (高) %3",MATH_CONSTRAIN_TOOLTIP:"限制数字介于两个指定的数字之间",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"强制转换数据类型",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"%1 ÷ %2 商的整数部分",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"可被整除",MATH_IS_EVEN:"是偶数",MATH_IS_NEGATIVE:"为负",MATH_IS_ODD:"是奇数",MATH_IS_POSITIVE:"为正",MATH_IS_PRIME:"是质数",MATH_IS_TOOLTIP:"如果数字是偶数、奇数、非负整数、正数、负数或如果它可被某数字整除,则返回真或假。",MATH_IS_WHOLE:"为整数",MATH_MODULO_HELPURL:"https://zh.wikipedia.org/wiki/模除",MATH_MODULO_TITLE:"%1 ÷ %2 的余数",MATH_MODULO_TOOLTIP:"返回这两个数字相除后的余数。",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"对数字进行位运算",MATH_NUMBER_HELPURL:"https://zh.wikipedia.org/wiki/数",MATH_NUMBER_TOOLTIP:"一个数字。",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"列表中的平均数",MATH_ONLIST_OPERATOR_MAX:"列表中的最大值",MATH_ONLIST_OPERATOR_MEDIAN:"列表中位数",MATH_ONLIST_OPERATOR_MIN:"列表中的最小值",MATH_ONLIST_OPERATOR_MODE:"列表模式",MATH_ONLIST_OPERATOR_RANDOM:"列表的随机项",MATH_ONLIST_OPERATOR_STD_DEV:"列表中的标准差",MATH_ONLIST_OPERATOR_SUM:"列表中的数的总和",MATH_ONLIST_TOOLTIP_AVERAGE:"返回列表中的数值的平均值。",MATH_ONLIST_TOOLTIP_MAX:"返回列表中最大数。",MATH_ONLIST_TOOLTIP_MEDIAN:"返回列表中的中位数。",MATH_ONLIST_TOOLTIP_MIN:"返回列表中最小数。",MATH_ONLIST_TOOLTIP_MODE:"返回列表中的最常见的项的列表。",MATH_ONLIST_TOOLTIP_RANDOM:"从列表中返回一个随机的元素。",MATH_ONLIST_TOOLTIP_STD_DEV:"返回列表的标准偏差。",MATH_ONLIST_TOOLTIP_SUM:"返回列表中的所有数字的和。",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://zh.wikipedia.org/wiki/随机数生成器",MATH_RANDOM_FLOAT_TITLE_RANDOM:"随机小数",MATH_RANDOM_FLOAT_TOOLTIP:"返回介于(包含)0.0到1.0之间的随机数。",MATH_RANDOM_INT_HELPURL:"https://zh.wikipedia.org/wiki/随机数生成器",MATH_RANDOM_INT_TITLE:"从 %1 到 %2 之间的随机整数",MATH_RANDOM_INT_TOOLTIP:"返回两个指定的范围(含)之间的随机整数。",MATH_ROUND_HELPURL:"https://zh.wikipedia.org/wiki/数值修约",MATH_ROUND_OPERATOR_ROUND:"四舍五入",MATH_ROUND_OPERATOR_ROUNDDOWN:"向下舍入",MATH_ROUND_OPERATOR_ROUNDUP:"向上舍入",MATH_ROUND_TOOLTIP:"数字向上或向下舍入。",MATH_SINGLE_HELPURL:"https://zh.wikipedia.org/wiki/平方根",MATH_SINGLE_OP_ABSOLUTE:"绝对",MATH_SINGLE_OP_ROOT:"平方根",MATH_SINGLE_TOOLTIP_ABS:"返回一个数的绝对值。",MATH_SINGLE_TOOLTIP_EXP:"返回数的e次幂。",MATH_SINGLE_TOOLTIP_LN:"返回一个数的自然对数。",MATH_SINGLE_TOOLTIP_LOG10:"返回数字的对数。",MATH_SINGLE_TOOLTIP_NEG:"返回数的逻辑非。",MATH_SINGLE_TOOLTIP_POW10:"返回数的10次幂。",MATH_SINGLE_TOOLTIP_ROOT:"返回数的平方根。",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://zh.wikipedia.org/wiki/三角函数",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"返回一个数的反余弦值。",MATH_TRIG_TOOLTIP_ASIN:"返回一个数的反正弦值。",MATH_TRIG_TOOLTIP_ATAN:"返回指定角度的反正切值。",MATH_TRIG_TOOLTIP_COS:"返回指定角度的余弦值(非弧度)。",MATH_TRIG_TOOLTIP_SIN:"返回指定角度的正弦值(非弧度)。",MATH_TRIG_TOOLTIP_TAN:"返回指定角度的正切值(非弧度)。",NEW_VARIABLE:"创建变量...",NEW_VARIABLE_TITLE:"新变量的名称:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"允许声明",PROCEDURES_BEFORE_PARAMS:"参数:",PROCEDURES_CALLNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLNORETURN_TOOLTIP:"运行用户定义的函数“%1”。",PROCEDURES_CALLRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLRETURN_TOOLTIP:"运行用户定义的函数“%1”,并使用它的输出值。",PROCEDURES_CALL_BEFORE_PARAMS:"与:",PROCEDURES_CREATE_DO:"创建“%1”",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"定义函数",PROCEDURES_DEFNORETURN_TOOLTIP:"创建一个不带输出值的函数。",PROCEDURES_DEFRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFRETURN_RETURN:"返回",PROCEDURES_DEFRETURN_TOOLTIP:"创建一个有输出值的函数。",PROCEDURES_DEF_DUPLICATE_WARNING:"警告: 此函数具有重复参数。",PROCEDURES_HIGHLIGHT_DEF:"突出显示函数定义",PROCEDURES_IFRETURN_HELPURL:"http://c2.com/cgi/wiki?GuardClause",PROCEDURES_IFRETURN_TOOLTIP:"如果值为真,则返回第二个值。",PROCEDURES_IFRETURN_WARNING:"警告: 仅在定义函数内可使用此块。",PROCEDURES_MUTATORARG_TITLE:"输入名称:",PROCEDURES_MUTATORARG_TOOLTIP:"添加函数输入。",PROCEDURES_MUTATORCONTAINER_TITLE:"输入",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"添加、删除或重新排此函数的输入。",REDO:"重做",REMOVE_COMMENT:"删除注释",RENAME_VARIABLE:"重命名变量...",RENAME_VARIABLE_TITLE:"将所有“%1”变量重命名为:",TEXT_APPEND_APPENDTEXT:"追加文本",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"",TEXT_APPEND_TOOLTIP:"将一些文本追加到变量“%1”。",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"转为小写",TEXT_CHANGECASE_OPERATOR_TITLECASE:"转为首字母大写",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"转为大写",TEXT_CHANGECASE_TOOLTIP:"使用不同的大小写复制这段文字。",TEXT_CHARAT_FIRST:"获得第一个字符",TEXT_CHARAT_FROM_END:"获得倒数第#个字符",TEXT_CHARAT_FROM_START:"获得字符#",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"从文本",TEXT_CHARAT_LAST:"获得最后一个字符",TEXT_CHARAT_RANDOM:"获取随机的字母",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"返回位于指定位置的字母。",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"将一个项添加到文本中。",TEXT_CREATE_JOIN_TITLE_JOIN:"加入",TEXT_CREATE_JOIN_TOOLTIP:"添加、移除或重新排列各节来重新配置这个文本块。",TEXT_GET_SUBSTRING_END_FROM_END:"到倒数第#个字符",TEXT_GET_SUBSTRING_END_FROM_START:"到字符#",TEXT_GET_SUBSTRING_END_LAST:"到最后一个字符",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"从文本",TEXT_GET_SUBSTRING_START_FIRST:"取得一段字串自第一个字符",TEXT_GET_SUBSTRING_START_FROM_END:"取得一段字串自倒数第#个字符",TEXT_GET_SUBSTRING_START_FROM_START:"取得一段字串自#",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"返回指定的部分文本。",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"在文本",TEXT_INDEXOF_OPERATOR_FIRST:"中查找 最先 出现",TEXT_INDEXOF_OPERATOR_LAST:"中查找 最后 出现",TEXT_INDEXOF_TAIL:"的位置",TEXT_INDEXOF_TOOLTIP:"返回在第二个字串中的第一/最后一个匹配项的索引值。如果未找到则返回%1。",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1是空的",TEXT_ISEMPTY_TOOLTIP:"如果提供的文本为空,则返回真。",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"转为文本",TEXT_JOIN_TOOLTIP:"通过串起任意数量的项以建立一段文字。",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"%1的长度",TEXT_LENGTH_TOOLTIP:"返回提供文本的字母数(包括空格)。",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"打印%1",MPYTHON_INPUT_MESSAGE0:"输入%1",TEXT_PRINT_TOOLTIP:"打印指定的文字、数字或其他值。",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"提示用户输入数字。",TEXT_PROMPT_TOOLTIP_TEXT:"提示用户输入一些文本。",TEXT_PROMPT_TYPE_NUMBER:"输入数字并显示提示消息",TEXT_PROMPT_TYPE_TEXT:"输入数字并显示提示消息",TEXT_TEXT_HELPURL:"https://zh.wikipedia.org/wiki/字符串",TEXT_TEXT_TOOLTIP:"一个字母、单词或一行文本。",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"消除两侧空格",TEXT_TRIM_OPERATOR_LEFT:"消除左侧空格",TEXT_TRIM_OPERATOR_RIGHT:"消除右侧空格",TEXT_TRIM_TOOLTIP:"复制这段文字的同时删除两端多余的空格。",TODAY:"今天",UNDO:"撤销",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"创建“设定%1”",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"返回此变量的值。",VARIABLES_SET:"将变量 %1 设定为 %2",VARIABLES_SET_CREATE_GET:"创建“获得%1”",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"设置此变量,以使它和输入值相等。",VARIABLE_ALREADY_EXISTS:"已存在名为“%1”的变量。"};yF.PROCEDURES_DEFRETURN_TITLE=yF.PROCEDURES_DEFNORETURN_TITLE,yF.CONTROLS_IF_IF_TITLE_IF=yF.CONTROLS_IF_MSG_IF,yF.CONTROLS_WHILEUNTIL_INPUT_DO=yF.CONTROLS_REPEAT_INPUT_DO,yF.CONTROLS_IF_MSG_THEN=yF.CONTROLS_REPEAT_INPUT_DO,yF.TRY_EXCEPT_TRY="try",yF.CONTROLS_IF_ELSE_TITLE_ELSE=yF.CONTROLS_IF_MSG_ELSE,yF.CONTROLS_IF_ELSE_TITLE_ELSE=yF.CONTROLS_IF_MSG_ELSE,yF.PROCEDURES_DEFRETURN_PROCEDURE=yF.PROCEDURES_DEFNORETURN_PROCEDURE,yF.LISTS_GET_SUBLIST_INPUT_IN_LIST=yF.LISTS_INLIST,yF.LISTS_GET_INDEX_INPUT_IN_LIST=yF.LISTS_INLIST,yF.PROCEDURES_DEFRETURN_DO=yF.PROCEDURES_DEFNORETURN_DO,yF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=yF.CONTROLS_IF_MSG_ELSEIF,yF.LISTS_GET_INDEX_HELPURL=yF.LISTS_INDEX_OF_HELPURL,yF.CONTROLS_FOREACH_INPUT_DO=yF.CONTROLS_REPEAT_INPUT_DO,yF.LISTS_SET_INDEX_INPUT_IN_LIST=yF.LISTS_INLIST,yF.CONTROLS_FOR_INPUT_DO=yF.CONTROLS_REPEAT_INPUT_DO,yF.LISTS_CREATE_WITH_ITEM_TITLE=yF.VARIABLES_DEFAULT_NAME,yF.TUPLE_CREATE_WITH_ITEM_TITLE=yF.VARIABLES_DEFAULT_NAME,yF.DICT_CREATE_WITH_ITEM_TITLE=yF.VARIABLES_DEFAULT_NAME,yF.SET_CREATE_WITH_ITEM_TITLE=yF.VARIABLES_DEFAULT_NAME,yF.TEXT_APPEND_VARIABLE=yF.VARIABLES_DEFAULT_NAME,yF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=yF.VARIABLES_DEFAULT_NAME,yF.MATH_CHANGE_TITLE_ITEM=yF.VARIABLES_DEFAULT_NAME,yF.LISTS_INDEX_OF_INPUT_IN_LIST=yF.LISTS_INLIST,yF.PROCEDURES_DEFRETURN_COMMENT=yF.PROCEDURES_DEFNORETURN_COMMENT,yF.MPYTHON_MAIN_HELPURL="",yF.MPYTHON_MAIN_TOOLTIP="",yF.MPYTHON_MAIN_MESSAGE0="主程序",yF.MPYTHON_OPEN="开启",yF.MPYTHON_CLOSE="关闭",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT="左移",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT="右移",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_UP="上移",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN="下移",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE="数字反转",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻转",yF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="线性极",yF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="对数极",yF.MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE="灰度",yF.MPYTHON_AI_SENSOR_PATTERN_COLOR="彩色",yF.MPYTHON_AI_SENSOR_ENABLE_START="开始抓取图像",yF.MPYTHON_AI_SENSOR_ENABLE_STOP="停止抓取图像",yF.MPYTHON_AI_SENSOR_LEVEL_MI_H="水平镜像",yF.MPYTHON_AI_SENSOR_LEVEL_MI_V="垂直翻转",yF.MPYTHON_AI_SENSOR_SETS_CONTRAST="对比度",yF.MPYTHON_AI_SENSOR_SETS_BRIGHTNESS="亮度",yF.MPYTHON_AI_SENSOR_SETS_SATURATION="饱和度",yF.MPYTHON_AI2_FACE_YOLO="人脸识别",yF.MPYTHON_AI2_CLASS_20_YOLO="20类识别",yF.MPYTHON_AI2_MNIST_NET="数字识别",yF.MPYTHON_AI2_PHOTOGRAPH_FACE_YOLO="人脸",yF.MPYTHON_AI2_PHOTOGRAPH_CLASS_20_YOLO="20类",yF.MPYTHON_AI_TRACE_COLOR_RECTANGLE="矩形",yF.MPYTHON_AI_TRACE_COLOR_CROSS="十字",yF.TEXT_APPEND_TEXT_HELPURL="",yF.TEXT_APPEND_TEXT_TOOLTIP="",yF.TEXT_APPEND_TEXT_MESSAGE0="%1 追加文本 %2",yF.CHINA_CITY_MESSAGE0="%1 %2",yF.CHINA_CITY_TOWN_MESSAGE0="%1 %2 %3 返回 %4",yF.CHINA_CITY_CNNAME="中文简称",yF.CHINA_CITY_PINYIN="拼音",yF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_1="简体中文",yF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_2="正體中文",yF.MPYTHON_SENIVERSE_CITY_WEATHER_HELPURL="",yF.MPYTHON_SENIVERSE_CITY_WEATHER_TOOLTIP="",yF.MPYTHON_SENIVERSE_CITY_WEATHER_MESSAGE0="[心知天气] %1 信息 %2 地理位置 %3 API私钥 %4 %5 语言 %6 %7 温度单位 %8",yF.MPYTHON_SENIVERSE_WEATHER_API_1="天气实况",yF.MPYTHON_SENIVERSE_WEATHER_API_2="3天天气预报",yF.MPYTHON_SENIVERSE_WEATHER_API_3="6项生活指数",yF.MPYTHON_SENIVERSE_WEATHER_UNIT_1="摄氏度",yF.MPYTHON_SENIVERSE_WEATHER_UNIT_2="华氏度",yF.MPYTHON_DEFINE_SENIVERSE_WEATHER_HELPURL="",yF.MPYTHON_DEFINE_SENIVERSE_WEATHER_TOOLTIP="",yF.MPYTHON_DEFINE_SENIVERSE_WEATHER_MESSAGE0="设定 %1 为 %2",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_HELPURL="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_TOOLTIP="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_MESSAGE0="%1 [心知天气] 通用字段 %2",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_HELPURL="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_TOOLTIP="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_MESSAGE0="%1 [心知天气] 天气实况 %2",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_HELPURL="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_TOOLTIP="风向角度,范围0~360\n风速,单位km/h(当unit=c时)、mph(当unit=f时)",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_MESSAGE0="%1 [心知天气] 3天天气预报 %2 的 %3",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_HELPURL="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_TOOLTIP="",yF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_MESSAGE0="%1 [心知天气] 6项生活指数 %2",yF.MPYTHON_SENIVERSE_WEATHER_city_name="城市名称",yF.MPYTHON_SENIVERSE_WEATHER_city_id="城市ID",yF.MPYTHON_SENIVERSE_WEATHER_country="国家代码",yF.MPYTHON_SENIVERSE_WEATHER_path="行政归属",yF.MPYTHON_SENIVERSE_WEATHER_timezone="时区",yF.MPYTHON_SENIVERSE_WEATHER_timezone_offset="UTC偏移量",yF.MPYTHON_SENIVERSE_WEATHER_last_update_date="数据更新日期",yF.MPYTHON_SENIVERSE_WEATHER_last_update="数据更新时间",yF.MPYTHON_SENIVERSE_WEATHER_object="原始字典对象",yF.MPYTHON_SENIVERSE_WEATHER_text="天气现象",yF.MPYTHON_SENIVERSE_WEATHER_code="天气现象代码",yF.MPYTHON_SENIVERSE_WEATHER_temperature="温度",yF.MPYTHON_SENIVERSE_WEATHER_today="今天",yF.MPYTHON_SENIVERSE_WEATHER_tomorrow="明天",yF.MPYTHON_SENIVERSE_WEATHER_the_day_after_tomorrow="后天",yF.MPYTHON_SENIVERSE_WEATHER_date="日期",yF.MPYTHON_SENIVERSE_WEATHER_text_day="白天天气现象",yF.MPYTHON_SENIVERSE_WEATHER_code_day="白天天气现象代码",yF.MPYTHON_SENIVERSE_WEATHER_text_night="晚间天气现象",yF.MPYTHON_SENIVERSE_WEATHER_code_night="晚间天气现象代码",yF.MPYTHON_SENIVERSE_WEATHER_high="当天最高温度",yF.MPYTHON_SENIVERSE_WEATHER_low="当天最低温度",yF.MPYTHON_SENIVERSE_WEATHER_wind_direction="风向",yF.MPYTHON_SENIVERSE_WEATHER_wind_direction_degree="风向角度",yF.MPYTHON_SENIVERSE_WEATHER_wind_speed="风速",yF.MPYTHON_SENIVERSE_WEATHER_wind_scale="风力等级",yF.MPYTHON_SENIVERSE_WEATHER_car_washing="洗车指数",yF.MPYTHON_SENIVERSE_WEATHER_dressing="穿衣指数",yF.MPYTHON_SENIVERSE_WEATHER_flu="感冒指数",yF.MPYTHON_SENIVERSE_WEATHER_sport="运动指数",yF.MPYTHON_SENIVERSE_WEATHER_travel="旅游指数",yF.MPYTHON_SENIVERSE_WEATHER_uv="紫外线指数",yF.MPYTHON_RED="红",yF.MPYTHON_GREEN="绿",yF.MPYTHON_BLUE="蓝",yF.MPYTHON_BLUEBIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0="I2C射频卡 读取电子钱包 数据",yF.MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP="读取块数据,长度16字节",yF.MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0="I2C射频卡 写入电子钱包 数据%1",yF.MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP="写入块数据,长度16字节",yF.MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0="I2C射频卡 给电子钱包%1 金额%2",yF.MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP="",yF.MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0="充值",yF.MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0="扣费",yF.MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0="I2C射频卡 获取电子钱包余额",yF.MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP="",yF.MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0="I2C射频卡 获取序列号",yF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP="",yF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0="I2C射频卡 初始化电子钱包",yF.MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP="",yF.MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0="I2C射频卡 扫描",yF.MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP="",yF.MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",yF.MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0="I2C超声波",yF.MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP="",yF.MPYTHON_BLUEBIT_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0="%1 被触发 引脚%2",yF.MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP="",yF.MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0="%1 模拟值 引脚%2",yF.MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP="",yF.MPYTHON_BLUEBIT_READ_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0="设置LED灯 输出%1 引脚%2",yF.MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP="",yF.MPYTHON_BLUEBIT_SET_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0="循迹传感器 检测为黑 引脚%1",yF.MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP="",yF.MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_SET_TRUE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0="打开 %1 引脚 %2",yF.MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP="",yF.MPYTHON_BLUEBIT_SET_FALSE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0="关闭 %1 引脚 %2",yF.MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP="",yF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP="",yF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0="打开录放器 %1 %2 REC %3 PLAY %4",yF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP="",yF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0="关闭录放器 %1 REC %2 PLAY %3",yF.MPYTHON_BLUEBIT_VOICE_RECORD_PLAY="播放",yF.MPYTHON_BLUEBIT_VOICE_RECORD_REC="录音",yF.MPYTHON_BLUEBIT_IR_RECEIVE="红外探测",yF.MPYTHON_BLUEBIT_SOUND="麦克风",yF.MPYTHON_BLUEBIT_LINE_FOLLOWER="循迹",yF.MPYTHON_BLUEBIT_VIBRATION="震动",yF.MPYTHON_BLUEBIT_RFID="射频卡",yF.MPYTHON_BLUEBIT_FINGERPRINT_SCANNER="指纹",yF.MPYTHON_BLUEBIT_PIR="人体感应",yF.MPYTHON_BLUEBIT_MAGNETIC="门磁开关",yF.MPYTHON_BLUEBIT_BUTTON="按键",yF.MPYTHON_BLUEBIT_RELAY="继电器",yF.MPYTHON_BLUEBIT_LIMIT_SWITCH="限位开关",yF.MPYTHON_BLUEBIT_FAN="风扇",yF.MPYTHON_BLUEBIT_LASER="激光",yF.MPYTHON_BLUEBIT_NTC_TEMP="热敏电阻",yF.MPYTHON_BLUEBIT_WATER="水位",yF.MPYTHON_BLUEBIT_SOIL_MOISTURE="土壤湿度",yF.MPYTHON_BLUEBIT_ROTATE_DIMMER="旋钮电位器",yF.MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER="直滑电位器",yF.MPYTHON_BLUEBIT_ANALOG_LIGHT="模拟光线",yF.MPYTHON_BLUEBIT_LM35_TEMP="LM35温度",yF.MPYTHON_BLUEBIT_SMOKE="烟雾",yF.MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE="正转",yF.MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE="反转",yF.MPYTHON_BLUEBIT_READ_SOIL_HELPURL="",yF.MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP="新的土壤湿度",yF.MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0="土壤湿度(新)%1",yF.MPYTHON_BLUEBIT_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP="速度:-100~100 映射至 -1023~1023",yF.MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0="打开直流电机 %1 速度 %2 引脚AIN1 %3 引脚AIN2 %4",yF.MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP="",yF.MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0="停止直流电机 %1 引脚AIN1 %2 引脚AIN2 %3",yF.MPYTHON_BLUEBIT_SET_FAN_HELPURL="",yF.MPYTHON_BLUEBIT_SET_FAN_TOOLTIP="",yF.MPYTHON_BLUEBIT_SET_FAN_MESSAGE0="拓展板 打开风扇 %1",yF.MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL="",yF.MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP="",yF.MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0="拓展板 关闭风扇 %1",yF.MPYTHON_BLUEBIT_4BUTTON_HELPURL="http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",yF.MPYTHON_BLUEBIT_4BUTTON_TOOLTIP="",yF.MPYTHON_BLUEBIT_4BUTTON_MESSAGE0="四向按键模块 引脚 %1 按键 %2 被按下",yF.BLUE="A",yF.GREEN="B",yF.RED="C",yF.YELLOW="D",yF.MPYTHON_BLUEBIT_JOYSTICK_HELPURL="",yF.MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP="",yF.MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0="摇杆 引脚A0 %1 引脚A1 %2 %3 轴的值",yF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL="",yF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP="速度:0~100",yF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0="拓展板 打开直流电机 %1 %2 速度 %3",yF.MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL="",yF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP="速度:0~100",yF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0="拓展板 关闭直流电机",yF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL="",yF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP="速度:-1023~1023",yF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0="编码电机 模式 %1 拨码 %2 M1速度 %3 M2速度 %4",yF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL="",yF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP="停止编码电机转动",yF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0="停止编码电机转动 %1",yF.MPYTHON_BLUEBIT_HUM_TEM_HELPURL="",yF.MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP="",yF.MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0="I2C %1",yF.MPYTHON_BLUEBIT_TEMPERATURE="温度",yF.MPYTHON_BLUEBIT_HUMIDITY="湿度",yF.MPYTHON_BLUEBIT_INIT_MIDI_HELPURL="",yF.MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0="初始化MIDI TX引脚 %1",yF.MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP="",yF.MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL="",yF.MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0="设MIDI音量 %1",yF.MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP="音量 0~127",yF.MIDI_PIANO="平台钢琴",yF.MIDI_BRIGHTACOUSTICPIANO="亮音钢琴",yF.MIDI_ELECTRICGRANDPIANO="电钢琴",yF.MIDI_HARPSICHORD="大键琴",yF.MIDI_CELESTA="钢片琴",yF.MIDI_GLOCKENSPIEL="钟琴",yF.MIDI_MUSICALBOX="音乐盒",yF.MIDI_MARIMBA="马林巴琴",yF.MIDI_XYLOPHONE="木琴",yF.MIDI_TUBULARBELL="管钟",yF.MIDI_DULCIMER="洋琴",yF.MIDI_VIBRAPHONE="颤音琴",yF.MIDI_ORGAN="音栓风琴",yF.MIDI_ACOUSTIC_GUITAR="木吉他",yF.MIDI_ELECTRIC_GUITAR="电吉他",yF.MIDI_ACOUSTIC_BASS="民谣贝斯",yF.MIDI_STRING_ENSEMBLE="弦乐合奏",yF.MIDI_VIOLIN="小提琴",yF.MIDI_TRUMPET="小号",yF.MIDI_SAX="萨克斯",yF.MIDI_STEEL_DRUMS="钢鼓",yF.MIDI_LEAD="合成音主旋律",yF.MIDI_PAD="合成音衬底",yF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL="",yF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0="设MIDI乐器 %1",yF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP="",yF.MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL="",yF.MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0="MIDI %1 音调 %2",yF.MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP="",yF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL="",yF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0="设点阵亮度等級 %1",yF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP="亮度等級 0~15",yF.MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL="",yF.MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0="点阵 %1",yF.MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP="",yF.MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL="",yF.MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0="设置点阵 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",yF.MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP="",yF.MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL="",yF.MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0="点阵设置生效",yF.MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP="",yF.MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0="设MP3音量 %1",yF.MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP="音量:0~30",yF.MPYTHON_BLUEBIT_MP3_INIT_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0="初始化MP3 TX引脚 %1",yF.MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP="掌控板的 tx 引脚连接音乐模块的 RXI 引脚",yF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0="MP3 音量 %1",yF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP="",yF.MPYTHON_PLUS_1="加1",yF.MPYTHON_MINUS_1="減1",yF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0="MP3 播放第 %1 首歌",yF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP="",yF.MPYTHON_BLUEBIT_MP3_CMD_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0="MP3 播放 %1",yF.MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP="",yF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL="",yF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0="MP3 单曲循环 %1",yF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP="",yF.MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL="",yF.MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0="设扩展端口 IO %2 为 %1",yF.MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP="IO: 0~7",yF.MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL="",yF.MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0="扩展端口值 IO %1",yF.MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP="",yF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL="",yF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0="设扩展端口 IO %2 为 %1",yF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP="",yF.MPYTHON_LCD_OBJECT_HELPURL="",yF.MPYTHON_LCD_OBJECT_MESSAGE0="LCD1602 初始化",yF.MPYTHON_LCD_OBJECT_TOOLTIP="",yF.MPYTHON_LCD_PRINT_HELPURL="",yF.MPYTHON_LCD_PRINT_MESSAGE0="LCD1602 显示 %1",yF.MPYTHON_LCD_PRINT_TOOLTIP="",yF.MPYTHON_LCD_HOME_HELPURL="",yF.MPYTHON_LCD_HOME_MESSAGE0="LCD1602 光标 回到原点",yF.MPYTHON_LCD_HOME_TOOLTIP="",yF.MPYTHON_LCD_CURSOR_HELPURL="",yF.MPYTHON_LCD_CURSOR_MESSAGE0="LCD1602 光标 %1",yF.MPYTHON_LCD_CURSOR_TOOLTIP="",yF.MPYTHON_LCD_SET_CURSOR_HELPURL="",yF.MPYTHON_LCD_SET_CURSOR_MESSAGE0="LCD1602 起始点 行 %2 列 %1",yF.MPYTHON_LCD_SET_CURSOR_TOOLTIP="行列从0开始计数",yF.MPYTHON_LCD_CLEAR_HELPURL="",yF.MPYTHON_LCD_CLEAR_MESSAGE0="LCD1602 清屏",yF.MPYTHON_LCD_CLEAR_TOOLTIP="",yF.MPYTHON_LCD_CURSOR_BLINK="闪烁",yF.MPYTHON_LCD_CURSOR_NO_BLINK="不闪烁",yF.MPYTHON_LEFT_TO_RIGHT="从左向右",yF.MPYTHON_RIGHT_TO_LEFT="从右向左",yF.MPYTHON_LCD_TEXT_DIRECTION_HELPURL="",yF.MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0="LCD1602 文字方向 %1",yF.MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP="",yF.MPYTHON_LCD_MOVE_HELPURL="",yF.MPYTHON_LCD_MOVE_MESSAGE0="LCD1602 向 %1 滚动一格",yF.MPYTHON_LCD_MOVE_TOOLTIP="",yF.MPYTHON_IR_TRANS_HELPURL="",yF.MPYTHON_IR_TRANS_MESSAGE0="红外发送 单字节字符串 %1 tx 引脚 %2",yF.MPYTHON_IR_TRANS_TOOLTIP="\n单字节字符串:\n'A', 'b', '1'等",yF.OUTPUT_PIN_HELPURL="",yF.OUTPUT_PIN_MESSAGE0="%1",yF.OUTPUT_PIN_TOOLTIP="",yF.INPUT_PIN_HELPURL="",yF.INPUT_PIN_MESSAGE0="%1",yF.INPUT_PIN_TOOLTIP="",yF.READ_ANALOG_PIN_HELPURL="",yF.READ_ANALOG_PIN_MESSAGE0="%1",yF.READ_ANALOG_PIN_TOOLTIP="",yF.SET_DIGITAL_HELPURL="",yF.SET_DIGITAL_MESSAGE0="%1",yF.SET_DIGITAL_TOOLTIP="",yF.SET_ANALOG_HELPURL="",yF.SET_ANALOG_MESSAGE0="%1",yF.SET_ANALOG_TOOLTIP="",yF.ALL_PIN_HELPURL="",yF.ALL_PIN_MESSAGE0="%1",yF.ALL_PIN_TOOLTIP="",yF.PWM_PIN_HELPURL="",yF.PWM_PIN_MESSAGE0="%1",yF.PWM_PIN_TOOLTIP="",yF.DH11_HUM_TEM_PIN_HELPURL="",yF.DH11_HUM_TEM_PIN_MESSAGE0="%1",yF.DH11_HUM_TEM_PIN_TOOLTIP="",yF.UART_TX_PIN_HELPURL="",yF.UART_TX_PIN_MESSAGE0="%1",yF.UART_TX_PIN_TOOLTIP="",yF.UART_RX_PIN_HELPURL="",yF.UART_RX_PIN_MESSAGE0="%1",yF.UART_RX_PIN_TOOLTIP="",yF.I2C_PIN_HELPURL="",yF.I2C_PIN_MESSAGE0="%1",yF.I2C_PIN_TOOLTIP="",yF.MQTT_COMMON_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",yF.MQTT_COMMON_SETUP_MESSAGE0="MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",yF.MQTT_COMMON_SETUP_TOOLTIP="",yF.MQTT_TENCENT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",yF.MQTT_TENCENT_SETUP_MESSAGE0="MQTT 腾讯物联网 %1 服务器 %2 Port %3 AppId %4 Device %5 -- 传出参数 -- %6 ReportTopic %7 ControlTopic %8",yF.MQTT_TENCENT_SETUP_TOOLTIP="",yF.MQTT_TENCENT_SETUPS_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",yF.MQTT_TENCENT_SETUPS_MESSAGE0="MQTT 腾讯物联网 %1 服务器 %2 Port %3 AppId %4 Device %5 -- 传出参数 -- %6 ReportTopic %7 ControlTopic %8",yF.MQTT_TENCENT_SETUPS_TOOLTIP="",yF.MQTT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_SETUP_MESSAGE0="MQTT-Easy IoT %1 服务器 %2 Client ID %5 Iot_id %3 Iot_pwd %4",yF.MQTT_SETUP_TOOLTIP="",yF.MQTT_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_CONNECT_MESSAGE0="连接 MQTT",yF.MQTT_CONNECT_TOOLTIP="",yF.MQTT_PUBLISH_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_PUBLISH_MESSAGE0="发布 %1 至 主题 %2",yF.MQTT_PUBLISH_TOOLTIP="",yF.MQTT_REC_FROM_TOPIC_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_REC_FROM_TOPIC_MESSAGE0="当从主题 %1 接收到 %2 时",yF.MQTT_REC_FROM_TOPIC_TOOLTIP="",yF.MQTT_RECEIVE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_RECEIVE_MESSAGE0="当从主题 %1 接收到 %2 时",yF.MQTT_RECEIVE_TOOLTIP='参数"主题"只接受变量',yF.MQTT_RECEIVED_MESSAGE0="当从主题 %1 接收到消息 时",yF.MQTT_MESSAGE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_MESSAGE_MESSAGE0="从 MQTT 收到的消息",yF.MQTT_MESSAGE_TOOLTIP="",yF.MQTT_WAIT_MSG_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_WAIT_MSG_MESSAGE0="等待主题消息 以 %1 模式",yF.MQTT_WAIT_MSG_TOOLTIP="建议放在'一直重复'中运行",yF.MQTT_DISCONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",yF.MQTT_DISCONNECT_MESSAGE0="MQTT 断开连接",yF.MQTT_DISCONNECT_TOOLTIP="",yF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",yF.MQTT_LAST_WILL_MESSAGE0="设置 MQTT 主题 %2 离线消息 %1",yF.MQTT_LAST_WILL_TOOLTIP="设置 MQTT last will 消息。应该在 connect() 之前调用。",yF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",yF.MQTT_LAST_WILL_MESSAGE0="设置 MQTT 主题 %2 离线消息 %1",yF.MQTT_LAST_WILL_TOOLTIP="设置 MQTT last will 消息。应该在 connect() 之前调用。",yF.MPYTHON_SIOT_CONNECT_HELPURL="",yF.MPYTHON_SIOT_CONNECT_TOOLTIP="",yF.MPYTHON_SIOT_CONNECT_MESSAGE0="创建 SIoT 连接 %1 客户端ID %2 服务器 %3 用户 %4 密码 %5",yF.MPYTHON_SIOT_ISCONNECTED_HELPURL="",yF.MPYTHON_SIOT_ISCONNECTED_TOOLTIP="",yF.MPYTHON_SIOT_ISCONNECTED_MESSAGE0="SIoT 连接成功 ?",yF.MPYTHON_SIOT_SUBSCRIBE_HELPURL="",yF.MPYTHON_SIOT_SUBSCRIBE_TOOLTIP="",yF.MPYTHON_SIOT_SUBSCRIBE_MESSAGE0="SIoT 订阅主题",yF.MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE="点击左边星号 订阅 SIoT 主题",yF.MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH="SIoT 订阅 主题1",yF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE="主题",yF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP="",yF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD="最多订阅 5 个主题",yF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP="",yF.MPYTHON_SIOT_DISCONNECT_HELPURL="",yF.MPYTHON_SIOT_DISCONNECT_TOOLTIP="",yF.MPYTHON_SIOT_DISCONNECT_MESSAGE0="SIoT 断开连接",yF.MPYTHON_SIOT_MESSAGE_HELPURL="",yF.MPYTHON_SIOT_MESSAGE_TOOLTIP="",yF.MPYTHON_SIOT_MESSAGE_MESSAGE0="从 SIoT 收到的消息",yF.MPYTHON_SIOT_TOPIC1="主题1",yF.MPYTHON_SIOT_TOPIC2="主题2",yF.MPYTHON_SIOT_TOPIC3="主题3",yF.MPYTHON_SIOT_TOPIC4="主题4",yF.MPYTHON_SIOT_TOPIC5="主题5",yF.MPYTHON_SIOT_PUBLISH_HELPURL="",yF.MPYTHON_SIOT_PUBLISH_TOOLTIP="",yF.MPYTHON_SIOT_PUBLISH_MESSAGE0="SIoT 发送消息 %1 到 %2",yF.MPYTHON_SIOT_PUBLISH_TO_MESSAGE0="SIoT 发送消息 %1 到 主题 %2",yF.MPYTHON_SIOT_RECEIVE_HELPURL="",yF.MPYTHON_SIOT_RECEIVE_TOOLTIP="",yF.MPYTHON_SIOT_RECEIVE_MESSAGE0="当从 SIoT %1 收到消息时 %2 执行 %3",yF.MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0="当从 SIoT 主题 %1 收到消息时 %2 执行 %3",yF.MPYTHON_IR_RECV_HELPURL="",yF.MPYTHON_IR_RECV_MESSAGE0="红外接收 整型 rx 引脚 %1",yF.MPYTHON_IR_RECV_TOOLTIP="第一次接收总为空",yF.MPYTHON_BLUEBIT_OLED_PRINT_HELPURL="",yF.MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0="bluebit OLED 显示 %1 x %2 y %3",yF.MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP="",yF.MPYTHON_BLUEBIT_OLED_INIT_HELPURL="",yF.MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0="bluebit OLED 初始化 tx %1 rx %2",yF.MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP="",yF.MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL="",yF.MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0="bluebit OLED 清空",yF.MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP="",yF.MPYTHON_BLUEBIT_OLED_BMP_HELPURL="",yF.MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0="bluebit OLED 显示图像 x %1 y %2 宽 %3 高 %4 16进制图像数据 %5",yF.MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP="",yF.mpython_bme280_hum_tem_pre_MESSAGE0="%1",yF.mpython_bme280_hum_tem_pre_TOOLTIP="气压单位Pa, 温度单位摄氏度, 环境湿度单位%",yF.mpythonbox_sound_MESSAGE0="声音值",yF.mpythonbox_sound_TOOLTIP="采样数据,为0~4095。",yF.mpythonbox_sound_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",yF.MPYTHONBOX_SLIDER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",yF.MPYTHONBOX_SLIDER_MESSAGE0="滑杆",yF.MPYTHONBOX_SLIDER_TOOLTIP="返回滑杆电阻采样值。范围0~4095。",yF.MPYTHONBOX_5BUTTON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",yF.MPYTHONBOX_5BUTTON_MESSAGE0="五向按键%1",yF.MPYTHONBOX_5BUTTON_TOOLTIP="",yF.MPYTHONBOX_MOTOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",yF.MPYTHONBOX_MOTOR_MESSAGE0="马达 速度%1",yF.MPYTHONBOX_MOTOR_TOOLTIP="马达速度,范围±100。正值表示正转,负值则反。",yF.MPYTHONBOX_ULTRASONIC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",yF.MPYTHONBOX_ULTRASONIC_MESSAGE0="超声波",yF.MPYTHONBOX_ULTRASONIC_TOOLTIP="超声波测距,获取超声波传感器测距值,单位cm。范围3~340CM",yF.MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",yF.MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0="人体红外",yF.MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP="返回人体红外触发值。当为1时,表示已触发;当为0时,表示未触发。",yF.MPYTHONBOX_RGB_pixel_HELPURL="",yF.MPYTHONBOX_RGB_pixel_MESSAGE0="设定第 %1列 %2行 R%3 G%4 B%5",yF.MPYTHONBOX_RGB_pixel_TOOLTIP="设定第多少列,行的RGB顏色",yF.MPYTHONBOX_RGB_get_pixel_HELPURL="",yF.MPYTHONBOX_RGB_get_pixel_MESSAGE0="返回 第%1列 %2行 RGB颜色",yF.MPYTHONBOX_RGB_get_pixel_TOOLTIP="返回第多少列,行位置的RGB颜色",yF.MPYTHONBOX_RGB_ImageText_HELPURL="",yF.MPYTHONBOX_RGB_ImageText_MESSAGE0="滚动显示文本%1 速度%2",yF.MPYTHONBOX_RGB_ImageText_TOOLTIP="滚动显示文本,亮度为0不亮,9最亮",yF.MPYTHONBOX_RGB_SetImage_HELPURL="",yF.MPYTHONBOX_RGB_SetImage_TOOLTIP="",yF.MPYTHONBOX_RGB_SetImage_MESSAGE0="创建图像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",yF.MPYTHONBOX_RGB_Image_HELPURL="",yF.MPYTHONBOX_RGB_Image_MESSAGE0="显示图像%1",yF.MPYTHONBOX_RGB_Image_TOOLTIP="显示图像",yF.MPYTHONBOX_RGB_SetImage_HELPURL="",yF.MPYTHONBOX_RGB_SetImage_MESSAGE0="创建图像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",yF.MPYTHONBOX_RGB_SetImage_TOOLTIP="创建新图像,每行每位数代表第几位灯,默认红色;亮度为0不亮,9最亮。",yF.MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0="显示图像/文本 %1",yF.MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP="显示图像或文本消息。",yF.MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL="",yF.MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0="显示图像 %1",yF.MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP="显示图像。",yF.MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL="",yF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0="复制图像 %1",yF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP="复制图像。",yF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL="",yF.MPYTHONBOX_RGB_ImageCot_HELPURL="",yF.MPYTHONBOX_RGB_ImageCot_MESSAGE0="切剪图像%1 列%2 行%3 宽%4 高%5",yF.MPYTHONBOX_RGB_ImageCot_TOOLTIP="切剪图像",yF.MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0="内置图像 %1",yF.MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP="选择一个内置的图像。",yF.MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL="",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0="平移图像 %1 %2 %3 位",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP="向特定方向移动图像,并返回移动后的结果。",yF.MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL="",yF.MPYTHONBOX_RGB_clear_HELPURL="",yF.MPYTHONBOX_RGB_clear_MESSAGE0="关闭所有 RGB 灯",yF.MPYTHONBOX_RGB_clear_TOOLTIP="",yF.MPYTHONBOX_RGB_pixel_return_HELPURL="",yF.MPYTHONBOX_RGB_pixel_return_MESSAGE0="返回第 %1列 %2行 颜色",yF.MPYTHONBOX_RGB_pixel_return_TOOLTIP="返回第多少列,行的RGB顏色",yF.MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",yF.MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0="%1轴加速度",yF.MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP="单位g,范围-2~+2g。",yF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",yF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0="%1轴角速度",yF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP="范围±500°/秒",yF.MPYTHONBOX_EULER_ANGLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",yF.MPYTHONBOX_EULER_ANGLE_MESSAGE0="%1欧拉角",yF.MPYTHONBOX_EULER_ANGLE_TOOLTIP="返回当前欧拉角(Pitch,Roll,Yaw),单位角度",yF.MPYTHONBOX_QUATERNION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",yF.MPYTHONBOX_QUATERNION_MESSAGE0="%1四元数",yF.MPYTHONBOX_QUATERNION_TOOLTIP="返回当前四元数(w,x,y,z)",yF.MPYTHONBOX_CAMERA_LED_HELPURL="",yF.MPYTHONBOX_CAMERA_LED_MESSAGE0="摄像灯%1",yF.MPYTHONBOX_CAMERA_LED_TOOLTIP="led灯,分为打开和关闭两种状态",yF.LIST_FIRST_INDEX_HELPURL="",yF.LIST_FIRST_INDEX_MESSAGE0="项 %1 在列表 %2 %3 出现的位置",yF.LIST_FIRST_INDEX_TOOLTIP="",yF.MPYTHON_AI_LCD_INIT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",yF.MPYTHON_AI_LCD_INIT_MESSAGE0="屏幕 初始化 ",yF.MPYTHON_AI_LCD_INIT_TOOLTIP="初始化 屏幕显示",yF.MPYTHON_AI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",yF.MPYTHON_AI_SENSOR_RESET_MESSAGE0="摄像头 初始化",yF.MPYTHON_AI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",yF.MPYTHON_AI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",yF.MPYTHON_AI_SENSOR_ENABLE_MESSAGE0="摄像头%1",yF.MPYTHON_AI_SENSOR_ENABLE_TOOLTIP="获取图像",yF.MPYTHON_AI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",yF.MPYTHON_AI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",yF.MPYTHON_AI_LCD_TEXT_TOOLTIP="仅支持字母和数字",yF.MPYTHON_AI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",yF.MPYTHON_AI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",yF.MPYTHON_AI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",yF.MPYTHON_AI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",yF.MPYTHON_AI_SENSOR_RETURN_MESSAGE0="测 摄像头 获取%1",yF.MPYTHON_AI_SENSOR_RETURN_TOOLTIP="(AI)摄像头返回参数(宽高,图像帧的格式,图像帧的大小)",yF.MPYTHON_AI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",yF.MPYTHON_AI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",yF.MPYTHON_AI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",yF.MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",yF.MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",yF.MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",yF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",yF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0="摄像头 白平衡%1",yF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP="设置摄像自动白平衡模式,默认打开。True为打开, False为关闭自动白平衡。若您想追踪颜色,则需关闭白平衡。",yF.MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",yF.MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 %1 %2",yF.MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",yF.MPYTHON_AI_LCD_DISPLAY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",yF.MPYTHON_AI_LCD_DISPLAY_MESSAGE0="屏幕 显示生效",yF.MPYTHON_AI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示",yF.MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",yF.MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0="图像 显示生效 x%1 y%2 宽%3 高%4",yF.MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP="可以在液晶屏上显示一张图片",yF.MPYTHON_AI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",yF.MPYTHON_AI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",yF.MPYTHON_AI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",yF.MPYTHON_AI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",yF.MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP="",yF.MPYTHON_AI_LCD_SHOW_REC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",yF.MPYTHON_AI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",yF.MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",yF.MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",yF.MPYTHON_AI_LCD_SHOW_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0="屏幕 显示清空",yF.MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",yF.MPYTHON_AI_LCD_CLEAR_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",yF.MPYTHON_AI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",yF.MPYTHON_AI_LCD_return_colour_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",yF.MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",yF.MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_TEXT_MOST_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",yF.MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",yF.MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",yF.MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",yF.MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",yF.MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",yF.MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",yF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL=".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",yF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",yF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="图像转换为%1",yF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="黑白翻转是将二进制图像0(黑色)变为1(白色),1(白色)变为0(黑色),非常快速地翻转二进制图像中的所有像素值。",yF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",yF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0="图像 从笛卡尔坐标到%1 坐标重新投影 反向%2",yF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP="",yF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",yF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0="图像 膨胀 级别%1",yF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP="膨胀就是对图像高亮部分进行“领域扩张”,效果图拥有比原图更大的高亮区域。",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0="图像 中点滤波 级别%1 滤波%2",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP="控制图像混合的最小/最大程度。0只适用于最小滤波,1仅用于最大滤波。",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0="图像 众数滤波 级别%1",yF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP="在图像上运行众数滤波,用相邻像素的模式替换每个像素。",yF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",yF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0="图像 模糊滤波 级别%1",yF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP="使用盒式滤波器的标准均值模糊滤波。",yF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",yF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0="图像 卡通化 级别%1 起始像素差异%2 相邻像素差异%3",yF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP="使图像卡通化",yF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",yF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0="图像 3D旋转 上下旋转%1 左右旋转%2 度数%3 左右移动%4 上下移动%5 缩放%6",yF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP="通过执行帧缓冲区的3D旋转来纠正图像中的透视问题。",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",yF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",yF.MPYTHON_AI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_FACE_TRACKING_MESSAGE0="(实验箱)选择训练模型 人脸",yF.MPYTHON_AI2_FACE_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",yF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0="(实验箱)调用摄像头进行 人脸识别",yF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",yF.MPYTHON_AI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_MESSAGE0="(实验箱)获取识别后人脸的 所有参数",yF.MPYTHON_AI2_RESULT_FACE_TOOLTIP="获取识别后人脸的 所有参数",yF.MPYTHON_AI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_X_MESSAGE0="(实验箱)获取识别后人脸的 x坐标",yF.MPYTHON_AI2_RESULT_FACE_X_TOOLTIP="获取识别后人脸的 x坐标",yF.MPYTHON_AI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0="(实验箱)获取识别后人脸的 y坐标",yF.MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP="获取识别后人脸的 y坐标",yF.MPYTHON_AI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_W_MESSAGE0="(实验箱)获取识别后人脸的 宽度",yF.MPYTHON_AI2_RESULT_FACE_W_TOOLTIP="获取识别后人脸的 宽度",yF.MPYTHON_AI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_H_MESSAGE0="(实验箱)获取识别后人脸的 高度",yF.MPYTHON_AI2_RESULT_FACE_H_TOOLTIP="获取识别后人脸的 高度",yF.MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0="(实验箱)获取识别后人脸的 置信度",yF.MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP="获取识别后人脸的 置信度",yF.MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0="(实验箱)获取识别后人脸的 数量",yF.MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP="获取识别后人脸的 数量",yF.MPYTHON_AI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_20class_TRACKING_MESSAGE0="(实验箱)选择训练模型 20类",yF.MPYTHON_AI2_20class_TRACKING_TOOLTIP="可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",yF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(实验箱)调用摄像头进行 20类识别",yF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP="调用摄像头进行 20类识别",yF.MPYTHON_AI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_MESSAGE0="(实验箱)获取识别后20类的 所有参数",yF.MPYTHON_AI2_RESULT_20CLASS_TOOLTIP="获取识别后20类的 所有参数",yF.MPYTHON_AI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0="(实验箱)获取识别后20类的 x坐标",yF.MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP="获取识别后20类的 x坐标",yF.MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0="(实验箱)获取识别后20类的 y坐标",yF.MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP="获取识别后20类的 y坐标",yF.MPYTHON_AI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0="(实验箱)获取识别后20类的 宽度",yF.MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP="获取识别后20类的 宽度",yF.MPYTHON_AI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0="(实验箱)获取识别后20类的 高度",yF.MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP="获取识别后20类的 高度",yF.MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0="(实验箱)获取识别后20类的 置信度",yF.MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP="获取识别后20类的 置信度",yF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(实验箱)获取识别后20类的 数量",yF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP="获取识别后20类的 数量",yF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0="(实验箱)获取识别后20类的 类型",yF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP="获取识别后20类的 类型可以放入获取识别的参数,可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",yF.MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0="(实验箱)获取识别后20类的 类型数量",yF.MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP="获取识别后20类的 类型数量",yF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="(实验箱)选择训练模型 手写数字",yF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="选择训练模型 手写数字识别",yF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0="(实验箱)调用摄像头进行 手写数字识别",yF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP="调用摄像头进行 手写数字识别",yF.MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0="(实验箱)获取识别后手写数字的 所有参数",yF.MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP="手写数字识别参数",yF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0="(实验箱)获取识别后手写数字的 数字",yF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP="手写数字识别 数字",yF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(实验箱)获取识别后手写数字的 置信度",yF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP="手写数字 识别数字 置信度",yF.MPYTHON_AI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",yF.MPYTHON_AI_TRACE_COLOR_MESSAGE0="(实验箱)追踪色块 LAB颜色%1 边界框小于%2 像素小于%3 过滤",yF.MPYTHON_AI_TRACE_COLOR_TOOLTIP="追踪色块",yF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",yF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(实验箱)追踪颜色 显示%1",yF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",yF.MPYTHON_AI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_ALL_MESSAGE0="(实验箱)%1获取识别后色块的 所有参数",yF.MPYTHON_AI_BLOB_ALL_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_X_MESSAGE0="(实验箱)%1获取识别后色块的 x坐标",yF.MPYTHON_AI_BLOB_X_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_Y_MESSAGE0="(实验箱)%1获取识别后色块的 y坐标",yF.MPYTHON_AI_BLOB_Y_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_W_MESSAGE0="(实验箱)%1获取识别后色块的 宽度",yF.MPYTHON_AI_BLOB_W_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_H_MESSAGE0="(实验箱)%1获取识别后色块的 高度",yF.MPYTHON_AI_BLOB_H_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_NUMBER_MESSAGE0="(实验箱)%1获取识别后色块的 数量",yF.MPYTHON_AI_BLOB_NUMBER_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_CENTER_X_MESSAGE0="(实验箱)%1获取识别后色块的 中心x坐标",yF.MPYTHON_AI_BLOB_CENTER_X_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0="(实验箱)%1获取识别后色块的 中心y坐标",yF.MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0="(实验箱)%1获取识别后色块的 矩形",yF.MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",yF.MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0="屏幕 x%1 y%2 显示颜色 R%3 G%4 B%5",yF.MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP="屏幕显示颜色",yF.MPYTHON_AI_LCD_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",yF.MPYTHON_AI_LCD_COLOUR_MESSAGE0="屏幕 初始化 显示颜色 R%1 G%2 B%3",yF.MPYTHON_AI_LCD_COLOUR_TOOLTIP="屏幕显示颜色",yF.MPYTHON_AI_SENSOR_PATTERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",yF.MPYTHON_AI_SENSOR_PATTERN_MESSAGE0="摄像头 初始化 像素模式 %1",yF.MPYTHON_AI_SENSOR_PATTERN_TOOLTIP="用于设置摄像头像素模式,有黑白和rgb彩色",yF.MPYTHON_DRILL_WEIGHT_MESSAGE0="初始化 训练 %1",yF.MPYTHON_DRILL_WEIGHT_TOOLTIP="",yF.MPYTHON_DRILL_WEIGHT_HELPURL="",yF.MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL="",yF.MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0="实例化 线性回归直线",yF.MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP="",yF.MPYTHON_DRILL_TITLE_HELPURL="",yF.MPYTHON_DRILL_TITLE_MESSAGE0="标题%1 字号%2",yF.MPYTHON_DRILL_TITLE_TOOLTIP="",yF.MPYTHON_DRILL_LABEL_HELPURL="",yF.MPYTHON_DRILL_LABEL_MESSAGE0="标签%1 标题%2 字号%3",yF.MPYTHON_DRILL_LABEL_TOOLTIP="",yF.MPYTHON_DRILL_DRILL_REALITY_HELPURL="",yF.MPYTHON_DRILL_DRILL_REALITY_MESSAGE0="真实数据 符号标记%1 颜色为r%2 g%3 b%4 标题%5",yF.MPYTHON_DRILL_DRILL_REALITY_TOOLTIP="",yF.MPYTHON_DRILL_PREDICTED_REALITY_HELPURL="",yF.MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0="预测线性回归直线 符号标记%1 颜色为r%2 g%3 b%4 标题%5",yF.MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP="",yF.MPYTHON_DRILL_LEGEND_HELPURL="",yF.MPYTHON_DRILL_LEGEND_MESSAGE0="展示图例",yF.MPYTHON_DRILL_LEGEND_TOOLTIP="",yF.MPYTHON_DRILL_SHOW_HELPURL="",yF.MPYTHON_DRILL_SHOW_MESSAGE0="显示图片",yF.MPYTHON_DRILL_SHOW_TOOLTIP="",yF.MPYTHON_DRILL_DRILL_PRINT_HELPURL="",yF.MPYTHON_DRILL_DRILL_PRINT_MESSAGE0="输入测试数值%1",yF.MPYTHON_DRILL_DRILL_PRINT_TOOLTIP="",yF.MPYTHON_DRILL_DRILL_full_line="实线",yF.MPYTHON_DRILL_DRILL_dash_line="破折线",yF.MPYTHON_DRILL_DRILL_chain_line="点划线",yF.MPYTHON_DRILL_DRILL_imaginary_line="虚线",yF.MPYTHON_DRILL_DRILL_dot="点",yF.MPYTHON_DRILL_DRILL_pixel="像素",yF.MPYTHON_DRILL_DRILL_solid_rim="实心圈",yF.MPYTHON_DRILL_DRILL_down_triangle="下三角",yF.MPYTHON_DRILL_DRILL_up_triangle="上三角",yF.MPYTHON_DRILL_DRILL_right_triangle="右三角",yF.MPYTHON_DRILL_DRILL_left_triangle="左三角",yF.MPYTHON_DRILL_DRILL_down_flower_triangle="下花三角",yF.MPYTHON_DRILL_DRILL_up_flower_triangle="上花三角",yF.MPYTHON_DRILL_DRILL_right_flower_triangle="右花三角",yF.MPYTHON_DRILL_DRILL_left_flower_triangle="左花三角",yF.MPYTHON_DRILL_DRILL_solid_square="实心方形",yF.MPYTHON_DRILL_DRILL_solid_pentagon="实心五角",yF.MPYTHON_DRILL_DRILL_star="星形",yF.MPYTHON_DRILL_DRILL_vertical_hexagon="竖六边形",yF.MPYTHON_DRILL_DRILL_across_hexagon="横六边形",yF.MPYTHON_DRILL_DRILL_cross="十字",yF.MPYTHON_DRILL_DRILL_X="X",yF.MPYTHON_DRILL_DRILL_rhombus="菱形",yF.MPYTHON_DRILL_DRILL_thin_rhombus="瘦菱形",yF.MPYTHON_DRILL_DRILL_vertical_line="垂直线",yF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0="初始化 鸢尾花数据集",yF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP="采用Python的Sklearn机器学习库中自带的数据集——鸢尾花数据集。简单分析数据集之间特征的关系图,根据花瓣长度、花瓣宽度、花萼长度、花萼宽度四个特征进行绘图Iris plants 数据集可以从KEEL dataset数据集网站获取,也可以直接从Sklearn.datasets机器学习包得到。数据集共包含4个特征变量、1个类别变量,共有150个样本。类别变量分别对应鸢尾花的三个亚属,分别是山鸢尾 (Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica) 分别用[0,1,2]来做映射",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0="鸢尾花 主成分分析",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0="鸢尾花 因子分析 3D",yF.MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0="鸢尾花 因子分析",yF.MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0="预测图示 鸢尾花类型%1 呈现内容 x%3 y%4 呈现种类%2 颜色为 r%5 g%6 b%7 标题%8 向上合并%9",yF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0="预测图示 呈现内容 x%1 y%2 呈现种类%3 颜色为 r%4 g%5 b%6 标题%7",yF.MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0="3D 预测图示 呈现内容 x朝向%1 y朝向%2 z朝向%3 颜色为 r%4 g%5 b%6 标题%7",yF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0="标题%1 字号%2",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0="标签%1 标题%2 字号%3",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0="3D 标题%1 字号%2",yF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0="3D 标签%1 标题%2 字号%3",yF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0="展示图例",yF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0="显示图片",yF.MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP="",yF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL="",yF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0="花萼和花瓣的x,y坐标",yF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP="共150条记录,分别代表50条山鸢尾 (Iris-setosa)、变色鸢尾(Iris-versicolor)、维吉尼亚鸢尾(Iris-virginica)",yF.MPYTHONS_FLOWER_DE_LUCE_Iris_setosa="山鸢尾",yF.MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor="变色鸢尾",yF.MPYTHONS_FLOWER_DE_LUCE_Iris_virginica="维吉尼亚鸢尾",yF.MPYTHONS_FLOWER_DE_LUCE_scatter_diagram="散点图",yF.MPYTHONS_FLOWER_DE_LUCE_kde_diagram="kde图",yF.MPYTHONS_FLOWER_DE_LUCE_box_diagram="箱图",yF.MPYTHONS_FLOWER_DE_LUCE_merge="合并",yF.MPYTHONS_FLOWER_DE_LUCE_not_merge="不合并",yF.MPYTHONS_FLOWER_DE_LUCE_calyx_length="花萼长度",yF.MPYTHONS_FLOWER_DE_LUCE_calyx_width="花萼宽度",yF.MPYTHONS_FLOWER_DE_LUCE_petal_length="花瓣长度",yF.MPYTHONS_FLOWER_DE_LUCE_petal_width="花瓣宽度",yF.MPYTHONS_CONVERT_PICTURE_HELPURL="",yF.MPYTHONS_CONVERT_PICTURE_MESSAGE0="将图片转换为28²二值图%1 待处理的图片存储路径%2 处理后的图片存储路径%3 格式%4",yF.MPYTHONS_CONVERT_PICTURE_TOOLTIP="掌控板通过串口把WIF传给语音助手",yF.MPYTHONS_NUMBER_REPERTOIRE_HELPURL="",yF.MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0="查找解析 手写数字数据 存储路径%1",yF.MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP="使用手写数字字符库",yF.MPYTHONS_SHOW_NUMBER_PATH_HELPURL="",yF.MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0="手写数字图像 存储路径%1",yF.MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP="手写数字图像的路径",yF.MPYTHONS_SHOW_NUMBER_HELPURL="",yF.MPYTHONS_SHOW_NUMBER_MESSAGE0="显示手写数字图像",yF.MPYTHONS_SHOW_NUMBER_TOOLTIP="显示手写数字图像",yF.MPYTHONS_NUMBER_RECOGNITION_HELPURL="",yF.MPYTHONS_NUMBER_RECOGNITION_MESSAGE0="识别手写数字图像 存储路径%1",yF.MPYTHONS_NUMBER_RECOGNITION_TOOLTIP="识别手写数字图像的路径",yF.MPYTHONS_NUMBER_PLACEHOLDER_HELPURL="",yF.MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0="创建变量%1 初始化 神经网络张量 变量名%2",yF.MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP="",yF.MPYTHON_DRILL_RESHAPE_MESSAGE0="创建变量%1 将输入照片变量 %2 转换为 神经网络输出张量%3",yF.MPYTHON_DRILL_RESHAPE_TOOLTIP="",yF.MPYTHON_DRILL_RESHAPE_HELPURL="",yF.MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0="创建变量%1 共享变量名%2 初始化模式%3",yF.MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP="",yF.MPYTHON_NUMBER_CONV_WEIGHT_HELPURL="",yF.MPYTHON_NUMBER_INITIALIZER_MESSAGE0="产生截断正态分布随机数 输出张量%1 标准差%2",yF.MPYTHON_NUMBER_INITIALIZER_TOOLTIP="",yF.MPYTHON_NUMBER_INITIALIZER_HELPURL="",yF.MPYTHON_NUMBER_CONSTANT_MESSAGE0="创建常量 数值%1 输出张量%2",yF.MPYTHON_NUMBER_CONSTANT_TOOLTIP="",yF.MPYTHON_NUMBER_CONSTANT_HELPURL="",yF.MPYTHON_NUMBER_CONV2D_MESSAGE0="神经网络输出张量%1 共享变量%2 步长%3 填充%4",yF.MPYTHON_NUMBER_CONV2D_TOOLTIP="",yF.MPYTHON_NUMBER_CONV2D_HELPURL="",yF.MPYTHON_NUMBER_CONV_BIASES_MESSAGE0="张量%1",yF.MPYTHON_NUMBER_CONV_BIASES_TOOLTIP="",yF.MPYTHON_NUMBER_CONV_BIASES_HELPURL="",yF.MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0="卷积二维层 变量%1 %2",yF.MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP="",yF.MPYTHON_NUMBER_CONV_CONV2D_HELPURL="",yF.MPYTHON_NUMBER_RELU_MESSAGE0="创建变量%1 Relu正向激励函数 卷积二维层%2",yF.MPYTHON_NUMBER_RELU_TOOLTIP="",yF.MPYTHON_NUMBER_RELU_HELPURL="",yF.MPYTHON_NUMBER_MAX_POOL_MESSAGE0="池化二维层 变量%1 卷积层%2 池化窗口%3 步长%4 填充%5",yF.MPYTHON_NUMBER_MAX_POOL_TOOLTIP="",yF.MPYTHON_NUMBER_MAX_POOL_HELPURL="",yF.MPYTHON_NUMBER_MATMUL_MESSAGE0="两个参数的对应元素各自相乘 x%1 y%2",yF.MPYTHON_NUMBER_MATMUL_TOOLTIP="",yF.MPYTHON_NUMBER_MATMUL_HELPURL="",yF.MPYTHON_NUMBER_ADD_MESSAGE0="全连接层 变量%1 两个参数的元素相加 x%2 y%3",yF.MPYTHON_NUMBER_ADD_TOOLTIP="",yF.MPYTHON_NUMBER_ADD_HELPURL="",yF.MPYTHON_NUMBER_SOFTMAX_MESSAGE0="创建变量%1 预测模型准确度 变量名%2",yF.MPYTHON_NUMBER_SOFTMAX_TOOLTIP="",yF.MPYTHON_NUMBER_SOFTMAX_HELPURL="",yF.MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0="创建变量%1 损失函数%2",yF.MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP="",yF.MPYTHON_NUMBER_REDUCE_MEAN_HELPURL="",yF.MPYTHON_NUMBER_LOG_MESSAGE0="自然对数 %1",yF.MPYTHON_NUMBER_LOG_TOOLTIP="",yF.MPYTHON_NUMBER_LOG_HELPURL="",yF.MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0="压缩求和%1 维度%2",yF.MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP="因为log函数是单调递增的,所以logP(Y|X)也会达到最大值,因此在前面加上负号之后,最大化P(Y|X)就等价于最小化L了。",yF.MPYTHON_NUMBER_REDUCE_SUM_HELPURL="https://www.cnblogs.com/guoyaohua/p/9217206.html",yF.MPYTHON_NUMBER_TRAIN_MESSAGE0="优化学习速率 %1",yF.MPYTHON_NUMBER_TRAIN_TOOLTIP="",yF.MPYTHON_NUMBER_TRAIN_HELPURL="",yF.MPYTHON_NUMBER_MINIMIZE_MESSAGE0="创建变量%1 优化张量%2",yF.MPYTHON_NUMBER_MINIMIZE_TOOLTIP="",yF.MPYTHON_NUMBER_MINIMIZE_HELPURL="",yF.MPYTHON_NUMBER_INIT_MESSAGE0="初始化模型 完成",yF.MPYTHON_NUMBER_INIT_TOOLTIP="",yF.MPYTHON_NUMBER_INIT_HELPURL="",yF.MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0="选择 手写数字集%1 数量%2",yF.MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP="",yF.MPYTHON_NUMBER_TRAIN_TEST_HELPURL="",yF.MPYTHON_NUMBER_SESSION_RUN_MESSAGE0="启动数据流图会话进行计算 会话%1 图片%2 标签%3",yF.MPYTHON_NUMBER_SESSION_RUN_TOOLTIP="",yF.MPYTHON_NUMBER_SESSION_RUN_HELPURL="",yF.MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0="启动数据流图会话进行计算 会话%1 图片%2 标签%3",yF.MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP="",yF.MPYTHON_NUMBER_SESSION_RUN2_HELPURL="",yF.MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0="预测模型%1 拟合度%2 会话%3",yF.MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP="",yF.MPYTHON_NUMBER_SESSION_RUN3_HELPURL="",yF.MPYTHON_NUMBER_EQUAL_MESSAGE0="两个张量的每一维是否相等 x%1 y%2",yF.MPYTHON_NUMBER_EQUAL_TOOLTIP="",yF.MPYTHON_NUMBER_EQUAL_HELPURL="",yF.MPYTHON_NUMBER_ARGMAX_MESSAGE0="张量 %1 按%2比较返回最大值的索引",yF.MPYTHON_NUMBER_ARGMAX_TOOLTIP="",yF.MPYTHON_NUMBER_ARGMAX_HELPURL="",yF.MPYTHON_NUMBER_CAST_MESSAGE0="转为浮点型 %1",yF.MPYTHON_NUMBER_CAST_TOOLTIP="",yF.MPYTHON_NUMBER_CAST_HELPURL="",yF.MPYTHONS_NUMBER_SAVER_SAVE_HELPURL="",yF.MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0="手写数字识别模型 变量名%1 存储路径%2",yF.MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP="MNIST手写数字识别模型保存路径",yF.MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL="",yF.MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0="加载模型 %1 存储路径%2",yF.MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP="加载模型",yF.MPYTHONS_NUMBER_SAME="包含边界",yF.MPYTHONS_NUMBER_VALID="不包含边界",yF.MPYTHONS_NUMBER_train="训练",yF.MPYTHONS_NUMBER_test="测试",yF.MPYTHONS_NUMBER_row="行",yF.MPYTHONS_NUMBER_rank="列",yF.MPYTHONS_NUMBERNEW_INITIALIZE_HELPURL="",yF.MPYTHONS_NUMBERNEW_INITIALIZE_MESSAGE0="初始化 张量 载入mnist数据集",yF.MPYTHONS_NUMBERNEW_INITIALIZE_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_HELPURL="",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_MESSAGE0="卷积 一 层",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_POOLING_ONE_HELPURL="",yF.MPYTHONS_NUMBERNEW_POOLING_ONE_MESSAGE0="池化 一 层",yF.MPYTHONS_NUMBERNEW_POOLING_ONE_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_HELPURL="",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_MESSAGE0="卷积 二 层",yF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_POOLING_TWO_HELPURL="",yF.MPYTHONS_NUMBERNEW_POOLING_TWO_MESSAGE0="池化 二 层",yF.MPYTHONS_NUMBERNEW_POOLING_TWO_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_CONNECT_ONE_HELPURL="",yF.MPYTHONS_NUMBERNEW_CONNECT_ONE_MESSAGE0="全连接 一 层",yF.MPYTHONS_NUMBERNEW_CONNECT_ONE_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_CONNECT_TWO_HELPURL="",yF.MPYTHONS_NUMBERNEW_CONNECT_TWO_MESSAGE0="全连接 二 层",yF.MPYTHONS_NUMBERNEW_CONNECT_TWO_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_LOSS_HELPURL="",yF.MPYTHONS_NUMBERNEW_LOSS_MESSAGE0="配置Adam优化器 学习速率为%1",yF.MPYTHONS_NUMBERNEW_LOSS_TOOLTIP="学习速率为0.001~0.000001之间",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_HELPURL="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_MESSAGE0="初始化 tensorflow模型%1 训练模型%2 步数%3",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_TOOLTIP="步数不能小于10",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_HELPURL="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_MESSAGE0="模型训练准确率",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_HELPURL="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_MESSAGE0="预测 训练正确率",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_TOOLTIP="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_HELPURL="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_MESSAGE0="预测 手写数字%1",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_TOOLTIP="仅支持28*28像素的黑白图片",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_HELPURL="",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_MESSAGE0="显示图片%1",yF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0="调用摄像头 %1",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP="调用笔记本内置摄像头,所以参数为0,如果有其他的摄像头可以调整参数为1,2",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0="关闭摄像头",yF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0="删除所有窗口",yF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",yF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0="从摄像头读取图片",yF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP="ret如果有读取图片就True,否则false;第二个参数是frame,是当前截取一帧的图片。",yF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0="转为灰度图片",yF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0="检测人脸 每次图像尺寸减小比例%1",yF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP="",yF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL="",yF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0="人脸区域显示矩形框 颜色为 红%1 绿%2 蓝%3",yF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0="保存图像 位置%1 ID%2 编号%3",yF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0="窗口中显示图像 文件名%1",yF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL="",yF.MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0="通过esc键 退出",yF.MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP="在窗口置顶时使用才有效果",yF.MPYTHONS_FACE_RECOGNITIONR_HELPURL="",yF.MPYTHONS_FACE_RECOGNITIONR_MESSAGE0="获得人脸在图像中的坐标值 人脸%1",yF.MPYTHONS_FACE_RECOGNITIONR_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0="是否有读取图片",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0="是否打开摄像头",yF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0="获取照片及id 照片存储路径%1",yF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0="初始化训练模型",yF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP="初始化训练模型",yF.MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0="开始训练模型",yF.MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0="%1训练模型 存储路径%2",yF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0="人脸模型训练 数目",yF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_FONT_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0="窗口显示 识别的名字%1 设置字体为%2 颜色为 红%3 绿%4 蓝%5",yF.MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0="窗口显示 识别的置信度%1 设置字体为%2 颜色为 红%3 绿%4 蓝%5",yF.MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL="",yF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0="预测人脸 名字%1 置信度%2",yF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP="",yF.MPYTHONS_FACE_RECOGNITION_FORECAST_Write="写入",yF.MPYTHONS_FACE_RECOGNITION_FORECAST_Read="读取",yF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL="",yF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0="初始化 聊天机器人",yF.MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP="",yF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL="",yF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0="选择训练器 聊天机器人",yF.MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP="",yF.MPYTHONS_DIALOGUE_ROBOT_START_HELPURL="",yF.MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0="选择与%1 聊天",yF.MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP="",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL="",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP="",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0="自定义 语料库 %1[%2]",yF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL="",yF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0="输入对话 获得响应 %1",yF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP="",yF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0="识别响应",yF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP="",yF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL="",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL="",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0="选择跟 %1 聊天",yF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP="",yF.Jenny="珍妮",yF.Jack="杰克",yF.Tom="汤姆",yF.MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL="",yF.MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0="选择 %1 %2 模式%3 %4 喂养%5",yF.MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP="",yF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL="",yF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0="查阅训练库 选择%1",yF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP="",yF.MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL="",yF.MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0="生成随机数 %1",yF.MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP="",yF.MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL="",yF.MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0="显示窗口",yF.MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP="",yF.MPYTHON_AGESTURE_IMSHOW_HELPURL="",yF.MPYTHON_AGESTURE_IMSHOW_MESSAGE0="处理图像 %1",yF.MPYTHON_AGESTURE_IMSHOW_TOOLTIP="",yF.MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL="",yF.MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0="选择训练库 knn模型",yF.MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP="",yF.MPYTHON_AGESTURE_LOAD_MODEL_HELPURL="",yF.MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0="载入knn模型 存储路径%1",yF.MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP="",yF.MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL="",yF.MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0="%1打开图片 存储路径%2 图片名%3",yF.MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP="",yF.MPYTHON_AGESTURE_ARRAY_MESSAGE0="选择%1 构建特征数据%2",yF.MPYTHON_AGESTURE_ARRAY_TOOLTIP="",yF.MPYTHON_AGESTURE_ARRAY_HELPURL="",yF.MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0="打乱排序%1 ",yF.MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP="",yF.MPYTHON_GESTURE_RANDOM_RANK_HELPURL="",yF.MPYTHON_GESTURE_READ_LEND_MESSAGE0=" %1 图片特征",yF.MPYTHON_GESTURE_READ_LEND_TOOLTIP="",yF.MPYTHON_GESTURE_READ_LEND_HELPURL="",yF.MPYTHON_GESTURE_START_SRAIN_HELPURL="",yF.MPYTHON_GESTURE_START_SRAIN_MESSAGE0="开始训练 手势识别 期望%1 目标%2",yF.MPYTHON_GESTURE_START_SRAIN_TOOLTIP="",yF.MPYTHON_GESTURE_SCORE_HELPURL="",yF.MPYTHON_GESTURE_SCORE_MESSAGE0="进行评分 期望%1 目标%2",yF.MPYTHON_GESTURE_SCORE_TOOLTIP="",yF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL="",yF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",yF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 数组降维 图片总数%2",yF.MPYTHON_GESTURE_FORECAST_HELPURL="",yF.MPYTHON_GESTURE_FORECAST_TOOLTIP="",yF.MPYTHON_GESTURE_FORECAST_MESSAGE0="预测结果%1",yF.MPYTHON_AGESTURE_SAVE_MODEL_HELPURL="",yF.MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0="保存模型 存储路径%1",yF.MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP="",yF.MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL="",yF.MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0="%1图片 预测图片 ",yF.MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP="",yF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL="",yF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",yF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 彩色图像降维",yF.MPYTHON_AGESTURENEW_INITIALIZE_HELPURL="",yF.MPYTHON_AGESTURENEW_INITIALIZE_MESSAGE0="初始化 KNN",yF.MPYTHON_AGESTURENEW_INITIALIZE_TOOLTIP="",yF.MPYTHON_AGESTURENEW_SHOOT_HELPURL="",yF.MPYTHON_AGESTURENEW_SHOOT_MESSAGE0="拍摄 进行手势检测",yF.MPYTHON_AGESTURENEW_SHOOT_TOOLTIP="",yF.MPYTHON_AGESTURENEW_SHOOT_GRAY_HELPURL="",yF.MPYTHON_AGESTURENEW_SHOOT_GRAY_MESSAGE0="拍摄 训练集",yF.MPYTHON_AGESTURENEW_SHOOT_GRAY_TOOLTIP="",yF.MPYTHON_AGESTURENEW_GRAY_HELPURL="",yF.MPYTHON_AGESTURENEW_GRAY_MESSAGE0="图像处理",yF.MPYTHON_AGESTURENEW_GRAY_TOOLTIP="",yF.MPYTHON_AGESTURENEW_TRAIN_HELPURL="",yF.MPYTHON_AGESTURENEW_TRAIN_MESSAGE0="开始分类训练",yF.MPYTHON_AGESTURENEW_TRAIN_TOOLTIP="",yF.MPYTHON_AGESTURENEW_START_FORECAST_HELPURL="",yF.MPYTHON_AGESTURENEW_START_FORECAST_MESSAGE0="开始预测",yF.MPYTHON_AGESTURENEW_START_FORECAST_TOOLTIP="",yF.MPYTHON_AGESTURENEW_FORECAST_RESULT_HELPURL="",yF.MPYTHON_AGESTURENEW_FORECAST_RESULT_MESSAGE0="预测结果",yF.MPYTHON_AGESTURENEW_FORECAST_RESULT_TOOLTIP="",yF.MPYTHON_AGESTURENEW_SHOW_WINDOW_HELPURL="",yF.MPYTHON_AGESTURENEW_SHOW_WINDOW_MESSAGE0="显示图片";yF.MPYTHON_AGESTURENEW_SHOW_WINDOW_TOOLTIP="",yF.MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL="",yF.MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0="选择人脸库 图片存储路径%1",yF.MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP="",yF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",yF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",yF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0="第%1位人脸性别结果 置信度",yF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0="第%1位人脸情绪结果 置信度",yF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL="",yF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0="第%1位人脸性别 结果",yF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL="",yF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0="第%1位人脸情绪 结果",yF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP="",yF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL="",yF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0="选择人脸库 %1",yF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0="第%1位情绪为 %2",yF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0="第%1位性别为 %2",yF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0="人脸数量",yF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0="表情数量",yF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL="",yF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0="人脸实时检测 %1",yF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP="Esc退出拍摄",yF.MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL="",yF.MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0="显示图片",yF.MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP="",yF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL="",yF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0="选择人脸库%1",yF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP="",yF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_HELPURL="",yF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_MESSAGE0="拍照 进行人脸检测 %1",yF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_TOOLTIP="按S建拍摄,Esc退出拍摄",yF.MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL="",yF.MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0="初始化 文章聚类",yF.MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_TITLE_HELPURL="文章数量不超过100",yF.MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0="标题 第%1文章",yF.MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_CONTENT_HELPURL="文章数量不超过100",yF.MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0="内容 第%1文章",yF.MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_JIEBA_HELPURL="文章数量不超过100",yF.MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0="文章内容转为列表 第%1文章",yF.MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL="",yF.MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0="读取停词表 排序前%1",yF.MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP="返回的是100篇文章里的符号",yF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL="",yF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0="删除后的新闻",yF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL="",yF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0="构造词云所用的数据",yF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL="",yF.MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0="读取词汇表 排序前%1",yF.MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP="返回的是100篇文章里的文本",yF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL="",yF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0="文章聚类训练结果 保存为图片",yF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP="",yF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL="",yF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0="显示图片",yF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP="",yF.FIRST="第一次",yF.LAST="最后一次",yF.MPYTHON_USOCKET_BLOCK="阻塞",yF.MPYTHON_USOCKET_UNBLOCK="非阻塞",yF.MPYTHON_USOCKET_SETSOCKOPT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket",yF.MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0="设置socket %1 地址 %2 类型 %3",yF.MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP="设置给定套接字选项的值。所需的符号常量在套接字模块中定义(SO_ *等)。该值可以是整数或表示缓冲区的类字节对象。",yF.MPYTHON_USOCKET_READLINE_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.accept",yF.MPYTHON_USOCKET_READLINE_MESSAGE0="socket %1 接收一行数据,遇换行符结束并返回接收数据的对象",yF.MPYTHON_USOCKET_READLINE_TOOLTIP=" 接收一行数据,遇换行符结束,并返回接收数据的对象",yF.MPYTHON_USOCKET_SETBLOCKING_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.setblocking",yF.MPYTHON_USOCKET_SETBLOCKING_MESSAGE0="设 socket %1 为 %2 模式",yF.MPYTHON_USOCKET_SETBLOCKING_TOOLTIP="",yF.MPYTHON_USOCKET_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.read",yF.MPYTHON_USOCKET_READ_MESSAGE0="从socket %1 读取 %2 字节并返回字节对象",yF.MPYTHON_USOCKET_READ_TOOLTIP="若未给定读取数量 ,则按照类似 socket.readall() 的模式运行",yF.MPYTHON_ESC_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.setblocking",yF.MPYTHON_ESC_MESSAGE0="设 socket %1 为 %2 模式",yF.MPYTHON_ESC_TOOLTIP="",yF.MPYTHON_USOCKET_SETTIMEOUT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.settimeout",yF.MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0="socket %1 设超时时间 %2 秒",yF.MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP="",yF.MPYTHON_USOCKET_SENDALL_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",yF.MPYTHON_USOCKET_SENDALL_MESSAGE0="socket %1 连续发送 %2 并返回发送的字节数",yF.MPYTHON_USOCKET_SENDALL_TOOLTIP="将所有数据发送到套接字。套接字必须连接到远程套接字。与 send() 此不同,此方法将尝试通过连续发送数据块来发送所有数据。",yF.MPYTHON_USOCKET_SENDS_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",yF.MPYTHON_USOCKET_SENDS_MESSAGE0="socket %1 发送 %2 并返回发送的字节数",yF.MPYTHON_USOCKET_SENDS_TOOLTIP='将数据发送到套接字。套接字必须连接到远程套接字。返回发送的字节数,可能小于数据长度 ("short write")。',yF.MPYTHON_USOCKET_SEND_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",yF.MPYTHON_USOCKET_SEND_MESSAGE0="socket %1 发送 %2 并返回发送的字节数",yF.MPYTHON_USOCKET_SEND_TOOLTIP="Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",yF.MPYTHON_USOCKET_SENDTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.sendto",yF.MPYTHON_USOCKET_SENDTO_MESSAGE0="socket %1 发送 %2 到地址 %3",yF.MPYTHON_USOCKET_SENDTO_TOOLTIP="Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",yF.MPYTHON_USOCKET_RECV_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.recv",yF.MPYTHON_USOCKET_RECV_MESSAGE0="socket %1 接收并返回接收到的数据对象 最大数据量为 %2",yF.MPYTHON_USOCKET_RECV_TOOLTIP="",yF.MPYTHON_TEXT_ESC_HELPURL="",yF.MPYTHON_TEXT_ESC_MESSAGE0="文本转义字符 %1",yF.MPYTHON_TEXT_ESC_TOOLTIP="文本转义字符",yF.MPYTHON_USOCKET_RECVFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.recvfrom",yF.MPYTHON_USOCKET_RECVFROM_MESSAGE0="socket %1 接收并返回接收到的数据元组 最大数据量为 %2",yF.MPYTHON_USOCKET_RECVFROM_TOOLTIP="元组格式 (bytes, address)",yF.MPYTHON_USOCKET_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.connect",yF.MPYTHON_USOCKET_CONNECT_MESSAGE0="socket %1 连接 host %2 端口 %3",yF.MPYTHON_USOCKET_CONNECT_TOOLTIP="",yF.MPYTHON_USOCKET_GETADDRINFO_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.getaddrinfo",yF.MPYTHON_USOCKET_GETADDRINFO_MESSAGE0="解析 host %1 端口 %2 并返回 ip",yF.MPYTHON_USOCKET_GETADDRINFO_TOOLTIP="需联网",yF.MPYTHON_USOCKET_ACCEPT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.accept",yF.MPYTHON_USOCKET_ACCEPT_MESSAGE0="socket %1 接收连接请求并返回socket元组",yF.MPYTHON_USOCKET_ACCEPT_TOOLTIP="接收连接请求。socket需要指定地址并监听连接。返回值是 (conn, address)。\nconn:新的socket对象,可以用来收发消息\naddress:连接到服务器的客户端地址",yF.MPYTHON_USOCKET_LISTEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.listen",yF.MPYTHON_USOCKET_LISTEN_MESSAGE0="监听socket %1 backlog个数 %2",yF.MPYTHON_USOCKET_LISTEN_TOOLTIP="backlog :接受套接字的最大个数,至少为0,如果没有指定,则默认一个合理值。",yF.MPYTHON_USOCKET_BIND_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.bind",yF.MPYTHON_USOCKET_BIND_MESSAGE0="socket %1 绑定地址 %2 端口 %3",yF.MPYTHON_USOCKET_BIND_TOOLTIP="",yF.MPYTHON_USOCKET_CLOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.close",yF.MPYTHON_USOCKET_CLOSE_MESSAGE0="socket %1 关闭",yF.MPYTHON_USOCKET_CLOSE_TOOLTIP="",yF.MPYTHON_USOCKET_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket",yF.MPYTHON_USOCKET_INIT_MESSAGE0="创建 socket %1 地址 %2 类型 %3",yF.MPYTHON_USOCKET_INIT_TOOLTIP="AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP流\nSOCK_DGRAM:=2 — UDP数据报\nSOCK_RAW :=3 — 原始套接字\nSO_REUSEADDR : =4 — socket可重用\n",yF.MPYTHON_GET_POST_HELPURL="",yF.MPYTHON_GET_POST_MESSAGE0="%1 请求网址 %2 提交字段 %3",yF.MPYTHON_GET_POST_TOOLTIP="",yF.MPYTHON_UREQUESTS_GET_POST_HELPURL="",yF.MPYTHON_UREQUESTS_GET_POST_TOOLTIP="",yF.MPYTHON_UREQUESTS_GET_POST_MESSAGE0="%1 请求网址 %2 提交字段 %3",yF.MPYTHON_UREQUESTS_POST_FILE_HELPURL="",yF.MPYTHON_UREQUESTS_POST_FILE_TOOLTIP="",yF.MPYTHON_UREQUESTS_POST_FILE_MESSAGE0="Post 提交文件 %1 请求网址 %2 文件路径 %3 Mime类型 %4 附加字段 %5",yF.MPYTHON_RESPONSE_HELPURL="",yF.MPYTHON_RESPONSE_MESSAGE0="响应内容 形式 %1",yF.MPYTHON_RESPONSE_TOOLTIP="",yF.STRING="字符串",yF._BYTE="二进制",yF.BYTES="字节",yF.TEXT="文本",yF.MPYTHON_RESPONSE_ATTRIBUTE_HELPURL="",yF.MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0="响应属性 %1",yF.MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP="",yF.MPYTHON_SETS_PIN_MODE_HELPURL="https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",yF.MPYTHON_SETS_PIN_MODE_TOOLTIP="右键帮助,查看引脚声明",yF.MPYTHON_SETS_PIN_MODE_MESSAGE0="设置引脚 %1 为 %2 模式 %3 并设置值为 %4",yF.MPYTHON_SET_PIN_IN="输入",yF.MPYTHON_SET_PIN_PUSH_PULL_OUT="推挽输出",yF.MPYTHON_SET_PIN_LEAKY_OUT="开漏输出",yF.MPYTHON_SET_PIN_NO_PULL="无上下拉",yF.MPYTHON_SET_PIN_DOWN_PULL="下拉",yF.MPYTHON_SET_PIN_UP_PULL="上拉",yF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL="",yF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0="线程锁对象 %1 请求锁",yF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP="",yF.MPYTHON_START_NEW_THREAD_HELPURL="",yF.MPYTHON_START_NEW_THREAD_MESSAGE0="子线程 %1",yF.MPYTHON_START_NEW_THREAD_TOOLTIP="",yF.MPYTHON_UART_INIT_HELPURL="",yF.MPYTHON_UART_INIT_MESSAGE0="串口 %4 初始化 波特率 %1 tx %2 rx %3",yF.MPYTHON_UART_INIT_TOOLTIP="掌控板支持3组串口。0用于REPL,剩下1、2两组串口可用。所有引脚均可以作为串口的输入RX,除 P2、P3 、P4 、P10 只能作为输入,其余所有的引脚理论上都可以作为输出TX。",yF.MPYTHON_UART_DEINIT_HELPURL="",yF.MPYTHON_UART_DEINIT_MESSAGE0="关闭串口 %1",yF.MPYTHON_UART_DEINIT_TOOLTIP="关闭 UART 总线",yF.MPYTHON_UART_WRITE_STR_HELPURL="",yF.MPYTHON_UART_WRITE_STR_MESSAGE0="串口 %1 写入文本 %2 %3",yF.MPYTHON_UART_WRITE_STR_TOOLTIP="将文本写入总线。\n返回值:写入或 None 超时的字节数。",yF.MPYTHON_UART_WRITE_HEX_HELPURL="",yF.MPYTHON_UART_WRITE_HEX_MESSAGE0="串口 %1 发送16进制字符串 %2 %3",yF.MPYTHON_UART_WRITE_HEX_TOOLTIP="",yF.MPYTHON_UART_HAS_DATA_HELPURL="",yF.MPYTHON_UART_HAS_DATA_MESSAGE0="串口 %1 有可读数据",yF.MPYTHON_UART_HAS_DATA_TOOLTIP="返回一个整数,计算可以无阻塞地读取的字符数。\n如果没有可用字符,它将返回0,如果有字符,则返回正数。\n即使有多个可读的字符,该方法也可以返回1。",yF.MPYTHON_UART_READLINE_HELPURL="",yF.MPYTHON_UART_READLINE_MESSAGE0="串口 %1 读取一行数据",yF.MPYTHON_UART_READLINE_TOOLTIP="读一行,以换行符结尾。\n返回值:读取行或 None 超时。",yF.MPYTHON_UART_READ_HELPURL="",yF.MPYTHON_UART_READ_MESSAGE0="串口 %1 读取数据",yF.MPYTHON_UART_READ_TOOLTIP="读取尽可能多的串口数据\n返回值:包含读入字节的字节列表。若读取超时则返回 None。",yF.MPYTHON_UART_READ_LENGTH_HELPURL="",yF.MPYTHON_UART_READ_LENGTH_MESSAGE0="串口 %1 读取数据 长度 %2",yF.MPYTHON_UART_READ_LENGTH_TOOLTIP="读取指定长度字节数据\n返回值:包含读入字节的字节列表。若读取超时则返回 None。",yF.MPYTHON_UART_WRITE_BYTE_HELPURL="",yF.MPYTHON_UART_WRITE_BYTE_MESSAGE0="串口 %1 写入单字节 %2",yF.MPYTHON_UART_WRITE_BYTE_TOOLTIP="参数取值为 0~255 整数\n将字节写入总线。\n返回值:写入或 None 超时的字节数。",yF.MPYTHON_UART_WRITE_BYTES_HELPURL="",yF.MPYTHON_UART_WRITE_BYTES_MESSAGE0="串口 %1 写入字节数组 %2",yF.MPYTHON_UART_WRITE_BYTES_TOOLTIP="将字节数组写入总线。\n返回值:写入或 None 超时的字节数。",yF.MPYTHON_BAUDRATE_HELPURL="",yF.MPYTHON_BAUDRATE_MESSAGE0="%1",yF.MPYTHON_BAUDRATE_TOOLTIP="",yF.MPYTHON_HIGH_LOW_HELPURL="",yF.MPYTHON_HIGH_LOW_MESSAGE0="%1",yF.MPYTHON_HIGH_LOW_TOOLTIP="",yF.MPYTHON_TEN_CONVERT_TO_HELPURL="",yF.MPYTHON_TEN_CONVERT_TO_MESSAGE0="10进制整数 %1 转化为 %2 字符串",yF.MPYTHON_TEN_CONVERT_TO_TOOLTIP="",yF.MPYTHON_BIN="二进制",yF.MPYTHON_OCT="八进制",yF.MPYTHON_HEX="十六进制",yF.MPYTHON_CONVERT_TO_TEN_HELPURL="",yF.MPYTHON_CONVERT_TO_TEN_MESSAGE0="%1 字符串 %2 转 10进制整数",yF.MPYTHON_CONVERT_TO_TEN_TOOLTIP="",yF.MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL="",yF.MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0="10进制整数 %2 转 %1 字节",yF.MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP="",yF.MPYTHON_INT_TO_CHR_HELPURL="",yF.MPYTHON_INT_TO_CHR_MESSAGE0="整型 %1 转 ASCII 单字符",yF.MPYTHON_INT_TO_CHR_TOOLTIP="ASCII:基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",yF.MPYTHON_CHR_TO_INT_HELPURL="",yF.MPYTHON_CHR_TO_INT_MESSAGE0="ASCII 单字符 %1 转 整型",yF.MPYTHON_CHR_TO_INT_TOOLTIP="ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",yF.MPYTHON_STR_TO_HEX_HELPURL="",yF.MPYTHON_STR_TO_HEX_MESSAGE0="字符串 %1 转 十六进制 字节",yF.MPYTHON_STR_TO_HEX_TOOLTIP="返回结果中用空格分隔两个十六进制数",yF.MPYTHON_HEX_TO_BIN_STR_HELPURL="",yF.MPYTHON_HEX_TO_BIN_STR_MESSAGE0="十六进制字符串 %1 转 二进制 字节",yF.MPYTHON_HEX_TO_BIN_STR_TOOLTIP="",yF.MPYTHON_DATA_TO_BASE64_HELPURL="",yF.MPYTHON_DATA_TO_BASE64_MESSAGE0="%1 以 base64 格式编码 返回字节对象",yF.MPYTHON_DATA_TO_BASE64_TOOLTIP="Base64编码是从二进制到字符的过程",yF.MPYTHON_BASE64_TO_DATA_HELPURL="",yF.MPYTHON_BASE64_TO_DATA_MESSAGE0="解码 base64 数据 %1 返回字节对象",yF.MPYTHON_BASE64_TO_DATA_TOOLTIP="Base64编码是从二进制到字符的过程",yF.MPYTHON_UJSON_DUMPS_HELPURL="",yF.MPYTHON_UJSON_DUMPS_MESSAGE0="%1 转 json 字符串",yF.MPYTHON_UJSON_DUMPS_TOOLTIP="JSON 格式的 key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 none)",yF.MPYTHON_UJSON_LOADS_HELPURL="",yF.MPYTHON_UJSON_LOADS_MESSAGE0="解析 json 字符串 %1 返回对象",yF.MPYTHON_UJSON_LOADS_TOOLTIP="JSON 格式的 key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 none)",yF.MPYTHON_CUSTOM_CODE_HELPURL="",yF.MPYTHON_CUSTOM_CODE_TOOLTIP="",yF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定义代码 %2 %3",yF.MPYTHON_CUSTOM_TYPE_IMPORT="置顶",yF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",yF.MPYTHON_CUSTOM_VALUE_MESSAGE0="自定义返回值 %1",yF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL="",yF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0="自定义终端部件 Terminal 虚拟管脚 V %1",yF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP="",yF.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL="",yF.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0="同步虚拟管脚的状态 V %1",yF.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP="",yF.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL="",yF.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0="当 Blynk 断开连接时",yF.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP="",yF.MPYTHON_BLYNK_ON_CONNECTED_HELPURL="",yF.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0="当 Blynk 连接时",yF.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP="",yF.MPYTHON_BLYNKTIMER_RUN_HELPURL="",yF.MPYTHON_BLYNKTIMER_RUN_MESSAGE0="运行 Blynk 定时器进程",yF.MPYTHON_BLYNKTIMER_RUN_TOOLTIP="建议放在 '一直重复' 中循环执行",yF.MPYTHON_BLYNK_GET_TIMERS_HELPURL="",yF.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0="可用的 Blynk 定时器",yF.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP="",yF.MPYTHON_BLYNK_STOP_TIMERS_HELPURL="",yF.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0="停止 Blynk 定时器 %1",yF.MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP='注意:\n定时器序号为自动获取,自上而下,从0开始且连续,不可"定时器0,定时器2",此处暴露序号参数为方便查看!\n参数:\nno_timers_err=False-如果所有计时器都停止,禁用异常触发',yF.MPYTHON_UART_INPUT_HELPURL="",yF.MPYTHON_UART_INPUT_MESSAGE0="从串口获取文本 提示语句 %1",yF.MPYTHON_UART_INPUT_TOOLTIP="",yF.MPYTHON_BLYNK_SET_PROPERTY_HELPURL="",yF.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0="给虚拟管脚添加 属性 %1 值 %2",yF.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP="放于 read 或 write 事件中,虚拟管脚由事件决定,与该管脚绑定的组件会拥有添加的属性",yF.MPYTHON_BLYNK_EMAIL_HELPURL="",yF.MPYTHON_BLYNK_EMAIL_MESSAGE0="向预设邮箱发邮件 %1 主题 %2 正文 %3",yF.MPYTHON_BLYNK_EMAIL_TOOLTIP="",yF.MPYTHON_BLYNK_RUN_HELPURL="",yF.MPYTHON_BLYNK_RUN_MESSAGE0="运行 Blynk 进程",yF.MPYTHON_BLYNK_RUN_TOOLTIP="建议放在 '一直重复' 中循环执行",yF.MPYTHON_BLYNK_APP_NOTIFY_HELPURL="",yF.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0="Blynk APP 显示通知 %1",yF.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP="",yF.MPYTHON_BLYNKTIMER_HELPURL="",yF.MPYTHON_BLYNKTIMER_MESSAGE0="Blynk 定时器 %1 %2 周期 %3 秒",yF.MPYTHON_BLYNKTIMER_TOOLTIP='注意:\n定时器序号为自动获取,自上而下,从0开始且连续,不可"定时器0,定时器2",此处暴露序号参数为方便查看!\n参数:\nno_timers_err=False-如果所有计时器都停止,禁用异常触发',yF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL="",yF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0="发送数据 %1 到 Blynk APP 的 虚拟管脚 V %2",yF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP="虚拟管脚:V0 ~ V255",yF.MPYTHON_BLYNK_SETUP_HELPURL="",yF.MPYTHON_BLYNK_SETUP_MESSAGE0="Blynk 设置 %1 服务器 %2 端口 %3 授权码 %4",yF.MPYTHON_BLYNK_SETUP_TOOLTIP="服务器可填 blynk-cloud.com(官网) 或者 blynk.mpython.cn(国内)\n默认端口为 8080\n注意:手机APP访问端口为 9443",yF.MPYTHON_BLYNK_APP_DATA_HELPURL="",yF.MPYTHON_BLYNK_APP_DATA_MESSAGE0="当 从 Blynk APP 收到 虚拟管脚 V %1 的值 %2",yF.MPYTHON_BLYNK_APP_DATA_TOOLTIP="虚拟管脚:V0 ~ V255",yF.MPYTHON_BLYNK_RECEIVED_MESSAGE0="当 收到 Blynk 虚拟管脚 V %1 的值",yF.MPYTHON_BLYNK_VALUE_MESSAGE0="从 Blynk 收到的值",yF.MPYTHON_BLYNK_VALUE_TOOLTIP="",yF.MPYTHON_BLYNK_VALUE_HELPURL="",yF.MPYTHON_ONENET_DISCONNECT_MESSAGE0="OneNET 断开连接",yF.MPYTHON_ONENET_DISCONNECT_TOOLTIP="",yF.MPYTHON_ONENET_DISCONNECT_HELPURL="",yF.MPYTHON_ONENET_MSG_MESSAGE0="从 OneNET 收到的消息",yF.MPYTHON_ONENET_MSG_TOOLTIP="",yF.MPYTHON_ONENET_MSG_HELPURL="",yF.MPYTHON_ONENET_RECV_MESSAGE0="当 从 OneNET 收到消息 %1 时",yF.MPYTHON3_ONENET_RECV_MESSAGE0="当 从 OneNET 收到消息 时",yF.MPYTHON_ONENET_RECV_TOOLTIP="",yF.MPYTHON_ONENET_RECV_HELPURL="",yF.MPYTHON_ONENET_RECV_MSG_MESSAGE0="当 从 OneNET 收到特定消息 %1 时",yF.MPYTHON_ONENET_RECV_MSG_TOOLTIP="",yF.MPYTHON_ONENET_RECV_MSG_HELPURL="",yF.MPYTHON_ONENET_PUB_VALUE_MESSAGE0="向 OneNET 发送数据流 名称 %1 值 %2",yF.MPYTHON_ONENET_PUB_VALUE_TOOLTIP="",yF.MPYTHON_ONENET_PUB_VALUE_HELPURL="",yF.MPYTHON_ONENET_PUB_DICT_MESSAGE0="向 OneNET 发送数据流 %1",yF.MPYTHON_ONENET_PUB_DICT_TOOLTIP="",yF.MPYTHON_ONENET_PUB_DICT_HELPURL="",yF.MPYTHON_ONENET_PUB_VALUE2_MESSAGE0="向 小程序 发送数据流 名称 %1 值 %2",yF.MPYTHON_ONENET_PUB_VALUE2_TOOLTIP="",yF.MPYTHON_ONENET_PUB_VALUE2_HELPURL="",yF.INT_TO_CHR_HELPURL="",yF.INT_TO_CHR_MESSAGE0="整数 %1 转 ASCII 单字符",yF.INT_TO_CHR_TOOLTIP="",yF.MPYTHON_ONENET_ACCEPT_MESSAGE="收到消息",yF.MPYTHON_ONENET="OneNET 设置",yF.MPYTHON_ONENET_WECHAT_APP="小程序 设置",yF.MPYTHON_ONENET_OPTION_BOARDS="可选掌控板",yF.MPYTHON_ONENET_TITLE="OneNET",yF.MPYTHON_SERVER="服务器",yF.MPYTHON_DEVICE_ID="设备ID",yF.MPYTHON_PRODUCT_ID="产品ID",yF.MPYTHON_API_KEY="产品APIKey",yF.MPYTHON_ONENET_CALLBACK="回调函数",yF.MPYTHON_TOPIC="主题",yF.MPYTHON_ONENET_CALLBACK_TITLE="OneNET回调函数",yF.MPYTHON_ONENET_OPTION_BOARDS_HELPURL="",yF.MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0="小程序 选择掌控板应用 %1",yF.MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP="",yF.MPYTHON_HCSR04_DISTANCE_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",yF.MPYTHON_HCSR04_DISTANCE_MESSAGE0="%1 hcsr04 超声波距离 测量单位 %2",yF.MPYTHON_HCSR04_DISTANCE_TOOLTIP="",yF.MPYTHON_HCSR04_DISTANCE_MM_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",yF.MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0="%1 hcsr04 超声波(mm)",yF.MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP="",yF.MPYTHON_HCSR04_OBJ_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",yF.MPYTHON_HCSR04_OBJ_MESSAGE0="hcsr04 超声波初始化 名称 %1 trigger %2 echo %3",yF.MPYTHON_HCSR04_OBJ_TOOLTIP="",yF.MPYTHON_PM2_5_MIC_HELPURL="",yF.MPYTHON_PM2_5_MIC_MESSAGE0="rx引脚%1 PM值浓度%2",yF.MPYTHON_PM2_5_MIC_TOOLTIP="",yF.MPYTHON_PM2_5_LitresAir_HELPURL="",yF.MPYTHON_PM2_5_LitresAir_MESSAGE0="rx引脚%1 0.1升空气中直径在%2 颗粒物个数",yF.MPYTHON_PM2_5_LitresAir_TOOLTIP="",yF.MPYTHON3_IR_REMOTE_RECV_MESSAGE0="当 红外接收端 %1 收到消息时 %2 执行 %3",yF.MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0="红外回调地址",yF.MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0="红外接收内容",yF.MPYTHON_IR_REMOTE_RECV_MESSAGE0="红外接收 %1 回调地址 %2 回调命令 %3",yF.MPYTHON_IR_REMOTE_RECV_HELPURL="",yF.MPYTHON_IR_REMOTE_RECV_TOOLTIP="",yF.MPYTHON_IR_REMOTE_SEND_MESSAGE0="红外发送 %1 地址 %2 命令 %3",yF.MPYTHON_IR_REMOTE_SEND_HELPURL="",yF.MPYTHON_IR_REMOTE_SEND_TOOLTIP="",yF.TEXT_FORMAT_MESSAGE0="格式化字符串 %1 % %2",yF.TEXT_FORMAT_TOOLTIP="",yF.TEXT_FORMAT_HELPURL="",yF.TEXT_FORMAT2_MESSAGE0="格式化字符串 %1 format %2",yF.TEXT_FORMAT2_TOOLTIP="",yF.TEXT_FORMAT2_HELPURL="",yF.TEXT_TO_BYTE_MESSAGE0="转字节 %1",yF.TEXT_TO_BYTE_TOOLTIP="支持数据类型:string",yF.TEXT_TO_BYTE_HELPURL="",yF.MPYTHON_BYTES_DECODE_HELPURL="",yF.MPYTHON_BYTES_DECODE_MESSAGE0="字节 %1 转 字符串",yF.MPYTHON_BYTES_DECODE_TOOLTIP="",yF.OTHER_TO_BYTE_MESSAGE0="非文本转字节 %1",yF.OTHER_TO_BYTE_TOOLTIP="",yF.OTHER_TO_BYTE_HELPURL="",yF.MPYTHON_ONENET_TOOLTIP="创建OneNET连接",yF.MPYTHON_ONENET_INIT_WIFI_MESSAGE0="物联网 确保连接到 Wi-Fi 名称 %1 密码 %2",yF.MPYTHON_ONENET_INIT_WIFI_TOOLTIP="",yF.MPYTHON_ONENET_INIT_WIFI_HELPURL="",yF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL="",yF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0="当从小程序收到 %1 和 %2 时",yF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP="",yF.MPYTHON_MAC_ADDRESS_HELPURL="",yF.MPYTHON_MAC_ADDRESS_MESSAGE0="MAC 地址",yF.MPYTHON_MAC_ADDRESS_TOOLTIP="",yF.MPYTHON_RADIO_REC_HELPURL="",yF.MPYTHON_RADIO_REC_MESSAGE0="无线广播 接收消息",yF.MPYTHON_RADIO_REC_TOOLTIP="所接收为字节型",yF.MPYTHON_RADIO_SEND_HELPURL="",yF.MPYTHON_RADIO_SEND_MESSAGE0="无线广播 发送 %1",yF.MPYTHON_RADIO_SEND_TOOLTIP="频道: 1~13",yF.MPYTHON_RADIO_CHANNEL_HELPURL="",yF.MPYTHON_RADIO_CHANNEL_MESSAGE0="设无线广播 频道为 %1",yF.MPYTHON_RADIO_CHANNEL_TOOLTIP="频道: 1~13",yF.MPYTHON_RADIO_ON_OFF_HELPURL="",yF.MPYTHON_RADIO_ON_OFF_MESSAGE0="%1 无线广播",yF.MPYTHON_RADIO_ON_OFF_TOOLTIP="频道: 1~13",yF.MPYTHON_RADIO_MSG_MESSAGE0="收到的无线广播消息",yF.MPYTHON_RADIO_MSG_TOOLTIP="",yF.MPYTHON_RADIO_MSG_HELPURL="",yF.MPYTHON3_RADIO_RECV_MESSAGE0="当 收到无线广播消息 时 %1 执行 %2",yF.MPYTHON_RADIO_RECV_MESSAGE0="当 收到无线广播消息 %1 时",yF.MPYTHON_RADIO_RECV_TOOLTIP="频道: 1~13",yF.MPYTHON_RADIO_RECV_HELPURL="",yF.MPYTHON_RADIO_RECV_MSG_MESSAGE0="当 收到特定无线广播消息 %1 时 %2 执行 %3",yF.MPYTHON_RADIO_RECV_MSG_TOOLTIP="频道: 1~13",yF.MPYTHON_RADIO_RECV_MSG_HELPURL="",yF.MPYTHON_UDP_INIT_HELPURL="",yF.MPYTHON_UDP_INIT_MESSAGE0="建立 UDP 连接",yF.MPYTHON_UDP_INIT_TOOLTIP="UDP连接基于Wi-Fi",yF.MPYTHON_UDP_SEND_HELPURL="",yF.MPYTHON_UDP_SEND_MESSAGE0="UDP 群发消息 %1",yF.MPYTHON_UDP_SEND_TOOLTIP="",yF.MPYTHON_UDP_SENDTO_HELPURL="",yF.MPYTHON_UDP_SENDTO_MESSAGE0="UDP 发送消息 %1 到 %2 端口 %3",yF.MPYTHON_UDP_SENDTO_TOOLTIP="",yF.MPYTHON_UDP_RECV_HELPURL="",yF.MPYTHON_UDP_RECV_MESSAGE0="UDP 接收消息",yF.MPYTHON_UDP_RECV_TOOLTIP="",yF.MPYTHON_UDP_RECV_EVENT_HELPURL="",yF.MPYTHON_UDP_RECV_EVENT_MESSAGE0="当从 UDP 收到消息时 %1 执行 %2",yF.MPYTHON_UDP_RECV_EVENT_TOOLTIP="",yF.MPYTHON_UDP_RECV_MSG_MESSAGE0="从 UDP 收到的消息",yF.MPYTHON_UDP_RECV_MSG_TOOLTIP="",yF.MPYTHON_UDP_RECV_MSG_HELPURL="",yF.MPYTHON_AUDIO_PLAY_chirp_MESSAGE0="鸟叫",yF.MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0="钢琴黑暗旋律配乐",yF.MPYTHON_AUDIO_PLAY_miaow_MESSAGE0="猫叫",yF.MPYTHON_AUDIO_PLAY_bark_MESSAGE0="小狗吠叫",yF.MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0="浑厚的打击音",yF.MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0="紧张效果的音效",yF.MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0="拍照快门声",yF.MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0="数百只苍蝇",yF.MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0="蟋蟀叫声",yF.MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0="摇晃低音声线",yF.MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0="听众欢呼掌声",yF.MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0="邮轮汽笛",yF.MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0="现代电话铃声",yF.MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0="拔萝卜",yF.MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0="两只老虎",yF.MPYTHON_AUDIO_SET_VOLUME_HELPURL="",yF.MPYTHON_AUDIO_SET_VOLUME_MESSAGE0="设音频音量 %1",yF.MPYTHON_AUDIO_SET_VOLUME_TOOLTIP="",yF.MPYTHON_DISPCHAR_MODE_1="普通",yF.MPYTHON_DISPCHAR_MODE_2="反转",yF.MPYTHON_DISPCHAR_MODE_3="透明",yF.MPYTHON_AUDIO_XUNFEI_TTS_HELPURL="",yF.MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0="TTS 语音播放 %1",yF.MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP="需要在 讯飞开放平台 www.xfyun.cn 上开通“在线语音合成”服务",yF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL="https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",yF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0="TTS 语音配置 APPID %1 APIKey %2",yF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP="输入在 讯飞开放平台 www.xfyun.cn 获取的 APPID 与 APIKey\n注意:要设置IP白名单",yF.MPYTHON_AUDIO_PLAY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",yF.MPYTHON_AUDIO_PLAY_MESSAGE0="音频 播放 %1",yF.MPYTHON_AUDIO_PLAY_TOOLTIP="需要有源音箱\nP8 左声道\nP9 右声道\nGND 接地\n播放参数: \n网络 MP3 的 url 或已上传至掌控板的 MP3, 如'music_1.mp3' ",yF.MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",yF.MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0="音频 播放 %1",yF.MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP="需要有源音箱\nP8 左声道\nP9 右声道\nGND 接地\n播放参数: \n网络 MP3 的 url 或已上传至掌控板的 MP3, 如'music_1.mp3' ",yF.MPYTHON_AUDIO_DEINIT_HELPURL="",yF.MPYTHON_AUDIO_DEINIT_MESSAGE0="音频 释放缓存",yF.MPYTHON_AUDIO_DEINIT_TOOLTIP="",yF.MPYTHON_AUDIO_INIT_HELPURL="",yF.MPYTHON_AUDIO_INIT_MESSAGE0="音频 初始化",yF.MPYTHON_AUDIO_INIT_TOOLTIP="为音频解码开辟缓存",yF.MPYTHON_AUDIO_CMD_HELPURL="",yF.MPYTHON_AUDIO_CMD_MESSAGE0="音频 %1",yF.MPYTHON_AUDIO_CMD_TOOLTIP="",yF.MPYTHON_AUDIO_START_RECORDING_HELPURL="",yF.MPYTHON_AUDIO_START_RECORDING_MESSAGE0="开始录音 录音时长%1秒",yF.MPYTHON_AUDIO_START_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。录音时长不能超过5秒",yF.MPYTHON_AUDIO_RECORDING_RESULT_HELPURL="",yF.MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0="录音结果",yF.MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",yF.MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL="",yF.MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0="将 %1 进行识别",yF.MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。",yF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL="",yF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0="识别录音结果",yF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",yF.MPYTHON_RECORD_INIT_HELPURL="",yF.MPYTHON_RECORD_INIT_MESSAGE0="录音 初始化",yF.MPYTHON_RECORD_INIT_TOOLTIP="录音初始化。\n需要掌控板v1.1以上硬件版本。",yF.MPYTHON_RECORD_DEINIT_HELPURL="",yF.MPYTHON_RECORD_DEINIT_MESSAGE0="录音 释放资源",yF.MPYTHON_RECORD_DEINIT_TOOLTIP="录音结束后释放资源。\n需要掌控板v1.1以上硬件版本。",yF.MPYTHON_RECORD_WAV_HELPURL="",yF.MPYTHON_RECORD_WAV_MESSAGE0="录制音频 存储路径 %1 时长 %2 秒",yF.MPYTHON_RECORD_WAV_TOOLTIP="录制音频,并以 WAV 格式存储。\n需要掌控板v1.1以上硬件版本。",yF.MPYTHON_ASR_HELPURL="",yF.MPYTHON_ASR_MESSAGE0="识别 %1 秒语音指令",yF.MPYTHON_ASR_TOOLTIP="可以识别3秒内的语音指令。\n需要掌控板v1.1以上硬件版本。",yF.mpython_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_button_A="P5(按键A)",yF.mpython_button_B="P11(按键B)",yF.mpython_PIN7_RGB="P7(板载RGB)",yF.MPYTHON_PWM_PIN_P7="P7 (掌控板)",yF.MPYTHON_PWM_PIN_P9="P9 (掌控实验箱)",yF.mpython_tem="温度",yF.mpython_hum="湿度",yF.mpython_pre="气压",yF.mpython_left_right="左右",yF.MPYTHON_LEFT="左",yF.MPYTHON_RIGHT="右",yF.mpython_front_back="前后",yF.mpython_vertical="垂直",yF.mpython_horizontal="水平",yF.mpython_run_in_back="后台运行",yF.mpython_run_in_front="前台运行",yF.mpython_draw="绘制",yF.mpython_clear="清除",yF.mpython_s="秒",yF.mpython_ms="毫秒",yF.mpython_us="微秒",yF.mpython_year="年",yF.mpython_month="月",yF.mpython_date="日",yF.mpython_hour="时",yF.mpython_minute="分",yF.mpython_week="星期数",yF.mpython_days="天数",yF.MPYTHON_ORDER="第",yF.MPYTHON_REVERSE_ORDER="倒数第",yF.MATH_RANDOM_RANDRANGE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.MATH_RANDOM_RANDRANGE_TOOLTIP="返回指定递增基数集合中的一个随机数,基数缺省值为1",yF.MATH_RANDOM_RANDRANGE_MESSAGE0="随机数 从递增区间 [%1 ,%2) 递增步长%3",yF.MATH_KEEP_DECIMAL_HELPURL="",yF.MATH_KEEP_DECIMAL_TOOLTIP="",yF.MATH_KEEP_DECIMAL_MESSAGE0="%1 保留 %2 位小数",yF.MPYTHON_MIN="最小值",yF.MPYTHON_MAX="最大值",yF.MPYTHON_LENTH="长度",yF.TUPLE_MIN_MAX_LEN_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.TUPLE_MIN_MAX_LEN_TOOLTIP="",yF.TUPLE_MIN_MAX_LEN_MESSAGE0="元组 %1 %2",yF.TUPLE_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.TUPLE_ITEM_EXIST_TOOLTIP="",yF.TUPLE_ITEM_EXIST_MESSAGE0="元组%1 包含%2",yF.LIST_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.LIST_ITEM_EXIST_TOOLTIP="",yF.LIST_ITEM_EXIST_MESSAGE0="列表%1 包含%2",yF.PARTS_OF_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.PARTS_OF_TUPLE_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.PARTS_OF_TUPLE_MESSAGE0="返回元组%1 取第%2 项到尾项",yF.PARTS_OF_TUPLE2_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.PARTS_OF_TUPLE2_TOOLTIP="递增顺序取项\n举例:\n 倒数第5到倒数第2;\n 第0到第5",yF.PARTS_OF_TUPLE2_MESSAGE0="返回元组%1 取%2 %3 项到 %4 %5 项",yF.PARTS_OF_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.PARTS_OF_LIST_TOOLTIP="递增顺序取项\n举例:\n 倒数第5到倒数第2;\n 第0到第5",yF.PARTS_OF_LIST_MESSAGE0="返回列表%1 取%2 %3 项到 %4 %5 项",yF.LIST_TO_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.LIST_TO_TUPLE_TOOLTIP="",yF.LIST_TO_TUPLE_MESSAGE0="列表%1 转元组",yF.tuple_create_with_MESSAGE0="定义元组 %1 = %2 ",yF.tuple_create_with_TOOLTIP="只包含一个元素时,需要在元素后面添加逗号",yF.tuple_create_with_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.tuple_order_item_MESSAGE0="元组%1 %2 %3 项",yF.tuple_order_item_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.tuple_order_item_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.LIST_ORDER_ITEM_MESSAGE0="列表%1 %2 %3 项",yF.LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SET_LIST_ORDER_ITEM_MESSAGE0="设列表%1 %2 %3 项为%4",yF.SET_LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.SET_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.INSERT_LIST_ORDER_ITEM_MESSAGE0="插入列表%1 %2 %3 项为%4",yF.INSERT_LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.INSERT_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SET_TUPLE_ORDER_ITEM_MESSAGE0="设元组%1 %2 %3 项为%4",yF.SET_TUPLE_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.SET_TUPLE_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_CREATE_WITH_TOOLTIP="",yF.DICT_CREATE_WITH_MESSAGE0="定义字典 %1 = %2",yF.SET_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SET_CREATE_WITH_TOOLTIP="",yF.SET_CREATE_WITH_MESSAGE0="定义集合 %1 = %2",yF.SET_UPDATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SET_UPDATE_WITH_TOOLTIP="添加参数可为字符串、列表、元组、集合、字典(只添加key),已有元素则不进行操作",yF.SET_UPDATE_WITH_MESSAGE0="集合 %1 添加 %2",yF.INTERSECTION_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.INTERSECTION_OF_SETS_TOOLTIP="",yF.INTERSECTION_OF_SETS_MESSAGE0="取 %1 集合 %2 集合 %3",yF.MPYTHON_INTERSECTION="交集",yF.MPYTHON_UNION="并集",yF.MPYTHON_DIFFERENCE="差集",yF.SETS_UPDATE_WAYS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SETS_UPDATE_WAYS_TOOLTIP="",yF.SETS_UPDATE_WAYS_MESSAGE0="集合 %1 更新为 与集合 %2 的 %3",yF.SUBSET_SUPERSET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SUBSET_SUPERSET_TOOLTIP="",yF.SUBSET_SUPERSET_MESSAGE0="集合 %1 为集合 %2 的 %3",yF.MPYTHON_SUBSET="子集",yF.MPYTHON_SUPERSET="超集",yF.LEN_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.LEN_OF_SETS_TOOLTIP="",yF.LEN_OF_SETS_MESSAGE0="集合 %1 长度",yF.GET_SETS_POP_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.GET_SETS_POP_TOOLTIP="",yF.GET_SETS_POP_MESSAGE0="返回随机项并移除之 从集合 %1",yF.CREATE_EMPTY_SET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.CREATE_EMPTY_SET_TOOLTIP="",yF.CREATE_EMPTY_SET_MESSAGE0="创建空集合 %1",yF.BIT_INVERSION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.BIT_INVERSION_TOOLTIP="对数据的每个二进制位取反",yF.BIT_INVERSION_MESSAGE0="二进制取反 %1",yF.TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.SET_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP="项可为字符串、已创建变量变量、元组",yF.DICT_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序计数从0开始,倒序计数从1开始",yF.DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_KEY_VALUE_TOOLTIP="",yF.DICT_KEY_VALUE_MESSAGE0="字典%1 键%2 的值",yF.ADD_DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.ADD_DICT_KEY_VALUE_TOOLTIP="已有该键则更新该键",yF.ADD_DICT_KEY_VALUE_MESSAGE0="字典%1 添加键%2 值%3",yF.DICT_LENGTH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_LENGTH_TOOLTIP="",yF.DICT_LENGTH_MESSAGE0="字典%1 长度",yF.DICT_KEY_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_KEY_EXIST_TOOLTIP="",yF.DICT_KEY_EXIST_MESSAGE0="字典%1 包含键%2",yF.DICT_KEY_OR_VAL_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.DICT_KEY_OR_VAL_LIST_TOOLTIP="",yF.DICT_KEY_OR_VAL_LIST_MESSAGE0="字典%1 %2的列表",yF.DICT_KEYS="键",yF.DICT_VALUES="值",yF.mpython_lists_append_MESSAGE0="列表%1 末尾添加项%2",yF.mpython_lists_append_TOOLTIP="",yF.mpython_lists_append_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_lists_extend_MESSAGE0="列表%1 追加列表%2",yF.mpython_lists_extend_TOOLTIP="",yF.mpython_lists_extend_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_lists_clear_MESSAGE0="列表%1 清空",yF.mpython_lists_clear_TOOLTIP="",yF.mpython_lists_clear_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.MPYTHON_REMOVE_REPETITION_MESSAGE0="列表%1 移除重复",yF.MPYTHON_REMOVE_REPETITION_TOOLTIP="",yF.MPYTHON_REMOVE_REPETITION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_Timer_value_MESSAGE0="定时器 %1 的计数值",yF.mpython_Timer_value_TOOLTIP="获取并返回计时器当前计数值",yF.mpython_Timer_deinit_MESSAGE0="清除 定时器/事件 %1",yF.mpython_Timer_deinit_TOOLTIP="取消定时器的初始化。停止计时器,并禁用计时器外围设备",yF.mpython_Interrupt_AB_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",yF.mpython_Interrupt_AB_TOOLTIP="",yF.mpython_Interrupt_AB_MESSAGE0="当按键 %1 被 %2 时",yF.mpython_Interrupt_pin_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",yF.mpython_Interrupt_pin_TOOLTIP="上升沿触发:由低电平到高电平;下降沿触发:由高电平到低电平",yF.mpython_Interrupt_pin_MESSAGE0="当引脚 %1 电平 %2 时",yF.mpython_Interrupt_pin_IRQ_FALLING="↘ 从高到低",yF.mpython_Interrupt_pin_IRQ_RISING="↗ 从低到高",yF.mpython_IRQ_FALLING="按下",yF.mpython_IRQ_RISING="松开",yF.mpython_PERIODIC="重复执行",yF.mpython_ONE_SHOT="延时执行",yF.MPYTHON_IS_SHAKED_MESSAGE0="掌控板 %1",yF.MPYTHON_IS_SHAKED_HELPURL="",yF.MPYTHON_IS_SHAKED_TOOLTIP="",yF.MPYTHON_IS_SHAKED="被摇晃",yF.MPYTHON_IS_THROWN="被抛起",yF.MPYTHON_SHAKE_DETECTOR_MESSAGE0="当掌控板 %1 时",yF.MPYTHON_SHAKE_DETECTOR_HELPURL="",yF.MPYTHON_SHAKE_DETECTOR_TOOLTIP="",yF.MPYTHON_IS_TILTED_MESSAGE0="掌控板 %1",yF.MPYTHON_IS_TILTED_HELPURL="",yF.MPYTHON_IS_TILTED_TOOLTIP="",yF.MPYTHON_TILT_DETECTOR_MESSAGE0="当掌控板 %1 时",yF.MPYTHON_TILT_DETECTOR_HELPURL="",yF.MPYTHON_TILT_DETECTOR_TOOLTIP="",yF.MPYTHON_DIRECTION_FORWARD="向前倾斜",yF.MPYTHON_DIRECTION_BACK="向后倾斜",yF.MPYTHON_DIRECTION_RIGHT="向右倾斜",yF.MPYTHON_DIRECTION_LEFT="向左倾斜",yF.MPYTHON_DIRECTION_NONE="平放",yF.MPYTHON_TOUCH_EVENT_MESSAGE0="当触摸键 %1 被 %2 时",yF.MPYTHON_TOUCH_EVENT_HELPURL="",yF.MPYTHON_TOUCH_EVENT_TOOLTIP="",yF.MPYTHON_TOUCH_EVENT_PRESSED="触摸",yF.MPYTHON_TOUCH_EVENT_UNPRESSED="释放",yF.MPYTHON_CUSTOM_EVENT_MESSAGE0="事件 %1 : 当 %2 时",yF.MPYTHON_CUSTOM_EVENT_HELPURL="",yF.MPYTHON_CUSTOM_EVENT_TOOLTIP="自定义事件与定时器共用 1/2/4/7/8/9/10,不可同时占用一个端口。\n最大同时创建4个事件/定时器,如果存在冲突,请尝试换一个编号。",yF.mpython_music_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_music_range_pitch_TOOLTIP="时长为单个频率的时长",yF.mpython_music_range_pitch_MESSAGE0="播放音调 从%1 到%2 步长%3 时长%4 毫秒 引脚 %5",yF.mpython_neopixel_init_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_neopixel_init_TOOLTIP="",yF.mpython_neopixel_init_MESSAGE0="灯带初始化 名称%1 引脚%2 数量%3",yF.MPYTHON_NEOPIXEL_RAINBOW_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP="",yF.MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0="彩虹灯效 灯带%1 数量 %2 亮度 %3 偏移 %4",yF.MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",yF.MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP="亮度调节, 范围 0 ~ 100",yF.MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0="灯带 %1 设置亮度为 %2",yF.mpython_neopixel_single_TOOLTIP="",yF.mpython_neopixel_single_MESSAGE0="灯带%1 %2号 红%3 绿%4 蓝%5",yF.mpython_neopixel_single_gui_MESSAGE0="灯带 %1 %2号 颜色为 %3",yF.mpython_neopixel_single_gui_TOOLTIP="",yF.mpython_neopixel_show_TOOLTIP="",yF.mpython_neopixel_show_MESSAGE0="灯带%1 设置生效",yF.mpython_neopixel_off_TOOLTIP="",yF.mpython_neopixel_off_MESSAGE0="灯带%1 关闭",yF.mpython_neopixel_all_TOOLTIP="",yF.mpython_neopixel_all_MESSAGE0="灯带%1 全亮 红%2 绿%3 蓝%4",yF.mpython_neopixel_all_gui_TOOLTIP="",yF.mpython_neopixel_all_gui_MESSAGE0="灯带%1 全亮 颜色%2",yF.mpython_image_to_oled_MESSAGE0="打开图片 %1 宽 %2 高 %3",yF.mpython_image_to_oled_TOOLTIP="",yF.mpython_time_localtime_MESSAGE0="本地时间 %1",yF.mpython_time_localtime_TOOLTIP="星期数:返回0~6,周一为0,周日为6\n天数:获取当前日期是一年中的第几天\n建议先连接wifi并获取网络时间",yF.mpython_WiFi_config_MESSAGE0="Wi-Fi 配置信息 %1",yF.mpython_WiFi_config_TOOLTIP="netmask-子网掩码;gateway-网关",yF.mpython_time_ticks_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",yF.mpython_time_ticks_MESSAGE0="运行时间 %1",yF.mpython_time_ticks_TOOLTIP="",yF.MPYTHON_TIMER_DEF_MESSAGE0="定义定时器 %1",yF.MPYTHON_TIMER_INIT_MESSAGE0="启动定时器 %1 %2 周期 %3 毫秒",yF.mpython_Timer_MESSAGE0="设置定时器 %1 %2 周期 %3 毫秒",yF.mpython_Timer_TOOLTIP="创建定时器n,n=1-14。\n最大同时创建4个定时器,如果存在冲突,请尝试换一个编号。\n3用于内部程序,\n5/6用于伺服系统和ADC,\n11用于摇晃检测,\n12用于触摸键检测,\n13用于Radio和DHT11/DHT22定时取值(共用),\n14用于OneNET和倾斜检测(共用),\n其余端口与自定义事件共用。",yF.mpython_Timer_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",yF.mpython_sway_xyz_MESSAGE0="%1 摇晃掌控板",yF.mpython_sway_xyz_TOOLTIP="掌控板正面朝上,触摸键 'python' 靠近使用者,开始左右或前后摇晃掌控板",yF.mpython_init_bluetooth_MESSAGE0="初始化 蓝牙名称%1",yF.mpython_init_bluetooth_TOOLTIP="初始化 蓝牙名称",yF.mpython_OnOff_bluetooth_MESSAGE0="蓝牙设备 %1广播",yF.mpython_OnOff_bluetooth_TOOLTIP="蓝牙设备 开启或关闭广播",yF.mpython_HID_keyboard_bluetooth_MESSAGE0="键盘 按键%1",yF.mpython_HID_keyboard_bluetooth_TOOLTIP="HID键盘设备",yF.mpython_HID_consumer_bluetooth_MESSAGE0="消费类设备%1 状态%2",yF.mpython_HID_consumer_bluetooth_TOOLTIP="模拟HID消费类设备的控制器,如蓝牙遥控器",yF.mpython_HID_release_keyboard_bluetooth_MESSAGE0="键盘 释放按键",yF.mpython_HID_release_keyboard_bluetooth_TOOLTIP="键盘设备",yF.mpython_HID_mouse_bluetooth_MESSAGE0="鼠标%1",yF.mpython_HID_mouse_bluetooth_TOOLTIP="鼠标设备",yF.mpython_HID_release_mouse_bluetooth_MESSAGE0="鼠标 释放按键",yF.mpython_HID_release_mouse_bluetooth_TOOLTIP="鼠标设备",yF.mpython_HID_mouse_pointer_bluetooth_MESSAGE0="鼠标 指针移动 x%2 y%1",yF.mpython_HID_mouse_pointer_bluetooth_TOOLTIP="鼠标指针坐标x,y轴的相对位移,范围-1023 ~ 1023",yF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="键盘 按键%1 组合按键%2",yF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="如果想使用多个按键组合指令,可以用“|”或运算",yF.mpython_HID_keyboard_part_bluetooth_MESSAGE0="键盘 组合按键%1",yF.mpython_HID_keyboard_part_bluetooth_TOOLTIP="如果想使用多个按键组合指令,可以用“|”或运算",yF.mpython_HID_keyboard_part_bluetooth_HELPURL="",yF.mpython_init_wifi_MESSAGE0="连接 Wi-Fi 名称 %1 密码 %2",yF.mpython_init_wifi_TOOLTIP="让掌控板接入Wi-Fi环境",yF.MPYTHON_WIFI_IFCONFIG_MESSAGE0="Wi-Fi 设置静态IP %1 IP 地址 %2 子网掩码 %3 默认网关 %4 DNS %5",yF.MPYTHON_WIFI_IFCONFIG_TOOLTIP="",yF.MPYTHON_WIFI_IFCONFIG_HELPURL="",yF.mpython_dis_WiFi_MESSAGE0="断开 Wi-Fi 连接",yF.mpython_dis_WiFi_TOOLTIP="",yF.MPYTHON_ENABLE_APWIFI_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",yF.MPYTHON_ENABLE_APWIFI_TOOLTIP="密码可以为空,或者8位以上的字母或数字。\nAP模式仅用于掌控板之间的相互通信,不可以作为热点,令其它设备上网。",yF.MPYTHON_ENABLE_APWIFI_MESSAGE0="开启 AP模式 名称 %1 密码 %2 信道 %3",yF.mpython_disable_APWiFi_MESSAGE0="关闭 AP模式",yF.mpython_disable_APWiFi_TOOLTIP="",yF.mpython_ntptime_settime_MESSAGE0="同步网络时间 时区 %1 授时服务器 %2",yF.mpython_ntptime_settime_TOOLTIP="NTP时间同步是一种时间同步网络技术",yF.mpython_wifi_get_date_MESSAGE0="获取当前日期",yF.mpython_wifi_get_date_TOOLTIP="获取当前日期字符串 示例:2020年12月12日",yF.mpython_wifi_get_time_MESSAGE0="获取当前时间",yF.mpython_wifi_get_time_TOOLTIP="获取当前时间字符串",yF.mpython_ntptime_timezone_E1="东1区",yF.mpython_ntptime_timezone_E2="东2区",yF.mpython_ntptime_timezone_E3="东3区",yF.mpython_ntptime_timezone_E4="东4区",yF.mpython_ntptime_timezone_E5="东5区",yF.mpython_ntptime_timezone_E6="东6区",yF.mpython_ntptime_timezone_E7="东7区",yF.mpython_ntptime_timezone_E8="东8区",yF.mpython_ntptime_timezone_E9="东9区",yF.mpython_ntptime_timezone_E10="东10区",yF.mpython_ntptime_timezone_E11="东11区",yF.mpython_ntptime_timezone_E12="东12区",yF.mpython_ntptime_timezone_0="中时区",yF.mpython_ntptime_timezone_W1="西1区",yF.mpython_ntptime_timezone_W2="西2区",yF.mpython_ntptime_timezone_W3="西3区",yF.mpython_ntptime_timezone_W4="西4区",yF.mpython_ntptime_timezone_W5="西5区",yF.mpython_ntptime_timezone_W6="西6区",yF.mpython_ntptime_timezone_W7="西7区",yF.mpython_ntptime_timezone_W8="西8区",yF.mpython_ntptime_timezone_W9="西9区",yF.mpython_ntptime_timezone_W10="西10区",yF.mpython_ntptime_timezone_W11="西11区",yF.mpython_ntptime_timezone_W12="西12区",yF.FILE_TO_LIST_HELPURL="",yF.FILE_TO_LIST_TOOLTIP="读出指定路径的文本文件内容(仅限utf-8格式),并转为列表形式,以分隔符分隔。",yF.FILE_TO_LIST_MESSAGE0="读取文本文件 %1 为列表 ,以 %2 分隔",yF.FILE_TO_BIN_HELPURL="",yF.FILE_TO_BIN_TOOLTIP="以二进制格式读出指定路径的文件内容。";yF.FILE_TO_BIN_MESSAGE0="读取文件 %1 的二进制内容",yF.MPYTHON_INIT_FILE_HELPURL="",yF.MPYTHON_INIT_FILE_TOOLTIP="初始化一个文本文件,如果文件不存在则创建文件,如果文件存在则清空内容。",yF.MPYTHON_INIT_FILE_MESSAGE0="初始化文本文件 %1",yF.MPYTHON_WRITE_FILE_HELPURL="",yF.MPYTHON_WRITE_FILE_TOOLTIP="向指定路径的文本文件写入内容,如果文件不存在则创建文件。",yF.MPYTHON_WRITE_FILE_MESSAGE0="向文本文件 %1 写入内容 %2 ,以 %3 分隔",yF.MPYTHON_SDCARD_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",yF.MPYTHON_SDCARD_INIT_TOOLTIP="sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\n须确保 SPI 总线的引脚与 micro SD 卡物理连接正确,并预先使用 FAT 或 FAT32 文件系统格式化 micro SD 卡。",yF.MPYTHON_SDCARD_INIT_MESSAGE0="初始化 SD 卡",yF.MPYTHON_SDCARD_MOUNT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",yF.MPYTHON_SDCARD_MOUNT_TOOLTIP="挂载 SD 卡到指定路径。",yF.MPYTHON_SDCARD_MOUNT_MESSAGE0="挂载 SD 卡到路径 %1",yF.MPYTHON_ENTER="回车",yF.MPYTHON_COMMA="逗号",yF.MPYTHON_SEMICOLON="分号",yF.MPYTHON_SPACE="空格",yF.mpython_wifi_clock_MESSAGE0="Wi-Fi 模拟时钟 x %1 y %2 半径 %3",yF.mpython_wifi_clock_TOOLTIP="需连接 Wi-Fi 使用",yF.mpython_def_clock_MESSAGE0="初始化时钟%1 x %2 y %3 半径 %4",yF.mpython_def_clock_TOOLTIP="",yF.mpython_settime_clock_MESSAGE0="时钟%1 读取时间",yF.mpython_settime_clock_TOOLTIP="",yF.mpython_draw_clear_clock_MESSAGE0="%1 时钟 %2",yF.mpython_draw_clear_clock_TOOLTIP="",yF.mpython_tinywebio_start_MESSAGE0="启动 TinyWebIO 服务 %1",yF.mpython_tinywebio_start_TOOLTIP="启动该服务需连接Wi-Fi,TinyWebIO服务为App Inventor应用提供远程控制接口的掌控板工具包",yF.mpython_tinywebio_client_setup_HELPURL="",yF.mpython_tinywebio_client_setup_TOOLTIP="向服务器发布的数据项(逗号分隔)\nbuttona/b 按键状态\ntouchpadp/y/t/h/o/n 触摸按键值\nlight 光线值\nsound 声音值\naccelerometer 三轴加速度值\nid 掌控板标识\ntime 时间戳\npind 数字IO引脚\npina 模拟IO引脚\n----------\n从服务器读取的数据项(逗号分隔)\nrgb0/1/2 RGB灯珠\noled OLED显示屏\nmusic 音乐\nservo 舵机\npind 数字IO引脚\npina 模拟IO引脚",yF.mpython_tinywebio_client_setup_MESSAGE0="设置 TinyWebIO 客户端参数 %1 TinyWebDB服务器地址 %2 向服务器发布的数据项 %3 从服务器读取的数据项 %4 存取服务器的时间间隔(ms) %5",yF.mpython_tinywebio_client_action_HELPURL="",yF.mpython_tinywebio_client_action_TOOLTIP="",yF.mpython_tinywebio_client_action_MESSAGE0="%1 TinyWebIO 客户端",yF.mpython_tinywebio_client_action_start="启动",yF.mpython_tinywebio_client_action_stop="停止",yF.MPYTHON_CUSTOM_CODE_HELPURL="",yF.MPYTHON_CUSTOM_CODE_TOOLTIP="",yF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定义代码 %2 %3",yF.MPYTHON_CUSTOM_TYPE_IMPORT="置顶",yF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",yF.mpython_servo_angle0_MESSAGE0="设置舵机 %1 角度为 %2",yF.mpython_servo_angle_MESSAGE0="设置舵机 %1 角度为 %2 脉宽从 %3 到 %4 最大角度 %5",yF.mpython_servo_angle_TOOLTIP="电源线Vcc(红色)连接拓展板电源口V,地线GND(棕色)连接拓展板地线口G,控制信号线(橙色)连接所选的拓展板引脚",yF.mpython_dh11_hum_tem_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",yF.mpython_dh11_hum_tem_MESSAGE0="DHT11 %1 %2",yF.mpython_dh11_hum_tem_TOOLTIP="DHT11上的 + 连接拓展板的电源口 V ,- 连接拓展板的地线口 G ,out 连接拓展板的引脚 0(即选引脚)",yF.MPYTHON_DH22_HUM_TEM_MESSAGE0="DHT22 %1 %2",yF.MPYTHON_DH22_HUM_TEM_TOOLTIP="",yF.MPYTHON_DH22_HUM_TEM_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",yF.mpython_music_note_MESSAGE0="音符 %1 %2 : %3",yF.mpython_music_note_TOOLTIP="音符,如C4:4",yF.mpython_return_list_MESSAGE0="定义列表 %1 = %2",yF.mpython_return_list_TOOLTIP="",yF.mpython_display_Show_MESSAGE0="OLED 显示生效",yF.mpython_display_Show_TOOLTIP="",yF.mpython_display_DispChar_MESSAGE0="显示文本 x %1 y %2 内容 %3 模式 %4 %5",yF.mpython_display_DispChar_TOOLTIP="OLED分辨率128x64",yF.mpython_display_DispChar_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",yF.mpython_display_DispChar_5lines_MESSAGE0="OLED 第%1 行显示 %2 模式 %3 %4",yF.mpython_display_DispChar_5lines_TOOLTIP="OLED分辨率128x64",yF.mpython_line1="1",yF.mpython_line2="2",yF.mpython_line3="3",yF.mpython_line4="4",yF.mpython_line5="5",yF.MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0="OLED 清除第 %1 行",yF.MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP="OLED分辨率128x64",yF.MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL="",yF.mpython_display_fill_0="清空",yF.mpython_display_fill_1="全亮",yF.mpython_display_invert_0="黑底",yF.mpython_display_invert_1="白底",yF.mpython_display_show="生效",yF.mpython_display_fill_MESSAGE0="OLED 显示 %1",yF.mpython_display_fill_TOOLTIP="",yF.mpython_display_pixel_0="暗",yF.mpython_display_pixel_1="亮",yF.mpython_display_pixel_MESSAGE0="描点 x %1 y %2 为 %3",yF.mpython_display_pixel_TOOLTIP="",yF.mpython_display_hline_0="擦除",yF.mpython_display_hline_1="绘制",yF.mpython_display_hline_MESSAGE0="%1 水平线%2 x%3 y%4 长度%5",yF.mpython_display_hline_TOOLTIP="",yF.mpython_ProgressBar_MESSAGE0="进度条%1 x%2 y%3 宽%4 高%5 进度%6",yF.mpython_ProgressBar_TOOLTIP="",yF.mpython_stripBar_MESSAGE0="柱状条%1 x%2 y%3 宽%4 高%5 进度%6",yF.mpython_stripBar_TOOLTIP="",yF.MPYTHON_QR_CODE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",yF.MPYTHON_QR_CODE_TOOLTIP="",yF.MPYTHON_QR_CODE_MESSAGE0="在坐标 x %1 y %2 绘制二维码 %3 尺寸 %4",yF.MPYTHON_DISPLAY_MODE_0="擦除",yF.MPYTHON_DISPLAY_MODE_1="绘制",yF.MPYTHON_DISPLAY_HOLLOW="空心",yF.MPYTHON_DISPLAY_SOLID="实心",yF.MPYTHON_DISPLAY_HVLINE_MESSAGE0="%1 %2 线 %3 x %4 y %5 长度 %6",yF.MPYTHON_DISPLAY_HVLINE_TOOLTIP="",yF.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0="%1 %2 矩形 %3 x %4 y %5 宽 %6 高 %7",yF.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP="",yF.MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0="%1 %2 圆 %3 x %4 y %5 半径 %6",yF.MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP="",yF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0="%1 %2 三角 %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",yF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP="",yF.MPYTHON_RGB_0="0 #",yF.MPYTHON_RGB_1="1 #",yF.MPYTHON_RGB_2="2 #",yF.MPYTHON_RGB_ALL="所有",yF.MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0="设置 %1 RGB 灯颜色为 %2",yF.MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0="设置 %1 RGB 灯颜色为 R %2 G %3 B %4",yF.MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.MPYTHON_OFF_RGB_LIST_MESSAGE0="关闭 %1 RGB 灯",yF.MPYTHON_OFF_RGB_LIST_TOOLTIP="",yF.MPYTHON_MUSIC_PLAY_MESSAGE0="播放音乐 %1 引脚 %2",yF.MPYTHON_MUSIC_PLAY_TOOLTIP="播放内置的音乐",yF.MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0="播放音乐 %1 直到完成 , 引脚 %2",yF.MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP="播放内置的音乐",yF.MPYTHON_MUSIC_GE_CHANG_ZU_GUO="歌唱祖国",yF.MPYTHON_MUSIC_DONG_FANG_HONG="东方红",yF.MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE="彩云追月",yF.MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI="走进新时代",yF.MPYTHON_MUSIC_MO_LI_HUA="茉莉花",yF.MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO="沂蒙山小调",yF.mpython_display_vline_MESSAGE0="%1 垂直线%2 x%3 y%4 长度%5",yF.mpython_display_vline_TOOLTIP="",yF.mpython_display_line_MESSAGE0="%1 线%2 x1 %3 y1 %4 到 x2 %5 y2 %6",yF.mpython_display_line_TOOLTIP="",yF.mpython_display_rect_MESSAGE0="%1 边框%2 x %3 y %4 宽 %5 高 %6",yF.mpython_display_rect_TOOLTIP="",yF.mpython_display_RoundRect_MESSAGE0="%1 弧角边框%2 x %3 y %4 宽 %5 高 %6 半径%7",yF.mpython_display_RoundRect_TOOLTIP="",yF.mpython_display_fill_rect_MESSAGE0="%1 矩形%2 x %3 y %4 宽 %5 高 %6 ",yF.mpython_display_fill_rect_TOOLTIP="",yF.mpython_display_fill_circle_MESSAGE0="%1 实心圆%2 x %3 y %4 半径 %5",yF.mpython_display_fill_circle_TOOLTIP="",yF.mpython_display_circle_MESSAGE0="%1 空心圆%2 x %3 y %4 半径 %5",yF.mpython_display_circle_TOOLTIP="",yF.mpython_display_triangle_MESSAGE0="%1 空心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",yF.mpython_display_triangle_TOOLTIP="",yF.mpython_display_fill_triangle_MESSAGE0="%1 实心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",yF.mpython_display_fill_triangle_TOOLTIP="",yF.mpython_display_Bitmap_MESSAGE0="%1 图像 x%2 y%3 宽%4 高%5 16进制图像数据 %6",yF.mpython_display_Bitmap_TOOLTIP="将16进制图像数据显示在OLED屏的指定位置",yF.MPYTHON_GET_PBM_DATA_MESSAGE0="获取内置图像 %1 模式%2",yF.MPYTHON_GET_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp 格式的单色图像文件,获取指定路径的图像文件数据,返回一个元组对象。",yF.MPYTHON_GET_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",yF.MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0="获取自定义图像 %1 模式%2",yF.MPYTHON_DISPLAY_PBM_DATA_MESSAGE0="在坐标 x %1 y %2 显示图像 %3",yF.MPYTHON_DISPLAY_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的单色图像文件",yF.MPYTHON_DISPLAY_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",yF.MPYTHON_BITMAP_FROM_FILE_MESSAGE0="在坐标 x %1 y %2 显示图像 %5 宽 %3 高 %4",yF.MPYTHON_BITMAP_FROM_FILE_TOOLTIP="",yF.MPYTHON_BITMAP_FROM_FILE_HELPURL="",yF.mpython_horizontal="水平",yF.mpython_vertical="垂直",yF.mpython_display_FrameBuffer_MESSAGE0="构建帧 列表 %1 长 %2 宽 %3 扫描模式 %4",yF.mpython_display_FrameBuffer_TOOLTIP="用图像取模后数据的列表 ,创建128x64的帧缓存区,以储存图片帧",yF.MPYTHON_FONT_DIGIFACE_11="仿数码管 11像素",yF.MPYTHON_FONT_DIGIFACE_16="仿数码管 16像素",yF.MPYTHON_FONT_DIGIFACE_21="仿数码管 21像素",yF.MPYTHON_FONT_DIGIFACE_30="仿数码管 30像素",yF.MPYTHON_FONT_DIGIFACE_44="仿数码管 44像素",yF.MPYTHON_FONT_DIGIFACE_IT_30="仿数码管 斜体 30像素",yF.MPYTHON_FONT_DIGIFACE_IT_42="仿数码管 斜体 42像素",yF.MPYTHON_FONT_DVSM_12="DejaVu Sans Mono 12像素",yF.MPYTHON_FONT_DVSM_16="DejaVu Sans Mono 16像素",yF.MPYTHON_FONT_DVSM_21="DejaVu Sans Mono 21像素",yF.MPYTHON_FONT_DVSMB_12="DejaVu Sans Mono 黑体 12像素",yF.MPYTHON_FONT_DVSMB_16="DejaVu Sans Mono 黑体 16像素",yF.MPYTHON_FONT_DVSMB_21="DejaVu Sans Mono 黑体 21像素",yF.MPYTHON_FONT_WRAP="自动换行",yF.MPYTHON_FONT_NO_WRAP="不换行",yF.MPYTHON_FACE_1="心形",yF.MPYTHON_FACE_2="心形(小)",yF.MPYTHON_FACE_3="高兴",yF.MPYTHON_FACE_4="笑脸",yF.MPYTHON_FACE_5="伤心",yF.MPYTHON_FACE_6="困惑",yF.MPYTHON_FACE_7="生气",yF.MPYTHON_FACE_8="睡着",yF.MPYTHON_FACE_9="惊讶",yF.MPYTHON_FACE_10="愚蠢",yF.MPYTHON_FACE_11="极妙",yF.MPYTHON_FACE_12="无聊",yF.MPYTHON_FACE_ROCK="石头",yF.MPYTHON_FACE_PAPER="布",yF.MPYTHON_FACE_SCISSORS="剪刀",yF.MPYTHON_FACE_ROCK_S="石头(小)",yF.MPYTHON_FACE_PAPER_S="布(小)",yF.MPYTHON_FACE_SCISSORS_S="剪刀(小)",yF.MPYTHON_DISPLAY_FONT_MESSAGE0="在坐标 x %1 y %2 显示 %3 以 %4 字体 %5",yF.MPYTHON_DISPLAY_FONT_TOOLTIP="",yF.MPYTHON_DISPLAY_FONT_HELPURL="",yF.mpython_front="正向",yF.mpython_reverse="反转",yF.mpython_display_blit_MESSAGE0="显示帧 坐标x %1 y %2",yF.mpython_display_blit_TOOLTIP="",yF.mpython_front_reverse_MESSAGE0="像素点bit %1",yF.mpython_front_reverse_TOOLTIP="用于显示之前",yF.mpython_images_append_MESSAGE0="动图显示 帧数%1 周期%2 长%3 宽%4",yF.mpython_images_append_TOOLTIP="上传至掌控板的pbm图片需命名为IMAGE.数字,后缀为pbm。如:IMAGE.1.pbm。帧数为7则数字为1至7",yF.mpython_button_is_pressed_MESSAGE0="按键%1 被按下",yF.mpython_button_is_pressed_TOOLTIP="",yF.mpython_button_both_pressed_MESSAGE0="AB按键都按下",yF.mpython_button_both_pressed_TOOLTIP="",yF.mpython_touchPad_value_MESSAGE0="按键%1 被触摸",yF.mpython_touchPad_value_TOOLTIP="",yF.mpython_touchPad_value_num_MESSAGE0="按键%1 触摸值",yF.mpython_touchPad_value_num_TOOLTIP="",yF.mpython_read_digital_MESSAGE0="读取引脚%1 数字值",yF.mpython_read_digital_TOOLTIP="",yF.mpython_read_DS18B20_MESSAGE0="DS18B20 防水温度传感器 引脚 %1",yF.mpython_read_DS18B20_TOOLTIP="",yF.mpython_read_DS18B20_HELPURL="http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",yF.mpython_set_digital_MESSAGE0="设置引脚 %2 数字值为 %1",yF.mpython_set_digital_TOOLTIP="",yF.mpython_read_analog_MESSAGE0="读取引脚 %1 模拟值",yF.mpython_read_analog_TOOLTIP="",yF.mpython_set_analog_MESSAGE0="设置引脚 %2 模拟值(PWM)为 %1",yF.mpython_set_analog_TOOLTIP="模拟输出是通过IO引脚输出脉宽调制信号,输出指定的电压值,简称PWM。",yF.mpython_set_RGB_MESSAGE0="设置 %1 号 RGB 灯颜色为 R %2 G %3 B %4",yF.mpython_set_RGB_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.mpython_set_RGB_color_MESSAGE0="设置 %1 号 RGB 灯颜色为 %2",yF.mpython_set_RGB_color_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.mpython_set_RGB_all_MESSAGE0="设置所有 RGB 灯颜色为 R %1 G %2 B %3",yF.mpython_set_RGB_all_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.mpython_set_RGB_color_all_MESSAGE0="设置所有 RGB 灯颜色为 %1",yF.mpython_set_RGB_color_all_TOOLTIP="原生亮度的 1/30 能较好显示色差",yF.mpython_fresh_RGB_MESSAGE0="RGB 灯设置生效",yF.mpython_fresh_RGB_TOOLTIP="",yF.mpython_off_RGB_MESSAGE0="关闭 RGB 灯",yF.mpython_off_RGB_TOOLTIP="",yF.mpython_buzz_state_MESSAGE0="停止播放音乐",yF.mpython_buzz_state_TOOLTIP="",yF.mpython_buzz_freq_MESSAGE0="播放连续音调 %1 引脚 %2",yF.mpython_buzz_freq_TOOLTIP="",yF.mpython_buzz_tone_MESSAGE0="播放音调 %1",yF.mpython_buzz_tone_TOOLTIP="",yF.MPYTHON_MUSIC_TONE_TEMPO_HELPURL="",yF.MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP="默认是掌控板的P6引脚",yF.MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0="播放音符 %1 引脚 %2",yF.MPYTHON_MUSIC_TONE_HELPURL="",yF.MPYTHON_MUSIC_TONE_TOOLTIP="",yF.MPYTHON_MUSIC_TONE_MESSAGE0="音调 %1",yF.MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL="",yF.MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP="",yF.MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0="音符 %1 节拍 %2",yF.MPYTHON_MUSIC_TICK_HELPURL="",yF.MPYTHON_MUSIC_TICK_TOOLTIP="",yF.MPYTHON_MUSIC_TICK_MESSAGE0="节拍 %1",yF.MPYTHON_4_LINES_HELPURL="",yF.MPYTHON_4_LINES_TOOLTIP="",yF.MPYTHON_4_LINES_MESSAGE0="%1",yF.NUMBER_1="1",yF.NUMBER_1_2="1/2",yF.NUMBER_1_4="1/4",yF.NUMBER_2="2",yF.NUMBER_4="4",yF.mpython_read_sound_MESSAGE0="声音值",yF.mpython_read_sound_TOOLTIP="",yF.mpython_read_light_MESSAGE0="光线值",yF.mpython_read_light_TOOLTIP="",yF.mpython_accelerometer_get_MESSAGE0="%1 轴加速度",yF.mpython_accelerometer_get_TOOLTIP="",yF.mpython_accelerometer_get_z_MESSAGE0="z轴加速度",yF.mpython_accelerometer_get_z_TOOLTIP="",yF.mpython_accelerometer_get_y_MESSAGE0="y轴加速度",yF.mpython_accelerometer_get_y_TOOLTIP="",yF.mpython_accelerometer_get_x_MESSAGE0="x轴加速度",yF.mpython_accelerometer_get_x_TOOLTIP="",yF.MPYTHON_ACCELEROMETER_RANGE_2G="±2g",yF.MPYTHON_ACCELEROMETER_RANGE_4G="±4g",yF.MPYTHON_ACCELEROMETER_RANGE_8G="±8g",yF.MPYTHON_ACCELEROMETER_RANGE_16G="±16g",yF.MPYTHON_ACCELEROMETER_RES_10_BIT="10bits",yF.MPYTHON_ACCELEROMETER_RES_12_BIT="12bits",yF.MPYTHON_ACCELEROMETER_RES_14_BIT="14bits",yF.MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP="设置加速度范围,默认为 ±2g。",yF.MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0="设置加速度范围为 %1",yF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP="设置加速度分辨率,默认为 10bits。",yF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0="设置加速度分辨率为 %1",yF.MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP="校准加速度计的3个轴(x,y,z)的加速值偏差。\n一般情况下无需校准,只有遇到加速度偏差较大时才要校准。\n x , y , z 为调整偏差值,可修正范围为 ±1g。\n注意:校准数据断电后不会保存。",yF.MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0="校准加速度值 %1 X轴偏差 %2 Y轴偏差 %3 Z轴偏差 %4",yF.MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP="仅适用于掌控板2.0及以上版本",yF.MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0="%1 轴 磁力",yF.MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP="仅适用于掌控板2.0及以上版本",yF.MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0="指南针方向",yF.MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP="仅适用于掌控板2.0及以上版本",yF.MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0="校准指南针",yF.MPYTHON_MAGNETIC_PEELING_TOOLTIP="仅适用于掌控板2.0及以上版本",yF.MPYTHON_MAGNETIC_PEELING_MESSAGE0="去除当前环境磁场",yF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP="仅适用于掌控板2.0及以上版本",yF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0="磁场强度",yF.MPYTHON_TILT_ANGLE_HELPURL="",yF.MPYTHON_TILT_ANGLE_TOOLTIP="",yF.MPYTHON_TILT_ANGLE_MESSAGE0="%1 轴倾斜角",yF.mpython_random_choice_MESSAGE0="返回随机项%1",yF.mpython_random_choice_TOOLTIP="以String格式,返回列表或字符串中的随机项",yF.MACHINE_TIME_PULSE_US_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",yF.MACHINE_TIME_PULSE_US_MESSAGE0="%1 外部 %2 电平持续时间(微秒)",yF.MACHINE_TIME_PULSE_US_TOOLTIP="",yF.MPYTHON_I2C_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",yF.MPYTHON_I2C_INIT_MESSAGE0="初始化i2c 速率%1",yF.MPYTHON_I2C_INIT_TOOLTIP="",yF.MPYTHON_I2C_DEV_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",yF.MPYTHON_I2C_DEV_INIT_MESSAGE0="初始化%1 SCL %2 SDA %3 速率 %4",yF.MPYTHON_I2C_DEV_INIT_TOOLTIP="",yF.MPYTHON_I2C_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",yF.MPYTHON_I2C_SCAN_MESSAGE0="%1 扫描地址",yF.MPYTHON_I2C_SCAN_TOOLTIP="返回一个数组对象",yF.MPYTHON_I2C_DEINIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",yF.MPYTHON_I2C_DEINIT_MESSAGE0="关闭%1总线",yF.MPYTHON_I2C_DEINIT_TOOLTIP="",yF.MPYTHON_I2C_WRITETO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",yF.MPYTHON_I2C_WRITETO_MESSAGE0="从%1 %5 地址%2 写入%3 停止位%4",yF.MPYTHON_I2C_WRITETO_TOOLTIP="地址:Number\n写入:Number、String",yF.MPYTHON_I2C_READFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",yF.MPYTHON_I2C_READFROM_MESSAGE0="从%1 %5 地址%2 读取 字节数%3 停止位%4",yF.MPYTHON_I2C_READFROM_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",yF.MPYTHON_I2C_READFROM_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",yF.MPYTHON_I2C_READFROM_INTO_MESSAGE0="从%1 %6 地址%2 读入缓存区%3 字节数%4 停止位%5",yF.MPYTHON_I2C_READFROM_INTO_TOOLTIP="",yF.MPYTHON_I2C_WRITETO_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",yF.MPYTHON_I2C_WRITETO_MEN_MESSAGE0="从%1 %5 地址%2 寄存器%4 写入%3",yF.MPYTHON_I2C_WRITETO_MEN_TOOLTIP="地址:Number\n写入:Number、String",yF.MPYTHON_I2C_READFROM_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",yF.MPYTHON_I2C_READFROM_MEN_MESSAGE0="从%1 %5 地址%2 寄存器%4 读取 字节数%3",yF.MPYTHON_I2C_READFROM_MEN_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",yF.MPYTHON_I2C_READFROM_MEN_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",yF.MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0="从%1 %6 地址%2 寄存器%5 读入缓存区%3 字节数%4",yF.MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",yF.mpython_print_MESSAGE0="调试输出 %1",yF.mpython_print_TOOLTIP="通过串口调试,输出字符串",yF.MPYTHON_PRINT_TO_CHART_TOOLTIP="",yF.MPYTHON_PRINT_TO_CHART_EMPTY_TITLE="打印数据到图表",yF.MPYTHON_PRINT_TO_CHART_INPUT_WITH="打印数据到图表",yF.MPYTHON_PRINT_TO_CHART_ITEM_TITLE="数据",yF.MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP="",yF.MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD="数据内容",yF.MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP="",yF.MPYTHON_INIT_CHART_TOOLTIP="",yF.MPYTHON_INIT_CHART_EMPTY_TITLE="初始化图表列标题",yF.MPYTHON_INIT_CHART_INPUT_WITH="初始化图表列标题",yF.MPYTHON_INIT_CHART_ITEM_TITLE="标题",yF.MPYTHON_INIT_CHART_ITEM_TOOLTIP="",yF.MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD="数据列标题",yF.MPYTHON_INIT_CHART_CONTAINER_TOOLTIP="",yF.MPYTHON_MS="毫秒",yF.MPYTHON_US="微秒",yF.MPYTHON_TIME_DIFFERENCE_HELPURL="",yF.MPYTHON_TIME_DIFFERENCE_MESSAGE0="返回运行时间差 开始时间 %1 结束时间 %2",yF.MPYTHON_TIME_DIFFERENCE_TOOLTIP="测量连续调用ticks_ms()、ticks_us()间的周期",yF.MPYTHON_TYPE_HELPURL="",yF.MPYTHON_TYPE_MESSAGE0="值 %1 的类型",yF.MPYTHON_TYPE_TOOLTIP="",yF.MPYTHON_TYPE_IS_HELPURL="",yF.MPYTHON_TYPE_IS_MESSAGE0="值 %1 的类型为 %2",yF.MPYTHON_TYPE_IS_TOOLTIP="",yF.MPYTHON_EVAL_HELPURL="",yF.MPYTHON_EVAL_MESSAGE0="计算表达式 %1 的结果",yF.MPYTHON_EVAL_TOOLTIP="计算字符串表达式,并返回结果",yF.MPYTHON_RETURN_HELPURL="",yF.MPYTHON_RETURN_MESSAGE0="返回 %1",yF.MPYTHON_RETURN_TOOLTIP="",yF.MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL="",yF.MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0="I2C数字光线",yF.MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP="",yF.MPYTHON_WIFI_ALL_CONFIG_HELPURL="",yF.MPYTHON_WIFI_ALL_CONFIG_MESSAGE0="WI-FI配置信息",yF.MPYTHON_WIFI_ALL_CONFIG_TOOLTIP="以元组形式返回所有wifi配置信息",yF.MPYTHON_WIFI_ISCONNECTED_HELPURL="",yF.MPYTHON_WIFI_ISCONNECTED_MESSAGE0="已连接到 WI-FI",yF.MPYTHON_WIFI_ISCONNECTED_TOOLTIP="",yF.MPYTHON_INIT_ASSISTANT_WIFI_HELPURL="",yF.MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0="Wi-Fi连接 语音助手 Wi-Fi 名称 %1 密码 %2",yF.MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP="掌控板通过串口把WIF传给语音助手",yF.MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL="",yF.MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP="需要先在文件系统将文件上传到板。",yF.MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0="读取 语音助手 文本文件 %1",yF.MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL="",yF.MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0="数码管显示 %1",yF.MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP="-999~9999",yF.MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL="",yF.MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0="清空数码管",yF.MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP="",yF.MPYTHON_MACHINE_RESET_HELPURL="",yF.MPYTHON_MACHINE_RESET_MESSAGE0="复位",yF.MPYTHON_MACHINE_RESET_TOOLTIP="与按下外部 RESET按键效果一样",yF.MPYTHON_BLUEBIT_GET_COLOR_HELPURL="",yF.MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0="I2C RGB 颜色 %1",yF.MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP="",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL="",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0="I2C RGB 颜色",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP="以列表形式返回",yF.MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL="",yF.MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0="I2C HSV 颜色 %1",yF.MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP="色调(H),饱和度(S),明度(V)",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL="",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0="I2C HSV 颜色",yF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP="色调(H),饱和度(S),明度(V)",yF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0="I2C力传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0="I2C电流传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0="I2C电压传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0="I2C磁场传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0="I2C PH传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0="I2C电导率传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0="I2C气压传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL="",yF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0="I2C光电门传感器 拨码 %1",yF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",yF.MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL="",yF.MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0="拓展板 电机速度 %1",yF.MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP="",yF.MPYTHON_M1M2_LED_OFF_HELPURL="",yF.MPYTHON_M1M2_LED_OFF_MESSAGE0="拓展板 关灯 %1",yF.MPYTHON_M1M2_LED_OFF_TOOLTIP="",yF.MPYTHON_M1M2_LED_ON_HELPURL="",yF.MPYTHON_M1M2_LED_ON_MESSAGE0="拓展板 设灯 %1 亮度 %2",yF.MPYTHON_M1M2_LED_ON_TOOLTIP="",yF.MPYTHON_MUSIC_PIN_P6="默认",yF.MPYTHON_MUSIC_PIN_P6_HELPURL="",yF.MPYTHON_MUSIC_PIN_P6_MESSAGE0="%1",yF.MPYTHON_MUSIC_PIN_P6_TOOLTIP="",yF.MPYTHON_SLEEP_MESSAGE0="等待 %1 %2",yF.MPYTHON_SLEEP_TOOLTIP="在进行下一个命令前,等待设定的时间。\n1秒(s) = 1,000毫秒(ms)\n1秒(s) = 1,000,000微秒(μs)\n毫秒,符号ms(millisecond)\n微秒,符号μs(microsecond)",yF.MICROBIT_MICROBIT_RUNNING_TIME_MESSAGE0="运行时间",yF.MICROBIT_MICROBIT_RUNNING_TIME_TOOLTIP="获取开机或复位后的运行时间(毫秒)。",yF.MICROBIT_MICROBIT_RUNNING_TIME_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.running_time",yF.MICROBIT_MICROBIT_TEMPERATURE_MESSAGE0="温度",yF.MICROBIT_MICROBIT_TEMPERATURE_TOOLTIP="获取 micro:bit 的温度(℃)。",yF.MICROBIT_MICROBIT_TEMPERATURE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.temperature",yF.MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0="播放音乐 %1 等待 %2 循环 %3 引脚 %4",yF.MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP="播放内置的音乐,可以设置等待模式和循环播放。",yF.MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",yF.MICROBIT_MUSIC_PITCH_MESSAGE0="播放音调 %1 %2 延时 %3 毫秒 引脚 %4",yF.MICROBIT_MUSIC_PITCH_TOOLTIP="在设定的时间长度里播放音调。",yF.MICROBIT_MUSIC_PITCH_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",yF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0="引脚 %5 播放音符列表 %1 等待 %2 %3 循环 %4",yF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP="播放音符列表,如C4:4、G4:8等,音符为字符串形式。默认是掌控板的P6引脚",yF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",yF.MICROBIT_MUSIC_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",yF.MICROBIT_MUSIC_RESET_MESSAGE0="恢复音乐设置",yF.MICROBIT_MUSIC_RESET_TOOLTIP="将所有音乐设置 (当前节拍, 音阶和周期) 恢复成默认值。",yF.MICROBIT_MUSIC_STOP_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",yF.MICROBIT_MUSIC_STOP_MESSAGE0="停止播放音乐 引脚 %1",yF.MICROBIT_MUSIC_STOP_TOOLTIP="默认是掌控板的P6引脚",yF.MICROBIT_MUSIC_SET_TEMPO_MESSAGE0="设置每一拍等同 %1 分音符,每分钟节拍数 %2",yF.MICROBIT_MUSIC_SET_TEMPO_TOOLTIP="设置回放速度 (节拍)。一定数量的滴答代表一拍,每拍每分钟播放次数 (BPM 每分钟节拍)。",yF.MICROBIT_MUSIC_SET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",yF.MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0="设置播放速度为 %1 倍",yF.MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP="4分音符为1拍,每分钟节拍数默认120,为1倍的播放速度",yF.MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",yF.MICROBIT_MUSIC_GET_TEMPO_MESSAGE0="获取当前节拍",yF.MICROBIT_MUSIC_GET_TEMPO_TOOLTIP="获取当前节拍: 每节拍滴答数, 每分钟节拍 (BPM)。",yF.MICROBIT_MUSIC_GET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",yF.MICROBIT_NEOPIXEL_INITIALISE_MESSAGE0="使用 引脚 %1 控制, neopixel 彩灯数 %2 ",yF.MICROBIT_NEOPIXEL_INITIALISE_TOOLTIP="控制 neopixels 彩灯。需要设定 neopixels 彩灯数量和控制脚。",yF.MICROBIT_NEOPIXEL_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",yF.MICROBIT_NEOPIXEL_CLEAR_MESSAGE0="清除 neopixels 彩灯 %1",yF.MICROBIT_NEOPIXEL_CLEAR_TOOLTIP="清除所有 neopixels 彩灯",yF.MICROBIT_NEOPIXEL_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",yF.MICROBIT_NEOPIXEL_SHOW_MESSAGE0="显示 neopixels 彩灯 %1",yF.MICROBIT_NEOPIXEL_SHOW_TOOLTIP="显示 / 更新全部 neopixels 彩灯。",yF.MICROBIT_NEOPIXEL_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",yF.MICROBIT_NEOPIXEL_SET_MESSAGE0="neopixels 彩灯控制 %1 设置位置 %2 红色 %3 绿色 %4 蓝色 %5",yF.MICROBIT_NEOPIXEL_SET_TOOLTIP="更新指定的 neopixel 彩灯的红、绿、蓝 (RGB) 颜色",yF.MICROBIT_NEOPIXEL_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",yF.MICROBIT_PIN_TOUCHED_MESSAGE0="引脚 %1 被触摸",yF.MICROBIT_PIN_TOUCHED_TOOLTIP="如果引脚被触摸将返回 “真”。",yF.MICROBIT_PIN_TOUCHED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.is_touched",yF.MICROBIT_PIN_WAS_PRESSED_MESSAGE0="引脚 %1 曾经被触摸",yF.MICROBIT_PIN_WAS_PRESSED_TOOLTIP="如果引脚曾经被触摸将返回 “真”。",yF.MICROBIT_PIN_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.was_pressed",yF.MICROBIT_PIN_GET_PRESSES_MESSAGE0="引脚 %1 被触摸的次数",yF.MICROBIT_PIN_GET_PRESSES_TOOLTIP="返回被触摸的次数,然后清零。",yF.MICROBIT_PIN_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.get_presses",yF.MICROBIT_PIN_READ_ANALOG_MESSAGE0="读取引脚 %1 模拟电压",yF.MICROBIT_PIN_READ_ANALOG_TOOLTIP="读取引脚的模拟输入电压。",yF.MICROBIT_PIN_READ_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.read_analog",yF.MICROBIT_PIN_WRITE_ANALOG_MESSAGE0="设置模拟量 %1 到引脚 %2",yF.MICROBIT_PIN_WRITE_ANALOG_TOOLTIP="写入模拟参数到指定引脚上。",yF.MICROBIT_PIN_WRITE_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.write_analog",yF.MICROBIT_PIN_READ_DIGITAL_MESSAGE0="读取引脚 %1 的数字输入",yF.MICROBIT_PIN_READ_DIGITAL_TOOLTIP="读取引脚的数字输入 (真 或 假)。",yF.MICROBIT_PIN_READ_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.read_digital",yF.MICROBIT_PIN_WRITE_DIGITAL_MESSAGE0="设置数字输出 %1 到引脚 %2",yF.MICROBIT_PIN_WRITE_DIGITAL_TOOLTIP="写入数字量 (真 或 假) 到指定引脚。",yF.MICROBIT_PIN_WRITE_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.write_digital",yF.MICROBIT_RADIO_ON_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.on",yF.MICROBIT_RADIO_ON_MESSAGE0="打开无线广播",yF.MICROBIT_RADIO_ON_TOOLTIP="打开无线广播。需要明确声明调用,因为它会消耗更多功率和占用更多内存。",yF.MICROBIT_RADIO_OFF_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.off",yF.MICROBIT_RADIO_OFF_MESSAGE0="关闭无线广播",yF.MICROBIT_RADIO_OFF_TOOLTIP="关闭无线广播,节省功耗和内存。",yF.MICROBIT_RADIO_CONFIG_MESSAGE0="配置无线广播消息长度 %1 %2 最大队列数量 %3 %4 信道 %5 %6 广播功率 %7 %8 地址 %9 %10 组 %11 %12 数据速率 %13",yF.MICROBIT_RADIO_CONFIG_TOOLTIP="配置无线广播。\n 长度指单个消息的最大长度; \n 队列指可以存放在消息队列中消息的数量; \n 信道指无线广播使用的无线频率; \n 功率指发射广播信号的强度; \n 地址:32位值; \n 组:8位值(0-255); \n 数据速率指数据传输的速度。",yF.MICROBIT_RADIO_CONFIG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.config",yF.MICROBIT_RADIO_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.reset",yF.MICROBIT_RADIO_RESET_MESSAGE0="复位无线广播",yF.MICROBIT_RADIO_RESET_TOOLTIP="恢复无线广播到默认设置。",yF.MICROBIT_RADIO_SEND_STRING_MESSAGE0="发送消息 %1",yF.MICROBIT_RADIO_SEND_STRING_TOOLTIP="广播文字消息。",yF.MICROBIT_RADIO_SEND_STRING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",yF.MICROBIT_RADIO_SEND_BYTES_MESSAGE0="发送字节 %1",yF.MICROBIT_RADIO_SEND_BYTES_TOOLTIP="广播字节。",yF.MICROBIT_RADIO_SEND_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",yF.MICROBIT_RADIO_RECEIVE_MESSAGE0="接收消息",yF.MICROBIT_RADIO_RECEIVE_TOOLTIP="接收消息。",yF.MICROBIT_RADIO_RECEIVE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",yF.MICROBIT_RADIO_RECEIVE_BYTES_MESSAGE0="接收字节",yF.MICROBIT_RADIO_RECEIVE_BYTES_TOOLTIP="接收字节。",yF.MICROBIT_RADIO_RECEIVE_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",yF.MICROBIT_SPEECH_SAY_MESSAGE0="说 %1",yF.MICROBIT_SPEECH_SAY_TOOLTIP="尝试说英语",yF.MICROBIT_SPEECH_SAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#speech.say",yF.MICROBIT_SPEECH_PRONOUNCE_MESSAGE0="读 %1",yF.MICROBIT_SPEECH_PRONOUNCE_TOOLTIP="精确发音。",yF.MICROBIT_SPEECH_PRONOUNCE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#phonemes",yF.MICROBIT_SPEECH_SING_MESSAGE0="唱 %1",yF.MICROBIT_SPEECH_SING_TOOLTIP="象机器人一样唱歌。",yF.MICROBIT_SPEECH_SING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#singing",yF.MICROBIT_GESTURE_SHAKE="摇晃",yF.MICROBIT_GESTURE_UP="上",yF.MICROBIT_GESTURE_DOWN="下",yF.MICROBIT_GESTURE_LEFT="左",yF.MICROBIT_GESTURE_RIGHT="右",yF.MICROBIT_GESTURE_FACE_UP="朝上",yF.MICROBIT_GESTURE_FACE_DOWN="朝下",yF.MICROBIT_GESTURE_FREEFAIL="自由下落",yF.MICROBIT_IMAGE_HEART="心形",yF.MICROBIT_IMAGE_HEART_SMALL="心(小)",yF.MICROBIT_IMAGE_HAPPY="高兴",yF.MICROBIT_IMAGE_SMILE="笑脸",yF.MICROBIT_IMAGE_SAD="伤心",yF.MICROBIT_IMAGE_CONFUSED="困惑",yF.MICROBIT_IMAGE_ANGRY="生气",yF.MICROBIT_IMAGE_ASLEEP="睡着",yF.MICROBIT_IMAGE_SUPRISED="惊讶",yF.MICROBIT_IMAGE_SILLY="愚蠢",yF.MICROBIT_IMAGE_FABULOUS="极妙",yF.MICROBIT_IMAGE_MEH="无聊",yF.MICROBIT_IMAGE_YES="是",yF.MICROBIT_IMAGE_NO="否",yF.MICROBIT_IMAGE_CLOCK12="12点",yF.MICROBIT_IMAGE_CLOCK11="11点",yF.MICROBIT_IMAGE_CLOCK10="10点",yF.MICROBIT_IMAGE_CLOCK9="9点",yF.MICROBIT_IMAGE_CLOCK8="8点",yF.MICROBIT_IMAGE_CLOCK7="7点",yF.MICROBIT_IMAGE_CLOCK6="6点",yF.MICROBIT_IMAGE_CLOCK5="5点",yF.MICROBIT_IMAGE_CLOCK4="4点",yF.MICROBIT_IMAGE_CLOCK3="3点",yF.MICROBIT_IMAGE_CLOCK2="2点",yF.MICROBIT_IMAGE_CLOCK1="1点",yF.MICROBIT_IMAGE_ARROW_N="箭头-北",yF.MICROBIT_IMAGE_ARROW_NE="箭头-东北",yF.MICROBIT_IMAGE_ARROW_E="箭头-东",yF.MICROBIT_IMAGE_ARROW_SE="箭头-东南",yF.MICROBIT_IMAGE_ARROW_S="箭头-南",yF.MICROBIT_IMAGE_ARROW_SW="箭头-西南",yF.MICROBIT_IMAGE_ARROW_W="箭头-西",yF.MICROBIT_IMAGE_ARROW_NW="箭头-西北",yF.MICROBIT_IMAGE_TRIANGLE="三角形",yF.MICROBIT_IMAGE_TRIANGLE_LEFT="左三角形",yF.MICROBIT_IMAGE_CHESSBOARD="棋盘",yF.MICROBIT_IMAGE_DIAMOND="菱形",yF.MICROBIT_IMAGE_DIAMOND_SMALL="菱形(小)",yF.MICROBIT_IMAGE_SQUARE="方形",yF.MICROBIT_IMAGE_SQUARE_SMALL="方形(小)",yF.MICROBIT_IMAGE_RABBIT="兔子",yF.MICROBIT_IMAGE_COW="牛",yF.MICROBIT_IMAGE_MUSIC_CROTCHET="四分音符",yF.MICROBIT_IMAGE_MUSIC_QUAVER="八分音符",yF.MICROBIT_IMAGE_MUSIC_QUAVERS="颤音",yF.MICROBIT_IMAGE_PITCHFORK="叉子",yF.MICROBIT_IMAGE_XMAS="圣诞树",yF.MICROBIT_IMAGE_PACMAN="吃豆人",yF.MICROBIT_IMAGE_TARGET="目标",yF.MICROBIT_IMAGE_TSHIRT="T恤衫",yF.MICROBIT_IMAGE_ROLLERSKATE="轮滑",yF.MICROBIT_IMAGE_DUCK="鸭子",yF.MICROBIT_IMAGE_HOUSE="房子",yF.MICROBIT_IMAGE_TORTOISE="乌龟",yF.MICROBIT_IMAGE_BUTTERFLY="蝴蝶",yF.MICROBIT_IMAGE_STICKFIGURE="线条画",yF.MICROBIT_IMAGE_GHOST="幽灵",yF.MICROBIT_IMAGE_SWORD="宝剑",yF.MICROBIT_IMAGE_GIRAFFE="长颈鹿",yF.MICROBIT_IMAGE_SKULL="头",yF.MICROBIT_IMAGE_UMBRELLA="伞",yF.MICROBIT_IMAGE_SNAKE="蛇",yF.MICROBIT_IMAGE_ALL_CLOCKS="所有时钟",yF.MICROBIT_IMAGE_ALL_ARROWS="所有箭头",yF.MICROBIT_PIN_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",yF.MICROBIT_PIN_SET_SERVO_TOOLTIP="设置舵机角度,范围为 0 ~ 180度",yF.MICROBIT_PIN_SET_SERVO_MESSAGE0="设置舵机 引脚 %1 角度为 %2",yF.MICROBIT_PIN_SET_MODE_HELPURL="",yF.MICROBIT_PIN_SET_MODE_TOOLTIP="引脚模式有三种:悬空、上拉、下拉",yF.MICROBIT_PIN_SET_MODE_MESSAGE0="设置引脚 %1 模式为 %2",yF.MICROBIT_PIN_MODE_NO="悬空",yF.MICROBIT_PIN_MODE_UP="上拉",yF.MICROBIT_PIN_MODE_DOWN="下拉",yF.MICROBIT_UART_INIT_MESSAGE0="初始化串口波特率为 %3 TX为 %1 RX为 %2",yF.MICROBIT_UART_INIT_TOOLTIP="",yF.MICROBIT_UART_INIT_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",yF.MICROBIT_UART_ANY_MSG_RECEIVED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",yF.MICROBIT_UART_ANY_MSG_RECEIVED_TOOLTIP="",yF.MICROBIT_UART_ANY_MSG_RECEIVED_MESSAGE0="串口接收到数据",yF.MICROBIT_UART_READ_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",yF.MICROBIT_UART_READ_MSG_TOOLTIP="",yF.MICROBIT_UART_READ_MSG_MESSAGE0="读取串口 %1 字节",yF.MICROBIT_UART_READ_MSG_TO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",yF.MICROBIT_UART_READ_MSG_TO_TOOLTIP="",yF.MICROBIT_UART_READ_MSG_TO_MESSAGE0="读取串口 %1 字节存至 %2",yF.MICROBIT_UART_WRITE_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",yF.MICROBIT_UART_WRITE_MSG_TOOLTIP="",yF.MICROBIT_UART_WRITE_MSG_MESSAGE0="串口发送数据 %1",yF.MICROBIT_ALL_BYTES="全部",yF.MICROBIT_ALINE_BYTES="一行",yF.LABPLUS_BUTTON_IS_PRESSED_MESSAGE0="引脚 %1 被触发",yF.LABPLUS_BUTTON_IS_PRESSED_TOOLTIP="如果指定按键按下返回 “真”,否则返回 “假”。",yF.LABPLUS_BUTTON_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.is_pressed",yF.LABPLUS_BUTTON_WAS_PRESSED_MESSAGE0="引脚 %1 曾经被触发",yF.LABPLUS_BUTTON_WAS_PRESSED_TOOLTIP="如果按键曾经按下过返回 “真”,否则返回 “假”。",yF.LABPLUS_BUTTON_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.was_pressed",yF.LABPLUS_BUTTON_GET_PRESSES_MESSAGE0="引脚 %1 被触发过的次数",yF.LABPLUS_BUTTON_GET_PRESSES_TOOLTIP="返回按键按下的总次数,然后清除计数。",yF.LABPLUS_BUTTON_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.get_presses",yF.LABPLUS_LED_MESSAGE0="设置LED灯 引脚 %2 输出 %1",yF.LABPLUS_LED_TOOLTIP="",yF.LABPLUS_LED_HELPURL="http://wiki.labplus.cn/index.php?title=LED",yF.LABPLUS_INFRARED_IS_TRIGGERED_MESSAGE0="红外探测 引脚 %1 被触发",yF.LABPLUS_INFRARED_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_INFRARED_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%BA%A2%E5%A4%96%E6%8E%A2%E6%B5%8B",yF.LABPLUS_HEAT_SENSITIVE_DETECTOR_MESSAGE0="热敏传感器 引脚 %1 的值",yF.LABPLUS_HEAT_SENSITIVE_DETECTOR_TOOLTIP="",yF.LABPLUS_HEAT_SENSITIVE_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%AD%E6%95%8F%E7%94%B5%E9%98%BB",yF.LABPLUS_I2C_LIGHT_SENSOR_MESSAGE0="I2C数字光线传感器的值(lux)",yF.LABPLUS_I2C_LIGHT_SENSOR_TOOLTIP="",yF.LABPLUS_I2C_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E5%AD%97%E5%85%89%E7%BA%BF",yF.LABPLUS_WATER_LEVEL_DETECTOR_MESSAGE0="水位传感器 引脚 %1 的值",yF.LABPLUS_WATER_LEVEL_DETECTOR_TOOLTIP="",yF.LABPLUS_WATER_LEVEL_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B0%B4%E4%BD%8D",yF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_MESSAGE0="烟雾探测器 引脚 %1 被触发",yF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",yF.LABPLUS_BUZZER_FOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",yF.LABPLUS_BUZZER_FOR_TOOLTIP="",yF.LABPLUS_BUZZER_FOR_MESSAGE0="以频率 %1 激活蜂鸣器 引脚0 %2 毫秒",yF.LABPLUS_BUZZER_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",yF.LABPLUS_BUZZER_ON_TOOLTIP="",yF.LABPLUS_BUZZER_ON_MESSAGE0="以频率 %1 激活蜂鸣器 引脚0",yF.LABPLUS_BUZZER_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",yF.LABPLUS_BUZZER_OFF_TOOLTIP="",yF.LABPLUS_BUZZER_OFF_MESSAGE0="关闭蜂鸣器 引脚0",yF.LABPLUS_TM_HM_SENSOR_MESSAGE0="I2C温湿度传感器的 %1 值",yF.LABPLUS_TM_HM_SENSOR_TOOLTIP="",yF.LABPLUS_TM_HM_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B8%A9%E6%B9%BF%E5%BA%A6",yF.LABPLUS_TM_HM_SENSOR_TM="温度",yF.LABPLUS_TM_HM_SENSOR_HM="湿度",yF.LABPLUS_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",yF.LABPLUS_SET_SERVO_TOOLTIP="",yF.LABPLUS_SET_SERVO_MESSAGE0="设置舵机 引脚 %1 角度为 %2",yF.LABPLUS_FINGERPRINT_SENSOR_MESSAGE0="指纹传感器 引脚 %1 验证通过",yF.LABPLUS_FINGERPRINT_SENSOR_TOOLTIP="",yF.LABPLUS_FINGERPRINT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8C%87%E7%BA%B9",yF.LABPLUS_SET_MOTOR_HELPURL="",yF.LABPLUS_SET_MOTOR_TOOLTIP="",yF.LABPLUS_SET_MOTOR_MESSAGE0="设置电机 %1 方向 %2 速度 %3",yF.LABPLUS_SET_MOTOR_CLOCKWISE="正转",yF.LABPLUS_SET_MOTOR_ANTI_CLOCKWISE="反转",yF.LABPLUS_STOP_MOTOR_HELPURL="",yF.LABPLUS_STOP_MOTOR_TOOLTIP="",yF.LABPLUS_STOP_MOTOR_MESSAGE0="停止电机",yF.LABPLUS_GET_RFID_ID_MESSAGE0="射频卡 引脚 %1 验证通过",yF.LABPLUS_GET_RFID_ID_TOOLTIP="",yF.LABPLUS_GET_RFID_ID_HELPURL="http://wiki.labplus.cn/index.php?title=RFID",yF.LABPLUS_GET_RFID_VALUE_MESSAGE0="电子钱包 引脚 %1 余额",yF.LABPLUS_GET_RFID_VALUE_TOOLTIP="",yF.LABPLUS_GET_RFID_VALUE_HELPURL="",yF.LABPLUS_SET_RFID_VALUE_MESSAGE0="设置电子钱包 引脚 %1 余额 %2 %3",yF.LABPLUS_SET_RFID_VALUE_TOOLTIP="",yF.LABPLUS_SET_RFID_VALUE_HELPURL="",yF.LABPLUS_SET_RFID_ADD="增加",yF.LABPLUS_SET_RFID_MINUS="减少",yF.LABPLUS_SOUND_IS_TRIGGERED_MESSAGE0="声音传感器 引脚 %1 被触发",yF.LABPLUS_SOUND_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_SOUND_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%BA%A6%E5%85%8B%E9%A3%8E",yF.LABPLUS_USB_SWITCH_HELPURL="",yF.LABPLUS_USB_SWITCH_TOOLTIP="",yF.LABPLUS_USB_SWITCH_MESSAGE0="%1 USB开关 引脚 %2",yF.LABPLUS_USB_SWITCH_ON="打开",yF.LABPLUS_USB_SWITCH_OFF="关闭",yF.LABPLUS_VOICE_RECORD_HELPURL="",yF.LABPLUS_VOICE_RECORD_TOOLTIP="",yF.LABPLUS_VOICE_RECORD_MESSAGE0="%1 语音录放器 引脚 %2",yF.LABPLUS_VOICE_RECORD_ON="打开",yF.LABPLUS_VOICE_RECORD_OFF="关闭",yF.LABPLUS_RGB_INITIALISE_MESSAGE0="使用 引脚 %1 控制,RGB 彩灯数 %2 ",yF.LABPLUS_RGB_INITIALISE_TOOLTIP="控制 RGB 彩灯。需要设定 neopixels 彩灯数量和控制脚。",yF.LABPLUS_RGB_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",yF.LABPLUS_RGB_CLEAR_MESSAGE0="清除 RGB 彩灯 %1",yF.LABPLUS_RGB_CLEAR_TOOLTIP="清除所有 RGB 彩灯",yF.LABPLUS_RGB_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",yF.LABPLUS_RGB_SHOW_MESSAGE0="显示 RGB 彩灯 %1",yF.LABPLUS_RGB_SHOW_TOOLTIP="显示 / 更新全部 RGB 彩灯。",yF.LABPLUS_RGB_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",yF.LABPLUS_RGB_SET_MESSAGE0="RGB 彩灯控制 %1 设置位置 %2 红色 %3 绿色 %4 蓝色 %5",yF.LABPLUS_RGB_SET_TOOLTIP="更新指定的 RGB 彩灯的红、绿、蓝 (RGB) 颜色",yF.LABPLUS_RGB_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",yF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_MESSAGE0="设置扩展端口 IO %1 为 %2",yF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_TOOLTIP="0表示输出引脚,1表示输入引脚",yF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",yF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT="输入",yF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT="输出",yF.LABPLUS_READ_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",yF.LABPLUS_READ_EXTENDED_PIN_TOOLTIP="",yF.LABPLUS_READ_EXTENDED_PIN_MESSAGE0="读取扩展端口值 IO %1",yF.LABPLUS_WRITE_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",yF.LABPLUS_WRITE_EXTENDED_PIN_TOOLTIP="",yF.LABPLUS_WRITE_EXTENDED_PIN_MESSAGE0="设置扩展端口 IO %1 值为 %2",yF.LABPLUS_I2C_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%B6%85%E5%A3%B0%E6%B3%A2",yF.LABPLUS_I2C_ULTRASONIC_TOOLTIP="",yF.LABPLUS_I2C_ULTRASONIC_MESSAGE0="I2C超声波传感器的值",yF.MICROBIT_SET_MUSIC_PIN_HELPURL="",yF.MICROBIT_SET_MUSIC_PIN_TOOLTIP="",yF.MICROBIT_SET_MUSIC_PIN_MESSAGE0="设置默认蜂鸣器引脚为 %1",yF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E4%BA%BA%E4%BD%93%E6%84%9F%E5%BA%94",yF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_MESSAGE0="人体感应 引脚 %1 被触发",yF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%97%A8%E7%A3%81%E5%BC%80%E5%85%B3",yF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_MESSAGE0="门磁开关 引脚 %1 被触发",yF.LABPLUS_SOUND_LEVEL_SENSOR_HELPURL="",yF.LABPLUS_SOUND_LEVEL_SENSOR_TOOLTIP="",yF.LABPLUS_SOUND_LEVEL_SENSOR_MESSAGE0="声音传感器 引脚 %1 的值",yF.LABPLUS_SMOKE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",yF.LABPLUS_SMOKE_SENSOR_TOOLTIP="",yF.LABPLUS_SMOKE_SENSOR_MESSAGE0="烟雾传感器 引脚 %1 的值",yF.LABPLUS_SOIL_MOISTURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9C%9F%E5%A3%A4%E6%B9%BF%E5%BA%A6",yF.LABPLUS_SOIL_MOISTURE_SENSOR_TOOLTIP="",yF.LABPLUS_SOIL_MOISTURE_SENSOR_MESSAGE0="土壤湿度传感器 引脚 %1 的值",yF.LABPLUS_FAN_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8E%92%E9%A3%8E%E6%89%87",yF.LABPLUS_FAN_SWITCH_TOOLTIP="",yF.LABPLUS_FAN_SWITCH_MESSAGE0="%1 风扇 引脚 %2",yF.LABPLUS_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.LABPLUS_VOICE_RECORD_ON_TOOLTIP="",yF.LABPLUS_VOICE_RECORD_ON_MESSAGE0="打开录放器 %1 引脚 %2",yF.LABPLUS_VOICE_RECORD_PLAY="播放",yF.LABPLUS_VOICE_RECORD_REC="录音",yF.LABPLUS_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.LABPLUS_VOICE_RECORD_OFF_TOOLTIP="",yF.LABPLUS_VOICE_RECORD_OFF_MESSAGE0="关闭录放器 引脚 %1",yF.LABPLUS_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.LABPLUS_MOTOR_ON_TOOLTIP="",yF.LABPLUS_MOTOR_ON_MESSAGE0="打开直流电机 %1 速度 %2 引脚 %3",yF.LABPLUS_MOTOR_ON_CLOCKWISE="正转",yF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="反转",yF.LABPLUS_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.LABPLUS_MOTOR_OFF_TOOLTIP="",yF.LABPLUS_MOTOR_OFF_MESSAGE0="停止直流电机 引脚 %1",yF.LABPLUS_READ_COLOR_FROM_I2C_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%A2%9C%E8%89%B2",yF.LABPLUS_READ_COLOR_FROM_I2C_TOOLTIP="",yF.LABPLUS_READ_COLOR_FROM_I2C_MESSAGE0="I2C颜色传感器读取并储存颜色",yF.LABPLUS_RGB_COLOR_HELPURL="http://wiki.labplus.cn/index.php?title=RGB_LED",yF.LABPLUS_RGB_COLOR_TOOLTIP="读取已储存的颜色",yF.LABPLUS_RGB_COLOR_MESSAGE0="RGB颜色 %1",yF.LABPLUS_SET_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",yF.LABPLUS_SET_I2C_DIGITS_TOOLTIP="",yF.LABPLUS_SET_I2C_DIGITS_MESSAGE0="设置I2C数码管的值为 %1",yF.LABPLUS_TURN_OFF_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",yF.LABPLUS_TURN_OFF_I2C_DIGITS_TOOLTIP="",yF.LABPLUS_TURN_OFF_I2C_DIGITS_MESSAGE0="关闭I2C数码管",yF.LABPLUS_UART_SET_MIDI_MELODIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",yF.LABPLUS_UART_SET_MIDI_MELODIC_TOOLTIP="",yF.LABPLUS_UART_SET_MIDI_MELODIC_MESSAGE0="设置MIDI模块音调为 %1",yF.LABPLUS_UART_PLAY_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",yF.LABPLUS_UART_PLAY_MIDI_NOTE_TOOLTIP="",yF.LABPLUS_UART_PLAY_MIDI_NOTE_MESSAGE0="MIDI模块 %2 音符 %1",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Do="Do",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Re="Re",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Mi="Mi",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Fa="Fa",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Sol="Sol",yF.LABPLUS_UART_PLAY_MIDI_NOTE_La="La",yF.LABPLUS_UART_PLAY_MIDI_NOTE_Si="Si";yF.LABPLUS_UART_PLAY_MIDI_NOTE="播放",yF.LABPLUS_UART_OFF_MIDI_NOTE="停止",yF.LABPLUS_UART_OFF_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",yF.LABPLUS_UART_OFF_MIDI_NOTE_TOOLTIP="",yF.LABPLUS_UART_OFF_MIDI_NOTE_MESSAGE0="MIDI模块停止播放音符 %1",yF.LABPLUS_UART_INIT_MIDI_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",yF.LABPLUS_UART_INIT_MIDI_TOOLTIP="",yF.LABPLUS_UART_INIT_MIDI_MESSAGE0="初始化MIDI模块 %1",yF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%BE%AA%E8%BF%B9",yF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_MESSAGE0="循迹传感器 引脚 %1 检测为黑",yF.LABPLUS_TEMPERATURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=LM35%E6%B8%A9%E5%BA%A6",yF.LABPLUS_TEMPERATURE_SENSOR_TOOLTIP="",yF.LABPLUS_TEMPERATURE_SENSOR_MESSAGE0="LM35温度传感器 引脚 %1 的值",yF.LABPLUS_ROTATE_DIMMER_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%97%8B%E9%92%AE%E7%94%B5%E4%BD%8D%E5%99%A8",yF.LABPLUS_ROTATE_DIMMER_TOOLTIP="",yF.LABPLUS_ROTATE_DIMMER_MESSAGE0="旋转电位器 引脚 %1 的值",yF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9C%87%E5%8A%A8",yF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",yF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_MESSAGE0="震动传感器 引脚 %1 被触发",yF.LABPLUS_LASER_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%BF%80%E5%85%89%E5%8F%91%E5%B0%84",yF.LABPLUS_LASER_SWITCH_TOOLTIP="",yF.LABPLUS_LASER_SWITCH_MESSAGE0="%1 激光开关 引脚 %2",yF.LABPLUS_4BUTTON_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",yF.LABPLUS_4BUTTON_TOOLTIP="",yF.LABPLUS_4BUTTON_MESSAGE0="四向按键模块 引脚 %1 按键 %2 被按下",yF.BLUE="A",yF.GREEN="B",yF.RED="C",yF.YELLOW="D",yF.LABPLUS_JOYSTICK_HELPURL="",yF.LABPLUS_JOYSTICK_TOOLTIP="",yF.LABPLUS_JOYSTICK_MESSAGE0="摇杆 引脚A0 %1 引脚A1 %2 %3 轴的值",yF.LABPLUS_UART_MP3_PLAY_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",yF.LABPLUS_UART_MP3_PLAY_TOOLTIP="",yF.LABPLUS_UART_MP3_PLAY_MESSAGE0="MP3模块(UART)播放第 %1 首音乐",yF.LABPLUS_UART_MP3_SET_VOLUME_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",yF.LABPLUS_UART_MP3_SET_VOLUME_TOOLTIP="",yF.LABPLUS_UART_MP3_SET_VOLUME_MESSAGE0="设置MP3模块(UART)音量为 %1",yF.LABPLUS_UART_MP3_SET_STATUS_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",yF.LABPLUS_UART_MP3_SET_STATUS_TOOLTIP="",yF.LABPLUS_UART_MP3_SET_STATUS_MESSAGE0="设置MP3模块(UART)状态为 %1",yF.PAUSE="暂停",yF.STOP="停止",yF.PLAY="继续播放",yF.PLAYNEXT="下一首",yF.PLAYPREV="上一首",yF.LABPLUS_UART_INIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.LABPLUS_UART_INIT_TOOLTIP="",yF.LABPLUS_UART_INIT_MESSAGE0="初始化串口波特率为 %3 TX为 %1 RX为 %2",yF.LABPLUS_VOICE_RECORD_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.LABPLUS_VOICE_RECORD_ON1_TOOLTIP="",yF.LABPLUS_VOICE_RECORD_ON1_MESSAGE0="打开录放器 %1 %2 引脚REC %3 引脚PLAY %4",yF.LABPLUS_VOICE_RECORD_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",yF.LABPLUS_VOICE_RECORD_OFF1_TOOLTIP="",yF.LABPLUS_VOICE_RECORD_OFF1_MESSAGE0="关闭录放器 %1 引脚REC %2 引脚PLAY %3",yF.LABPLUS_MOTOR_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.LABPLUS_MOTOR_ON1_TOOLTIP="",yF.LABPLUS_MOTOR_ON1_MESSAGE0="打开直流电机 %1 速度 %2 引脚AIN1 %3 引脚AIN2 %4",yF.LABPLUS_MOTOR_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",yF.LABPLUS_MOTOR_OFF1_TOOLTIP="",yF.LABPLUS_MOTOR_OFF1_MESSAGE0="停止直流电机 %1 引脚AIN1 %2 引脚AIN2 %3",yF.LABPLUS_SET_I2C_LCD1602_CURSOR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",yF.LABPLUS_SET_I2C_LCD1602_CURSOR_TOOLTIP="",yF.LABPLUS_SET_I2C_LCD1602_CURSOR_MESSAGE0="设置LCD游标位置%1 X %2 Y %3",yF.LABPLUS_SET_I2C_LCD1602_PRINT_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",yF.LABPLUS_SET_I2C_LCD1602_PRINT_TOOLTIP="",yF.LABPLUS_SET_I2C_LCD1602_PRINT_MESSAGE0="设置LCD显示 %1",yF.LABPLUS_SET_I2C_LCD1602_SCROLL_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",yF.LABPLUS_SET_I2C_LCD1602_SCROLL_TOOLTIP="配合循环次数使用",yF.LABPLUS_SET_I2C_LCD1602_SCROLL_MESSAGE0="%1滚动LCD显示内容",yF.LABPLUS_SET_I2C_LCD1602_SCROLL_ALEFT="向左",yF.LABPLUS_SET_I2C_LCD1602_SCROLL_RIGHTWARD="向右",yF.LABPLUS_SET_I2C_LCD1602_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",yF.LABPLUS_SET_I2C_LCD1602_CLEAR_TOOLTIP="",yF.LABPLUS_SET_I2C_LCD1602_CLEAR_MESSAGE0="清除LCD显示内容",yF.LABPLUS_UART_ANY_MSG_RECEIVED_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.LABPLUS_UART_ANY_MSG_RECEIVED_TOOLTIP="",yF.LABPLUS_UART_ANY_MSG_RECEIVED_MESSAGE0="%1 接收到数据",yF.BLUEBIT_UART="串口",yF.BLUEBIT_INFRARED_SIGNAL="红外信号",yF.BLUEBIT_BLUEBOOTH="蓝牙",yF.LABPLUS_UART_READ_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.LABPLUS_UART_READ_MSG_TOOLTIP="",yF.LABPLUS_UART_READ_MSG_MESSAGE0="读取 %1 数据",yF.LABPLUS_UART_WRITE_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",yF.LABPLUS_UART_WRITE_MSG_TOOLTIP="",yF.LABPLUS_UART_WRITE_MSG_MESSAGE0="%1 发送数据 %2",yF.LABPLUS_SET_I2C_LED_MATRIX_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",yF.LABPLUS_SET_I2C_LED_MATRIX_TOOLTIP="",yF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE0="设置点阵 %1 第一行显示%2 第二行显示%3 第三行显示%4 第四行显示%5 第五行显示%6 第六行显示%7 第七行显示%8 第八行显示%9 ",yF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE2="设置点阵 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",yF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",yF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_TOOLTIP="",yF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_MESSAGE0="清空点阵",yF.LABPLUS_UART_SET_OLED_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",yF.LABPLUS_UART_SET_OLED_TOOLTIP="",yF.LABPLUS_UART_SET_OLED_MESSAGE0="设置OLED屏 %1 X %2 Y %3 显示文本 %4 字体为 %5",yF.LABPLUS_UART_SET_OLED_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",yF.LABPLUS_UART_SET_OLED_CLEAR_TOOLTIP="",yF.LABPLUS_UART_SET_OLED_CLEAR_MESSAGE0="在OLED屏上擦除矩阵 %1 X1 %2 Y1 %3 X2 %4 Y2 %5",yF.LABPLUS_UART_SET_OLED_CLEAR_ALL_MESSAGE0="清空OLED屏",yF.LABPLUS_UART_SET_OLED_CLEAR_ALL_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",yF.LABPLUS_UART_SET_OLED_CLEAR_ALL_TOOLTIP="",yF.LABPLUS_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%A8%A1%E6%8B%9F%E5%85%89%E7%BA%BF",yF.LABPLUS_LIGHT_SENSOR_TOOLTIP="",yF.LABPLUS_LIGHT_SENSOR_MESSAGE0="模拟光线传感器 引脚 %1 的值",yF.LABPLUS_BUTTON_MODULE_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",yF.LABPLUS_BUTTON_MODULE_IS_PRESSED_TOOLTIP="",yF.LABPLUS_BUTTON_MODULE_IS_PRESSED_MESSAGE0="按键模块 引脚 %1 被按下",yF.MICROBIT_EXT2_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",yF.MICROBIT_EXT2_SET_SERVO_TOOLTIP="",yF.MICROBIT_EXT2_SET_SERVO_MESSAGE0="设置舵机 %1 的角度为 %2",yF.MICROBIT_EXT2_SET_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",yF.MICROBIT_EXT2_SET_MOTOR_TOOLTIP="",yF.MICROBIT_EXT2_SET_MOTOR_MESSAGE0="设置马达 %1 方向 %2 速度 %3",yF.MICROBIT_EXT2_STOP_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",yF.MICROBIT_EXT2_STOP_MOTOR_TOOLTIP="",yF.MICROBIT_EXT2_STOP_MOTOR_MESSAGE0="停止马达 %1",yF.MICROBIT_EXT2_SOUND_VALUE_MESSAGE0="声音传感器的值",yF.MICROBIT_EXT2_SOUND_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",yF.MICROBIT_EXT2_SOUND_VALUE_TOOLTIP="",yF.MICROBIT_EXT2_LIGHT_VALUE_MESSAGE0="光线传感器的值",yF.MICROBIT_EXT2_LIGHT_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",yF.MICROBIT_EXT2_LIGHT_VALUE_TOOLTIP="",yF.MICROBIT_INIT_I2C_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",yF.MICROBIT_INIT_I2C_TOOLTIP="",yF.MICROBIT_INIT_I2C_MESSAGE0="初始化I2C 频率 %1 引脚SDA %2 引脚SCL %3",yF.MICROBIT_I2C_READ_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",yF.MICROBIT_I2C_READ_TOOLTIP="",yF.MICROBIT_I2C_READ_MESSAGE0="I2C读取从地址 %1 读取 %2 字节",yF.MICROBIT_I2C_WRITE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",yF.MICROBIT_I2C_WRITE_TOOLTIP="",yF.MICROBIT_I2C_WRITE_MESSAGE0="I2C写入 %2 到地址 %1",yF.MICROBIT_CONVERT_BYTEARRAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",yF.MICROBIT_CONVERT_BYTEARRAY_TOOLTIP="",yF.MICROBIT_CONVERT_BYTEARRAY_MESSAGE0="bytearray %1",yF.BOTBIT_MOTOR_ON_HELPURL="",yF.BOTBIT_MOTOR_ON_TOOLTIP="范围:-2000~2000",yF.BOTBIT_MOTOR_ON_MESSAGE0="设置机器人 %1 右轮速度为 %2 左轮速度为 %3",yF.BOTBIT_MOTOR_LEFT="左",yF.BOTBIT_MOTOR_RIGHT="右",yF.BOTBIT_SERVO_UP="上方",yF.BOTBIT_SERVO_DOWN="下方",yF.BOTBIT_MOTOR_FORWARD="前进",yF.BOTBIT_MOTOR_BACKWARD="后退",yF.BOTBIT_HOLDBALL_HELPURL="",yF.BOTBIT_HOLDBALL_TOOLTIP="",yF.BOTBIT_HOLDBALL_MESSAGE0="双臂抱起",yF.BOTBIT_STEERING_ENGINEL_HELPURL="",yF.BOTBIT_STEERING_ENGINEL_TOOLTIP="角度范围为-45°~45°",yF.BOTBIT_STEERING_ENGINEL_MESSAGE0="设置 %1臂 %2的角度为 %3",yF.BOTBIT_SERVO_Y="Y轴舵机",yF.BOTBIT_SERVO_X="X轴舵机",yF.BOTBIT_STEERING_ENGINE_LEG_HELPURL="",yF.BOTBIT_STEERING_ENGINE_LEG_TOOLTIP="角度范围为-45°~45°",yF.BOTBIT_STEERING_ENGINE_LEG_MESSAGE0="设置 %1腿 %2舵机的角度为 %3",yF.BOTBIT_UPDATEPOSITION_HELPURL="",yF.BOTBIT_UPDATEPOSITION_TOOLTIP="",yF.BOTBIT_UPDATEPOSITION_MESSAGE0="刷新舵机角度",yF.BOTBIT_ULTRASONIC_HELPURL="",yF.BOTBIT_ULTRASONIC_TOOLTIP="",yF.BOTBIT_ULTRASONIC_MESSAGE0="超声波传感器的值",yF.BOTBIT_WALKING_HELPURL="",yF.BOTBIT_WALKING_TOOLTIP="周期越短, 速度越快, 推荐1000~2000",yF.BOTBIT_WALKING_MESSAGE0="舞步(walking) 步数%2 周期%3 方向%1 ",yF.BOTBIT_WALKING_FORWARD="前",yF.BOTBIT_WALKING_BACK="后",yF.BOTBIT_MOONWALKER_HELPURL="",yF.BOTBIT_MOONWALKER_TOOLTIP="推荐周期1000~2000, 幅度10~50",yF.BOTBIT_MOONWALKER_MESSAGE0="舞步(moonwalker) 步数%2 周期%3 幅度%4 方向%1 ",yF.BOTBIT_MOONWALKER_L="左",yF.BOTBIT_MOONWALKER_R="右",yF.BOTBIT_CRUSAITO_HELPURL="",yF.BOTBIT_CRUSAITO_TOOLTIP="推荐步数2~10, 幅度10~50",yF.BOTBIT_CRUSAITO_MESSAGE0="舞步(crusaito) 步数%2 周期%3 幅度%4 方向%1",yF.BOTBIT_CRUSAITO_CW="逆时针",yF.BOTBIT_CRUSAITO_ANTICW="顺时针",yF.BOTBIT_FLAPPING_HELPURL="",yF.BOTBIT_FLAPPING_TOOLTIP="推荐步数5~15, 幅度10~30, 周期1000~2000",yF.BOTBIT_FLAPPING_MESSAGE0="舞步(flapping) 步数%2 周期%3 幅度%4 方向%1",yF.BOTBIT_FLAPPING_FORWARD="前",yF.BOTBIT_FLAPPING_BACK="后",yF.BOTBIT_HOME_HELPURL="",yF.BOTBIT_HOME_TOOLTIP="",yF.BOTBIT_HOME_MESSAGE0="机器人舞步初始化",yF.LABPLUS_UART_SET_MIDI_VOL_HELPURL="http://wiki.labplus.cn/index.php?title=MIDI(%E7%94%B5%E5%AD%90%E7%90%B4)",yF.LABPLUS_UART_SET_MIDI_VOL_TOOLTIP="",yF.LABPLUS_UART_SET_MIDI_VOL_MESSAGE0="设置MIDI模块音量为 %1",yF.labplus_mapping_MESSAGE0="映射%1 从%2 , %3到%4 , %5",yF.labplus_mapping_TOOLTIP="将0~100中的10映射到0~200中并返回映射值",yF.labplus_mapping_HELPURL="",yF.JOINT_MIDI_PIANO="平台钢琴",yF.JOINT_MIDI_BRIGHTACOUSTICPIANO="亮音钢琴",yF.JOINT_MIDI_ELECTRICGRANDPIANO="电钢琴",yF.JOINT_MIDI_HARPSICHORD="大键琴",yF.JOINT_MIDI_Celesta="钢片琴",yF.JOINT_MIDI_Glockenspiel="钟琴",yF.JOINT_MIDI_Musicalbox="音乐盒",yF.JOINT_MIDI_Marimba="马林巴琴",yF.JOINT_MIDI_Xylophone="木琴",yF.JOINT_MIDI_TubularBell="管钟",yF.JOINT_MIDI_Dulcimer="洋琴",yF.JOINT_Vibraphone="颤音琴",yF.JOINT_MIDI_ORGAN="音栓风琴",yF.JOINT_Acoustic_Guitar="木吉他",yF.JOINT_Electric_Guitar="电吉他",yF.JOINT_Acoustic_Bass="民谣贝斯",yF.JOINT_String_Ensemble="弦乐合奏",yF.JOINT_Violin="小提琴",yF.JOINT_Trumpet="小号",yF.JOINT_Sax="萨克斯",yF.JOINT_Steel_Drums="钢鼓",yF.JOINT_Lead="合成音主旋律",yF.JOINT_Pad="合成音衬底",yF.LABPLUS_PLAY_BUZZER_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",yF.LABPLUS_PLAY_BUZZER_NOTE_TOOLTIP="",yF.LABPLUS_PLAY_BUZZER_NOTE_MESSAGE0="播放音调 %1",yF.Carbit_init_MESSAGE0="CarBit初始化",yF.Carbit_init_TOOLTIP="",yF.Carbit_init_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_setLeftMotor_MESSAGE0="B2电机速度 %1",yF.Carbit_setLeftMotor_TOOLTIP="范围:-100~100",yF.Carbit_setLeftMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_setRightMotor_MESSAGE0="B1电机速度 %1",yF.Carbit_setRightMotor_TOOLTIP="范围:-100~100",yF.Carbit_setRightMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_analog_light_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_analog_light_TOOLTIP="Q3对应Pin1,Q4对应Pin2",yF.Carbit_analog_light_MESSAGE0="%1 模拟光线的值",yF.Carbit_Speed_U10_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_Speed_U10_TOOLTIP="对应U10",yF.Carbit_Speed_U10_MESSAGE0="左轮速度",yF.Carbit_Speed_U11_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_Speed_U11_TOOLTIP="对应U11",yF.Carbit_Speed_U11_MESSAGE0="右轮速度",yF.Carbit_Distance_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_Distance_TOOLTIP="",yF.Carbit_Distance_MESSAGE0="超声波的值",yF.Carbit_tracking_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",yF.Carbit_tracking_TOOLTIP="",yF.Carbit_tracking_MESSAGE0="循迹参数 %1 直行速度 %2 最大限速 %3 转弯延时 %5 转弯速度系数 %4 ",yF.XUNFEI_SPEECH_TTS_HELPURL="",yF.XUNFEI_SPEECH_TTS_TOOLTIP="合成音频文件格式只能是 *.pcm",yF.XUNFEI_SPEECH_TTS_MESSAGE0="[讯飞语音] 合成音频 %1 APPID %2 APISecret %3 APIKey %4 文字内容 %5 转存为音频文件 %6",yF.XUNFEI_SPEECH_IAT_HELPURL="",yF.XUNFEI_SPEECH_IAT_TOOLTIP="可识别的音频格式有 *.pcm 与 *.wav",yF.XUNFEI_SPEECH_IAT_MESSAGE0="[讯飞语音] 识别音频 %1 APPID %2 APISecret %3 APIKey %4 待识别音频文件 %5",yF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",yF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",yF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[讯飞语音] 识别结果",yF.MPYTHON_ZKAI_LCD_INIT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdinittype1-freq15000000-colorlcdblack",yF.MPYTHON_ZKAI_LCD_INIT_MESSAGE0="LCD 屏幕初始化",yF.MPYTHON_ZKAI_LCD_INIT_TOOLTIP="初始化 LCD 屏幕显示",yF.MPYTHON_ZKAI_LCD_ROTATION_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",yF.MPYTHON_ZKAI_LCD_ROTATION_MESSAGE0="LCD 屏幕方向%1",yF.MPYTHON_ZKAI_LCD_ROTATION_TOOLTIP="设置 LCD 屏幕方向,取值范围 [0,3], 从0到3依次顺时针旋转",yF.MPYTHON_ZKAI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",yF.MPYTHON_ZKAI_SENSOR_RESET_MESSAGE0="摄像头 初始化",yF.MPYTHON_ZKAI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",yF.MPYTHON_ZKAI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",yF.MPYTHON_ZKAI_SENSOR_ENABLE_MESSAGE0="摄像头%1",yF.MPYTHON_ZKAI_SENSOR_ENABLE_TOOLTIP="获取图像",yF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdwidth",yF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_MESSAGE0="LCD 获取%1",yF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_TOOLTIP="返回 LCD 的宽度(水平分辨率);高度(垂直分辨率)",yF.MPYTHON_ZKAI_LCD_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",yF.MPYTHON_ZKAI_LCD_MI_MESSAGE0="LCD 设置镜像",yF.MPYTHON_ZKAI_LCD_MI_TOOLTIP="设置是否镜像",yF.MPYTHON_ZKAI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",yF.MPYTHON_ZKAI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",yF.MPYTHON_ZKAI_LCD_TEXT_TOOLTIP="仅支持字母和数字",yF.MPYTHON_ZKAI_SENSOR_OffOn_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%85%B3%E9%97%AD%E6%91%84%E5%83%8F%E5%A4%B4",yF.MPYTHON_ZKAI_SENSOR_OffOn_MESSAGE0="摄像头%1",yF.MPYTHON_ZKAI_SENSOR_OffOn_TOOLTIP="1 表示开启摄像头 0 表示关闭摄像头",yF.MPYTHON_ZKAI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",yF.MPYTHON_ZKAI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",yF.MPYTHON_ZKAI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",yF.MPYTHON_ZKAI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",yF.MPYTHON_ZKAI_SENSOR_RETURN_MESSAGE0="摄像头 获取%1",yF.MPYTHON_ZKAI_SENSOR_RETURN_TOOLTIP="(ZKAI)摄像头返回参数(宽高,获取帧缓冲,获取ID)",yF.MPYTHON_ZKAI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",yF.MPYTHON_ZKAI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",yF.MPYTHON_ZKAI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",yF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",yF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",yF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",yF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%A2%9E%E7%9B%8A%E5%80%BC",yF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_MESSAGE0="摄像头 获取增益值",yF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_TOOLTIP="获取摄像头增益值",yF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",yF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 水平镜像%1",yF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",yF.MPYTHON_ZKAI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",yF.MPYTHON_ZKAI_IMAGE_LAB_MESSAGE0="(掌控AI)寻找颜色 LAB值%1",yF.MPYTHON_ZKAI_IMAGE_LAB_TOOLTIP="image寻找颜色",yF.MPYTHON_ZKAI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",yF.MPYTHON_ZKAI_TRACE_COLOR_MESSAGE0="(掌控AI)追踪色块 LAB颜色%1 边界框小于%2 像素小于%3 过滤",yF.MPYTHON_ZKAI_TRACE_COLOR_TOOLTIP="追踪色块",yF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_HELPURL="",yF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(掌控AI)追踪颜色 显示%1",yF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",yF.MPYTHON_ZKAI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_ALL_MESSAGE0="(掌控AI)%1获取识别后色块的 所有参数",yF.MPYTHON_ZKAI_BLOB_ALL_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_X_MESSAGE0="(掌控AI)%1获取识别后色块的 x坐标",yF.MPYTHON_ZKAI_BLOB_X_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_Y_MESSAGE0="(掌控AI)%1获取识别后色块的 y坐标",yF.MPYTHON_ZKAI_BLOB_Y_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_W_MESSAGE0="(掌控AI)%1获取识别后色块的 宽度",yF.MPYTHON_ZKAI_BLOB_W_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_H_MESSAGE0="(掌控AI)%1获取识别后色块的 高度",yF.MPYTHON_ZKAI_BLOB_H_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_NUMBER_MESSAGE0="(掌控AI)%1获取识别后色块的 数量",yF.MPYTHON_ZKAI_BLOB_NUMBER_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_CENTER_X_MESSAGE0="(掌控AI)%1获取识别后色块的 中心x坐标",yF.MPYTHON_ZKAI_BLOB_CENTER_X_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_CENTER_Y_MESSAGE0="(掌控AI)%1获取识别后色块的 中心y坐标",yF.MPYTHON_ZKAI_BLOB_CENTER_Y_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",yF.MPYTHON_ZKAI_BLOB_ORTHOGON_MESSAGE0="(掌控AI)%1获取识别后色块的 矩形",yF.MPYTHON_ZKAI_BLOB_ORTHOGON_TOOLTIP="返回blob 类 -- 色块对象",yF.MPYTHON_ZKAI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_FACE_TRACKING_MESSAGE0="(掌控AI)选择训练模型 人脸",yF.MPYTHON_ZKAI2_FACE_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",yF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_MESSAGE0="(掌控AI)调用摄像头进行 人脸识别",yF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",yF.MPYTHON_ZKAI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_MESSAGE0="(掌控AI)获取识别后人脸的 所有参数",yF.MPYTHON_ZKAI2_RESULT_FACE_TOOLTIP="获取识别后人脸的 所有参数",yF.MPYTHON_ZKAI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_X_MESSAGE0="(掌控AI)获取识别后人脸的 x坐标",yF.MPYTHON_ZKAI2_RESULT_FACE_X_TOOLTIP="获取识别后人脸的 x坐标",yF.MPYTHON_ZKAI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_Y_MESSAGE0="(掌控AI)获取识别后人脸的 y坐标",yF.MPYTHON_ZKAI2_RESULT_FACE_Y_TOOLTIP="获取识别后人脸的 y坐标",yF.MPYTHON_ZKAI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_W_MESSAGE0="(掌控AI)获取识别后人脸的 宽度",yF.MPYTHON_ZKAI2_RESULT_FACE_W_TOOLTIP="获取识别后人脸的 宽度",yF.MPYTHON_ZKAI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_H_MESSAGE0="(掌控AI)获取识别后人脸的 高度",yF.MPYTHON_ZKAI2_RESULT_FACE_H_TOOLTIP="获取识别后人脸的 高度",yF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_MESSAGE0="(掌控AI)获取识别后人脸的 置信度",yF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_TOOLTIP="获取识别后人脸的 置信度",yF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_MESSAGE0="(掌控AI)获取识别后人脸的 数量",yF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_TOOLTIP="获取识别后人脸的 数量",yF.MPYTHON_ZKAI_LCD_DISPLAY_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddisplayimage-roiauto",yF.MPYTHON_ZKAI_LCD_DISPLAY_MESSAGE0="LCD 显示生效",yF.MPYTHON_ZKAI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示一张 image",yF.MPYTHON_ZKAI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",yF.MPYTHON_ZKAI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",yF.MPYTHON_ZKAI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",yF.MPYTHON_ZKAI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_20class_TRACKING_MESSAGE0="(掌控AI)选择训练模型 20类",yF.MPYTHON_ZKAI2_20class_TRACKING_TOOLTIP="可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",yF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(掌控AI)调用摄像头进行 20类识别",yF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_TOOLTIP="调用摄像头进行 20类识别",yF.MPYTHON_ZKAI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_MESSAGE0="(掌控AI)获取识别后20类的 所有参数",yF.MPYTHON_ZKAI2_RESULT_20CLASS_TOOLTIP="获取识别后20类的 所有参数",yF.MPYTHON_ZKAI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_X_MESSAGE0="(掌控AI)获取识别后20类的 x坐标",yF.MPYTHON_ZKAI2_RESULT_20CLASS_X_TOOLTIP="获取识别后20类的 x坐标",yF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_MESSAGE0="(掌控AI)获取识别后20类的 y坐标",yF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_TOOLTIP="获取识别后20类的 y坐标",yF.MPYTHON_ZKAI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_W_MESSAGE0="(掌控AI)获取识别后20类的 宽度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_W_TOOLTIP="获取识别后20类的 宽度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_H_MESSAGE0="(掌控AI)获取识别后20类的 高度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_H_TOOLTIP="获取识别后20类的 高度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_MESSAGE0="(掌控AI)获取识别后20类的 置信度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_TOOLTIP="获取识别后20类的 置信度",yF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(掌控AI)获取识别后20类的 数量",yF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_TOOLTIP="获取识别后20类的 数量",yF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_MESSAGE0="(掌控AI)获取识别后20类的 类型",yF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_TOOLTIP="获取识别后20类的 类型可以放入获取识别的参数,可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",yF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_MESSAGE0="(掌控AI)获取识别后20类的 类型数量",yF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_TOOLTIP="获取识别后20类的 类型数量",yF.MPYTHON_ZKAI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_NUMBER_DISCERN_MESSAGE0="(掌控AI)选择训练模型 手写数字",yF.MPYTHON_ZKAI2_NUMBER_DISCERN_TOOLTIP="选择训练模型 手写数字识别",yF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",yF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_MESSAGE0="(掌控AI)调用摄像头进行 手写数字识别",yF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_TOOLTIP="调用摄像头进行 手写数字识别",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_MESSAGE0="(掌控AI)获取识别后手写数字的 所有参数",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_TOOLTIP="手写数字识别参数",yF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_MESSAGE0="(掌控AI)获取识别后手写数字的 数字",yF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_TOOLTIP="手写数字识别 数字",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(掌控AI)获取识别后手写数字的 置信度",yF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_TOOLTIP="手写数字 识别数字 置信度",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_TOOLTIP="",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_MESSAGE0="(掌控AI)获取 识别%1",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_MESSAGE0="(掌控AI)获取 识别 所有参数",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_MESSAGE0="(掌控AI)人脸识别",yF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_TOOLTIP="可以放入获取识别的参数",yF.MPYTHON_ZKAI_IMAGE_20CLASS_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",yF.MPYTHON_ZKAI_IMAGE_20CLASS_TOOLTIP="(掌控AI)可以放入获取识别的参数,可以识别20个类型,分别是飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛, 餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",yF.MPYTHON_ZKAI_LCD_SHOW_REC_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawrectanglex-y-w-h-color-thickness1-fillfalse",yF.MPYTHON_ZKAI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",yF.MPYTHON_ZKAI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",yF.MPYTHON_ZKAI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",yF.MPYTHON_ZKAI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",yF.MPYTHON_ZKAI_LCD_SHOW_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawlinex0-y0-x1-y1-color-thickness1",yF.MPYTHON_ZKAI_LCD_CLEAR_ALL_MESSAGE0="LCD 显示清空",yF.MPYTHON_ZKAI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",yF.MPYTHON_ZKAI_LCD_CLEAR_ALL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdclear",yF.MPYTHON_ZKAI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",yF.MPYTHON_ZKAI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",yF.MPYTHON_ZKAI_LCD_return_colour_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagegetpixelx-y-rgbtuple",yF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",yF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",yF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcirclex-y-radius-color-thickness1-fillfalse",yF.MPYTHON_ZKAI_LCD_TEXT_MOST_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",yF.MPYTHON_ZKAI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",yF.MPYTHON_ZKAI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",yF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",yF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",yF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcrossx-y-color-size5-thickness1",yF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",yF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",yF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawarrowx0-y0-x1-y1-color-thickness1",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-2%EF%BC%9A-%E6%98%BE%E7%A4%BA%E5%9B%BE%E7%89%87",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagetorainbowcopyfalse",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="LCD 显示热图颜色",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="可以在液晶屏上显示一张 image的热图颜色",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagesavepath-roi-quality50",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagecopyroi-copytofbfalse",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",yF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_NEGATE="数字反转",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻转",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="线性极",yF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="对数极",yF.MPYTHON_ZKAI_SENSOR_PATTERN_GRAYSCALE="灰度",yF.MPYTHON_ZKAI_SENSOR_PATTERN_COLOR="彩色",yF.MPYTHON_ZKAI_SENSOR_ENABLE_START="开始抓取图像",yF.MPYTHON_ZKAI_SENSOR_ENABLE_STOP="停止抓取图像",yF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_H="水平镜像",yF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_V="垂直翻转",yF.MPYTHON_ZKAI_SENSOR_SETS_CONTRAST="对比度",yF.MPYTHON_ZKAI_SENSOR_SETS_BRIGHTNESS="亮度",yF.MPYTHON_ZKAI_SENSOR_SETS_SATURATION="饱和度",yF.MPYTHON_ZKAI2_FACE_YOLO="人脸识别",yF.MPYTHON_ZKAI2_CLASS_20_YOLO="20类识别",yF.MPYTHON_ZKAI2_MNIST_NET="数字识别",yF.MPYTHON_ZKAI2_PHOTOGRAPH_FACE_YOLO="人脸",yF.MPYTHON_ZKAI2_PHOTOGRAPH_CLASS_20_YOLO="20类",yF.MPYTHON_ZKAI_TRACE_COLOR_RECTANGLE="矩形",yF.MPYTHON_ZKAI_TRACE_COLOR_CROSS="十字",yF.MPYTHON_NAME_PYTHON_ENVIRONMENT_HELPURL="",yF.MPYTHON_NAME_PYTHON_ENVIRONMENT_MESSAGE0="声明python 运行环境",yF.MPYTHON_NAME_PYTHON_ENVIRONMENT_TOOLTIP="",yF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="I2C获取颜色",yF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="返回列表",yF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",yF.MPYTHON_LARK_GET_COLOR_MESSAGE0="I2C获取 %1",yF.MPYTHON_lARK_RED="红色",yF.MPYTHON__LARK_GREEN="绿色",yF.MPYTHON__LARK_BLUE="蓝色",yF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",yF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="I2C获取HSV",yF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",yF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="i2C获取HSV %1",yF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",yF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="I2C获取颜色",yF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",yF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="识别 %1",yF.MPYTHON_LARK_RED="红色",yF.MPYTHON_LARK_GREEN="绿色",yF.MPYTHON_LARK_BLUE="蓝色",yF.MPYTHON_LARK_ORANGE="橙色",yF.MPYTHON_LARK_YELLOW="黄色",yF.MPYTHON_LARK_PURPLE="紫色",yF.MPYTHON_LARK_CYAN="青色",yF.MPYTHON_LARK_NONE="无色",yF.MPYTHON_LARK_NULL="无法获取",yF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",yF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="I2C超声波",yF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",yF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="I2C设置 %1 速度 %2",yF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",yF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="I2C获取 %1 巡线值",yF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="右边",yF.mpython_LARK_GET_LINE_LEFT_ON_I2C="左边",yF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",yF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="I2C循迹传感 %1 遇到黑线",yF.MPYTHON_LARK_SEARCH_LEFT="左边",yF.MPYTHON_LARK_SEARCH_RIGHT="右边",yF.MPYTHON_LARK_SEARCH_LEFT2="两边都",yF.MPYTHON_LARK_SEARCH_RIGHT2="两边都没有",yF.MPYTHON_LARK_SEARCH_BOTH="两边都",yF.MPYTHON_LARK_SEARCH_NONE="两边都没有",yF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",yF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="千里马获取颜色",yF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",yF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="千里马获取 %1",yF.MPYTHON_lARK_CAR_RED="红色",yF.MPYTHON__LARK_CAR_GREEN="绿色",yF.MPYTHON__LARK_CAR_BLUE="蓝色",yF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",yF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="千里马获取HSV",yF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",yF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="千里马获取HSV %1",yF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",yF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="千里马识别颜色",yF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",yF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="千里马识别颜色 %1",yF.MPYTHON_LARK_CAR_RED="红色",yF.MPYTHON_LARK_CAR_GREEN="绿色",yF.MPYTHON_LARK_CAR_BLUE="蓝色",yF.MPYTHON_LARK_CAR_ORANGE="橙色",yF.MPYTHON_LARK_CAR_YELLOW="黄色",yF.MPYTHON_LARK_CAR_PURPLE="紫色",yF.MPYTHON_LARK_CAR_CYAN="青色",yF.MPYTHON_LARK_CAR_NONE="无识别",yF.MPYTHON_LARK_CAR_NULL="识别错误",yF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",yF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="千里马获取超声波",yF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",yF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="千里马获取 %1 循迹数值",yF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="右边",yF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="左边",yF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",yF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="千里马循迹传感器 %1 碰到黑线",yF.MPYTHON_LARK_CAR_SEARCH_LEFT="左边",yF.MPYTHON_LARK_CAR_SEARCH_RIGHT="右边",yF.MPYTHON_LARK_CAR_SEARCH_LEFT2="两边",yF.MPYTHON_LARK_CAR_SEARCH_NONE="两边都没有",yF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",yF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="电机驱动 %1 速度 %2",yF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",yF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="千里马 %1 速度 %2",yF.MPYTHON_LARK_CAR_MOTION_LEFT="左转",yF.MPYTHON_LARK_CAR_MOTION_RIGHT="右转",yF.MPYTHON_LARK_CAR_MOTION_FORWARD="前进",yF.MPYTHON_LARK_CAR_MOTION_BACKWARD="后退",yF.MPYTHON_LARK_CAR_MOTION_STOP="停止",yF.MPYTHON_DEFINE_THREAD_MESSAGE0="定义线程 %1",yF.MPYTHON_RUN_THREAD_MESSAGE0="运行线程 %1",yF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) 转换数字为bytes %1 %2 %3 %4 待转换数字 %5",yF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) 解包bytes为数字 %1 %2 %3 %4 待转换bytes %5",yF.LITTLE_ENDIAN="低位优先(默认)",yF.BIG_ENDIAN="高位优先",yF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[适用2.0板] 当掌控板 %1 时",yF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",yF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",yF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="向左倾斜",yF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="向右倾斜",yF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="向前倾斜",yF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="向后倾斜",yF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="正面朝上",yF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="正面朝下",yF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="被单击",yF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="被双击",yF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="坠落",yF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="横滚角",yF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="俯仰角",yF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",yF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",yF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="掌控板 %1",yF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",yF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",yF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="按键 %1 已经按下",yF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",yF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",yF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="按键 %1 曾经按下",yF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",yF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",yF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="按键 %1 按下过的次数",yF.MPYTHON2_BUTTON_EVENT_MESSAGE0="当按键 %1 被 %2 时",yF.MPYTHON2_BUTTON_EVENT_HELPURL="",yF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",yF.MPYTHON2_BUTTON_EVENT_PRESSED="按下",yF.MPYTHON2_BUTTON_EVENT_RELEASED="松开",yF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",yF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",yF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="触摸键 %1 已经按下",yF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",yF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",yF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="触摸键 %1 曾经按下",yF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",yF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",yF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="触摸键 %1 按下过的次数",yF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",yF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",yF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="触摸键 %1 值",yF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="当触摸键 %1 被 %2 时",yF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",yF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",yF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="触摸",yF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="释放",yF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="设置触摸键 %1 阀值为 %2",yF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",yF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",yF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",yF.BLE_UUID_TOOLTIP="",yF.BLE_SETUP_PERIPHERAL_HELPURL="",yF.BLE_SETUP_PERIPHERAL_TOOLTIP="",yF.BLE_SETUP_PERIPHERAL_MESSAGE0="构建 BLE 外围设备对象 %1 显示名称 %2 Service UUID %3",yF.BLE_ADD_CHARACTERISTIC_HELPURL="",yF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",yF.BLE_ADD_CHARACTERISTIC_MESSAGE0="定义 BLE 属性 %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",yF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",yF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",yF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE 外围设备 %1",yF.BLE_START_BROADCASTING="开始广播",yF.BLE_STOP_BROADCASTING="停止广播",yF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",yF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",yF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="读 BLE 设备的属性 %1",yF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",yF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",yF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="写 BLE 设备的属性 %1 %2 值 %3 Notify %4",yF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",yF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",yF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE 外围设备断开连接",yF.BLE_PERIPHERAL_MAC_HELPURL="",yF.BLE_PERIPHERAL_MAC_TOOLTIP="",yF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE 外围设备 MAC地址",yF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",yF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",yF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="当 BLE 与中央设备建立连接时 %1 连接句柄 %2 地址类型 %3 中央设备的MAC地址 %4",yF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",yF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",yF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="当 BLE 设备的属性值被改写时 %1 连接句柄 %2 被写属性句柄 %3 写入的数据 %4",yF.BLE_SETUP_CENTERAL_HELPURL="",yF.BLE_SETUP_CENTERAL_TOOLTIP="",yF.BLE_SETUP_CENTERAL_MESSAGE0="构建 BLE 中央设备对象 显示名称 %1",yF.BLE_CENTERAL_CONNECT_HELPURL="",yF.BLE_CENTERAL_CONNECT_TOOLTIP="",yF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE 中央设备连接到 %1 %2",yF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",yF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",yF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE 外围设备已连接 ?",yF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",yF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",yF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="设定 %1 为 已连接外围设备 属性对象 %2 Service UUID %3 Characteristic UUID %4",yF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",yF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",yF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="读 已连接外围设备的 属性 %1 值",yF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",yF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",yF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="写 已连接外围设备的 属性 %1 值 %2",yF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",yF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",yF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="当 已连接外围设备发起 Notify 通知事件时 %1 属性的值柄 %2 通知的属性值 %3",yF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",yF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",yF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="已连接的外围设备 %1",yF.BLE_CENTERAL_CLOSE_HELPURL="",yF.BLE_CENTERAL_CLOSE_TOOLTIP="",yF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE 中央设备 断开连接",yF.BLE_INFO_NAME="蓝牙名称",yF.BLE_INFO_MAC="MAC地址",yF.BLE_INFO_RSSI="信号强度",yF.BLE_INFO_ADDRTYPE="地址类型",yF.BLE_INFO_ADVTYPE="广播类型",yF.BLE_INFO_DATA="原始数据(元组)",yF.BLE_SETUP_UART_HELPURL="",yF.BLE_SETUP_UART_TOOLTIP="",yF.BLE_SETUP_UART_MESSAGE0="构建 BLE UART从机 显示名称 %1",yF.BLE_UART_IS_CONNECTED_HELPURL="",yF.BLE_UART_IS_CONNECTED_TOOLTIP="",yF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART 已连接 ?",yF.BLE_UART_ANY_HELPURL="",yF.BLE_UART_ANY_TOOLTIP="",yF.BLE_UART_ANY_MESSAGE0="BLE UART 可读字节数量",yF.BLE_UART_IRQ_HELPURL="",yF.BLE_UART_IRQ_TOOLTIP="",yF.BLE_UART_IRQ_MESSAGE0="当 BLE UART 接收到数据时 %1 执行 %2",yF.BLE_UART_READ_HELPURL="",yF.BLE_UART_READ_TOOLTIP="从 UART 另一端发送过来的消息",yF.BLE_UART_READ_MESSAGE0="已接收数据",yF.BLE_UART_WRITE_HELPURL="",yF.BLE_UART_WRITE_TOOLTIP="",yF.BLE_UART_WRITE_MESSAGE0="BLE UART 发送字节 %1",yF.BLE_UART_CLOSE_HELPURL="",yF.BLE_UART_CLOSE_TOOLTIP="",yF.BLE_UART_CLOSE_MESSAGE0="BLE UART 断开连接",yF.BLE_SETUP_UART_MASTER_HELPURL="",yF.BLE_SETUP_UART_MASTER_TOOLTIP="",yF.BLE_SETUP_UART_MASTER_MESSAGE0="构建 BLE UART主机 连接到 %1 %2",yF.BLE_SETUP_HID_HELPURL="",yF.BLE_SETUP_HID_TOOLTIP="",yF.BLE_SETUP_HID_MESSAGE0="构建 BLE HID %1 对象 %2 显示名称 %3 电池电量 %4",yF.BLE_HID_MOUSE="鼠标",yF.BLE_HID_KEYBOARD="键盘",yF.BLE_HID_CONSUMER="遥控器",yF.BLE_HID_ADVERTISE_HELPURL="",yF.BLE_HID_ADVERTISE_TOOLTIP="",yF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID设备 %1",yF.BLE_HID_CONNECT_EVENT_HELPURL="",yF.BLE_HID_CONNECT_EVENT_TOOLTIP="",yF.BLE_HID_CONNECT_EVENT_MESSAGE0="当 BLE HID设备 连接时",yF.BLE_HID_DISCONNECT_HELPURL="",yF.BLE_HID_DISCONNECT_TOOLTIP="",yF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID设备 断开连接",yF.BLE_HID_BATTERY_LEVEL_HELPURL="",yF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",yF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID设备 电池电量",yF.BLE_HID_MOUSE_BUTTONS_HELPURL="",yF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",yF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="鼠标键 %1",yF.BLE_HID_MOUSE_CLICK_HELPURL="",yF.BLE_HID_MOUSE_CLICK_TOOLTIP="",yF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID 鼠标 点击按键 %1",yF.BLE_HID_MOUSE_PRESS_HELPURL="",yF.BLE_HID_MOUSE_PRESS_TOOLTIP="",yF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID 鼠标 长按按键 %1",yF.BLE_HID_MOUSE_RELEASE_HELPURL="",yF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",yF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID 鼠标 释放按键 %1",yF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",yF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",yF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID 鼠标 释放所有按键",yF.BLE_HID_MOUSE_MOVE_HELPURL="",yF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - 光标移动量,范围 ±127 。\nwheel - 滚轮,范围 ±127 。",yF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID 鼠标 光标移动 %1 X轴移动量 %2 Y轴移动量 %3 滚轮 %4",yF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",yF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",yF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="键盘按键 %1",yF.BLE_HID_KEYBOARD_SEND_HELPURL="",yF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",yF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID 键盘 按下按键 %1",yF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",yF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",yF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID 键盘 同时按下按键 %1 %2 %3",yF.BLE_HID_KEYBOARD_PRESS_HELPURL="",yF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",yF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID 键盘 长按按键 %1",yF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",yF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",yF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID 键盘 释放按键 %1",yF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",yF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",yF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID 键盘 释放所有按键",yF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",yF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",yF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="遥控器键 %1",yF.BLE_HID_CONSUMER_SEND_HELPURL="",yF.BLE_HID_CONSUMER_SEND_TOOLTIP="",yF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID 遥控器点击 %1",yF.BLE_SETUP_IBEACON_HELPURL="",yF.BLE_SETUP_IBEACON_TOOLTIP="",yF.BLE_SETUP_IBEACON_MESSAGE0="构建 BLE iBeacon设备 %1 UUID %2 major %3 minor %4",yF.BLE_IBEACON_ADVERTISE_HELPURL="",yF.BLE_IBEACON_ADVERTISE_TOOLTIP="",yF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon设备 %1",yF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",yF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="返回电量,单位mV",yF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="拓展板的电压值(mV)",yF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",yF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="返回编码后的红外脉冲数据buff",yF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="拓展板 红外脉冲任意编码 %1 载波频率(Hz) %2 code总数 %3 循环码位置 %4 code列表 %5 编码波形数据 %6",yF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",yF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="返回编码后的红外脉冲数据buff\n用户码:0~255\n命令码:0~255",yF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="拓展板 红外脉冲NEC编码 %1 用户码 %2 命令码 %3",yF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",yF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",yF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="拓展板 发送红外脉冲数据 %1 %2",yF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="只发一次",yF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="持续发送",yF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",yF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="当发送重复码后,使用此函数来停止发送。",yF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="拓展板 停止发送红外脉冲数据",yF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",yF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="学习开始后,需等待4秒,之后返回学习结果。";yF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="拓展板 开始红外学习",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="拓展板 红外学习有结果 ?",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP="返回学习后的“红外编码数据”,须在 learn 函数后使用。",yF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="拓展板 学习到的红外编码数据",yF.MPYTHON_MLX90615_SET_HELPURL="",yF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 非接触测温传感器 设置发射系数%1",yF.MPYTHON_MLX90615_SET_TOOLTIP="",yF.MPYTHON_MLX90615_GET_HELPURL="",yF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 非接触测温传感器 获取系数",yF.MPYTHON_MLX90615_GET_TOOLTIP="",yF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",yF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 非接触测温传感器 获取测温",yF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",yF.MPYTHON_MQ135_INIT_HELPURL="",yF.MPYTHON_MQ135_INIT_MESSAGE0="MQ135初始化 输出引脚%1 温度%2 ℃ 湿度%3 %",yF.MPYTHON_MQ135_INIT_TOOLTIP="MQ135上的VCC 连接扩展板的电源口 V ,GND连接扩展板的地线口 G ,AO输出连接扩展板的引脚 P0/P1(即选引脚)\nMQ135主要用于检测空气中的二氧化碳、酒精、苯、氮氧化物、氨等气体的浓度",yF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 返回 %1",yF.MPYTHON_MQ135_OPTIONS_HELPURL="",yF.MPYTHON_MQ135_OPTIONS_TOOLTIP="返回探测到的二氧化碳的百万分之一(假设只有空气中的二氧化碳) ppm浓度",yF.MPYTHON_MQ135_GET_RZERO="校正传感器电阻",yF.MPYTHON_MQ135_GET_CORRECTED_RZERO="校正传感器电阻(校准温度、湿度)",yF.MPYTHON_MQ135_GET_PPM="二氧化碳、酒精、苯、氮氧化物、氨等气体ppm浓度",yF.MPYTHON_MQ135_GET_CORRECTED_PPM="二氧化碳、酒精、苯、氮氧化物、氨等气体ppm浓度(校准温度、湿度)",yF.mpython_gyroscope_get_HELPURL="",yF.mpython_gyroscope_get_MESSAGE0="%1 轴角速度",yF.mpython_gyroscope_get_TOOLTIP="v2.3版本以上掌控版适用",yF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",yF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",yF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",yF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",yF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",yF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",yF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",yF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",yF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",yF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="设置角速度范围,默认为 ±256dps。仅适用于掌控板2.3及以上版本",yF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="设置角速度范围为 %1",yF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",yF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="校准陀螺仪角速度计的3个轴(x,y,z)的角速度值偏差。\n一般情况下无需校准,只有遇到角速度偏差较大时才要校准。\n x , y , z 为调整偏差值,可修正范围为 ±1024dps。\n注意:v2.3版本以后适用",yF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="校准角速度值 %1 X轴偏差 %2 Y轴偏差 %3 Z轴偏差 %4";const fF=yF,bF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"是數字",TEXT_IS_ALPHA:"是字母",TEXT_IS_ALNUM:"是數字和字母的組合",TEXT_LIST_START:"初始化列表 [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"初始化元組 (",TEXT_TUPLE_END:")",TEXT_DICT_START:"初始化字典 {",TEXT_DICT_END:"}",TEXT_SET_START:"初始化集合 {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",ADD_COMMENT:"添加註釋",CHANGE_VALUE_TITLE:"更改值:",CLEAN_UP:"整理塊",COLLAPSE_ALL:"折疊塊",COLLAPSE_BLOCK:"折疊塊",COLOUR_BLEND_COLOUR1:"顏色1",COLOUR_BLEND_COLOUR2:"顏色2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"比例",COLOUR_BLEND_TITLE:"混合",COLOUR_BLEND_TOOLTIP:"用一個給定的比率(0.0-1.0)混合兩種顏色。",COLOUR_PICKER_HELPURL:"https://zh.wikipedia.org/wiki/顏色",COLOUR_PICKER_TOOLTIP:"從調色板中選擇一種顏色。",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"隨機顏色",COLOUR_RANDOM_TOOLTIP:"隨機選擇一種顏色。",COLOUR_RGB_BLUE:"藍色",COLOUR_RGB_GREEN:"綠色",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"紅色",COLOUR_RGB_TITLE:"顏色",COLOUR_RGB_TOOLTIP:"通過指定紅色、綠色和藍色的量創建一種顏色。所有的值必須介於0和100之間。",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"中斷循環",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"繼續下一次循環",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"中斷包含它的循環。",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"跳過這個循環的剩余部分,並繼續下一次叠代。",CONTROLS_FLOW_STATEMENTS_WARNING:"警告:此塊僅可用於在一個循環內。",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"為每個項目 %1 在列表中 %2",CONTROLS_FOREACH_TOOLTIP:"遍歷每個列表中的項目,將變量“%1”設定到該項中,然後執行某些語句。",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"使用 %1 從範圍 %2 到 %3 每隔 %4",CONTROLS_FOR_TOOLTIP:"從起始數到結尾數中取出變量“%1”的值,按指定的時間間隔,執行指定的塊。",CONTROLS_IF_ELSEIF_TOOLTIP:"在if語句塊中增加一個條件。",CONTROLS_IF_ELSE_TOOLTIP:"添加一個最終的,包括所有情況的節到if塊中。",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",CONTROLS_IF_IF_TOOLTIP:"增加、刪除或重新排列各節來重新配置“if”塊。",CONTROLS_IF_MSG_ELSE:"否則",CONTROLS_IF_MSG_ELSEIF:"否則如果",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",CONTROLS_IF_MSG_IF:"如果",CONTROLS_IF_TOOLTIP_1:"如果值為真,執行一些語句。",CONTROLS_IF_TOOLTIP_2:"如果值為真,則執行第一塊語句。否則,則執行第二塊語句。",CONTROLS_IF_TOOLTIP_3:"如果第一個值為真,則執行第一塊的語句。否則,如果第二個值為真,則執行第二塊的語句。",CONTROLS_IF_TOOLTIP_4:"如果第一個值為真,則執行第一塊對語句。否則,如果第二個值為真,則執行語句的第二塊。如果沒有值為真,則執行最後一塊的語句。",CONTROLS_REPEAT_FOREVER:"一直重復",CONTROLS_REPEAT_FOREVER_TOOLTIP:"一直執行一些語句。",CONTROLS_REPEAT_HELPURL:"https://zh.wikipedia.org/wiki/For循環",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"重復 %1 次",CONTROLS_REPEAT_TOOLTIP:"多次執行一些語句。",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"重復直到",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"重復當",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"只要值為假,執行一些語句。",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"只要值為真,執行一些語句。",DELETE_ALL_BLOCKS:"刪除所有%1塊嗎?",DELETE_BLOCK:"刪除塊",DELETE_VARIABLE:"刪除“%1”變量",DELETE_VARIABLE_CONFIRMATION:"刪除“%2”變量的%1種用途麽?",DELETE_X_BLOCKS:"刪除塊",DISABLE_BLOCK:"禁用塊",DUPLICATE_BLOCK:"復制",ENABLE_BLOCK:"啟用塊",EXPAND_ALL:"展開塊",EXPAND_BLOCK:"展開塊",EXTERNAL_INPUTS:"多行輸入",HELP:"幫助",INLINE_INPUTS:"單行輸入",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"創建空列表",TUPLE_CREATE_EMPTY_TITLE:"創建空元組",DICT_CREATE_EMPTY_TITLE:"創建空字典",SET_CREATE_EMPTY_TITLE:"創建空集合",LISTS_CREATE_EMPTY_TOOLTIP:"返回一個列表,長度為 0,不包含任何數據記錄",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"列表",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"元組",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"字典",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"集合",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個列表塊。",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個元組塊。",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個字典塊。",SET_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個集合塊。",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"初始化列表",TUPLE_CREATE_WITH_INPUT_WITH:"初始化元組",DICT_CREATE_WITH_INPUT_WITH:"初始化字典",SET_CREATE_WITH_INPUT_WITH:"初始化集合",LISTS_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到列表中。",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到元組中。",DICT_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到字典中。",SET_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到集合中。",LISTS_CREATE_WITH_TOOLTIP:"建立一個具有任意數量項目的列表。",LISTS_GET_INDEX_FIRST:"第一",LISTS_GET_INDEX_FROM_END:"倒數第",LISTS_GET_INDEX_FROM_START:"第",LISTS_GET_INDEX_GET:"獲得",LISTS_GET_INDEX_GET_REMOVE:"取出並移除",LISTS_GET_INDEX_LAST:"最後",LISTS_GET_INDEX_RANDOM:"隨機",LISTS_GET_INDEX_REMOVE:"移除",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"在列表 %1 中移除 %2 項",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"返回列表中的第一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_FROM:"返回在列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"返回列表中的最後一項。",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"隨機返回列表中的一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"移除並返回列表中的第一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM:"移除並返回列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"移除並返回列表中的最後一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"移除並返回列表中的一個隨機項目中。",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"移除列表中的第一項",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM:"移除在列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"移除列表中的最後一項",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"刪除列表中的一個隨機的項。",LISTS_GET_SUBLIST_END_FROM_END:"到倒數第#",LISTS_GET_SUBLIST_END_FROM_START:"到#",LISTS_GET_SUBLIST_END_LAST:"到最後",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"從頭獲得子列表",LISTS_GET_SUBLIST_START_FROM_END:"從倒數#取得子列表",LISTS_GET_SUBLIST_START_FROM_START:"從#取得子列表",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"復制列表中指定的部分。",LISTS_INDEX_FROM_END_TOOLTIP:"%1是最後一項。",LISTS_INDEX_FROM_START_TOOLTIP:"%1是第一個項目。",LISTS_INDEX_OF_FIRST:"找出第一個項出現",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"找出最後一個項出現",LISTS_INDEX_OF_TOOLTIP:"返回在列表中的第一/最後一個匹配項的索引值。如果找不到項目則返回0",LISTS_INLIST:"在列表中",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1是空的",LISTS_ISEMPTY_TOOLTIP:"如果改列表為空,則返回真。",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"%1的長度",LISTS_LENGTH_TOOLTIP:"返回列表的長度。",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"建立列表 項 %1 重復 %2 次",LISTS_REPEAT_TOOLTIP:"建立包含指定重復次數的值的列表。",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"為",LISTS_SET_INDEX_INSERT:"插入在",LISTS_SET_INDEX_SET:"設置",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"在列表的起始處添加該項。",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM:"插入在列表中指定位置的項。",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"將該項追加到列表的末尾。",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"在列表中隨機插入項。",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"設置列表中的第一個項目。",LISTS_SET_INDEX_TOOLTIP_SET_FROM:"設置在列表中指定位置的項。",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"設置列表中的最後一項。",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"設置列表中一個隨機的項目。",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"升序",LISTS_SORT_ORDER_DESCENDING:"降序",LISTS_SORT_TITLE:"排序%1 %2 %3",LISTS_SORT_TOOLTIP:"排序一個列表的拷貝。",LISTS_SORT_TYPE_IGNORECASE:"按字母排序,忽略大小寫",LISTS_SORT_TYPE_NUMERIC:"按數字排序",LISTS_SORT_TYPE_TEXT:"按字母排序",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"從文本制作列表",LISTS_SPLIT_TEXT_FROM_LIST:"從列表組合文本",LISTS_SPLIT_TOOLTIP_JOIN:"加入文本列表至一個文本,由分隔符分隔。",LISTS_SPLIT_TOOLTIP_SPLIT:"拆分文本到文本列表,按每個分隔符拆分。",LISTS_SPLIT_WITH_DELIMITER:"用分隔符",LOGIC_BOOLEAN_FALSE:"假",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"返回真或假。",LOGIC_BOOLEAN_TRUE:"真",LOGIC_COMPARE_HELPURL:"https://zh.wikipedia.org/wiki/不等",LOGIC_COMPARE_TOOLTIP_EQ:"如果兩個輸入結果相等,則返回真。",LOGIC_COMPARE_TOOLTIP_GT:"如果第一個輸入結果比第二個大,則返回真。",LOGIC_COMPARE_TOOLTIP_GTE:"如果第一個輸入結果大於或等於第二個輸入結果,則返回真。",LOGIC_COMPARE_TOOLTIP_LT:"如果第一個輸入結果比第二個小,則返回真。",LOGIC_COMPARE_TOOLTIP_LTE:"如果第一個輸入結果小於或等於第二個輸入結果,則返回真。",LOGIC_COMPARE_TOOLTIP_NEQ:"如果兩個輸入結果不相等,則返回真。",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"非%1",LOGIC_NEGATE_TOOLTIP:"如果輸入結果為假,則返回真;如果輸入結果為真,則返回假。",LOGIC_NULL:"空",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"返回空值。",LOGIC_OPERATION_AND:"和",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"或",LOGIC_OPERATION_TOOLTIP_AND:"如果兩個輸入結果都為真,則返回真。",LOGIC_OPERATION_TOOLTIP_OR:"如果至少有一個輸入結果為真,則返回真。",LOGIC_TERNARY_CONDITION:"測試",LOGIC_TERNARY_HELPURL:"https://zh.wikipedia.org/wiki/條件運算符",LOGIC_TERNARY_IF_FALSE:"如果為假",LOGIC_TERNARY_IF_TRUE:"如果為真",LOGIC_TERNARY_TOOLTIP:"檢查“test”中的條件。如果條件為真,則返回“if true”的值,否則,則返回“if false”的值。",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://zh.wikipedia.org/wiki/算術",MATH_ARITHMETIC_TOOLTIP_ADD:"返回兩個數字的和。",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"返回兩個數字的商。",MATH_ARITHMETIC_TOOLTIP_MINUS:"返回兩個數字的區別。",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"返回兩個數字的乘積。",MATH_ARITHMETIC_TOOLTIP_POWER:"返回第一個數的第二個數次冪。",MATH_CHANGE_HELPURL:"https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95",MATH_CHANGE_TITLE:"將變量 %1 的值增加 %2",MATH_CHANGE_TOOLTIP:"將一個數添加到變量“%1”。",MATH_CONSTANT_HELPURL:"https://zh.wikipedia.org/wiki/數學常數",MATH_CONSTANT_TOOLTIP:"返回一個常見常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(無窮大)。",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"限制數字 %1 介於 (低) %2 到 (高) %3",MATH_CONSTRAIN_TOOLTIP:"限制數字介於兩個指定的數字之間",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"強制轉換數據類型",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"%1 ÷ %2 商的整數部分",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"可被整除",MATH_IS_EVEN:"是偶數",MATH_IS_NEGATIVE:"為負",MATH_IS_ODD:"是奇數",MATH_IS_POSITIVE:"為正",MATH_IS_PRIME:"是質數",MATH_IS_TOOLTIP:"如果數字是偶數、奇數、非負整數、正數、負數或如果它可被某數字整除,則返回真或假。",MATH_IS_WHOLE:"為整數",MATH_MODULO_HELPURL:"https://zh.wikipedia.org/wiki/模除",MATH_MODULO_TITLE:"%1 ÷ %2 的余數",MATH_MODULO_TOOLTIP:"返回這兩個數字相除後的余數。",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"對數字進行位運算",MATH_NUMBER_HELPURL:"https://zh.wikipedia.org/wiki/數",MATH_NUMBER_TOOLTIP:"一個數字。",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"列表中的平均數",MATH_ONLIST_OPERATOR_MAX:"列表中的最大值",MATH_ONLIST_OPERATOR_MEDIAN:"列表中位數",MATH_ONLIST_OPERATOR_MIN:"列表中的最小值",MATH_ONLIST_OPERATOR_MODE:"列表模式",MATH_ONLIST_OPERATOR_RANDOM:"列表的隨機項",MATH_ONLIST_OPERATOR_STD_DEV:"列表中的標準差",MATH_ONLIST_OPERATOR_SUM:"列表中的數的總和",MATH_ONLIST_TOOLTIP_AVERAGE:"返回列表中的數值的平均值。",MATH_ONLIST_TOOLTIP_MAX:"返回列表中最大數。",MATH_ONLIST_TOOLTIP_MEDIAN:"返回列表中的中位數。",MATH_ONLIST_TOOLTIP_MIN:"返回列表中最小數。",MATH_ONLIST_TOOLTIP_MODE:"返回列表中的最常見的項的列表。",MATH_ONLIST_TOOLTIP_RANDOM:"從列表中返回一個隨機的元素。",MATH_ONLIST_TOOLTIP_STD_DEV:"返回列表的標準偏差。",MATH_ONLIST_TOOLTIP_SUM:"返回列表中的所有數字的和。",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://zh.wikipedia.org/wiki/隨機數生成器",MATH_RANDOM_FLOAT_TITLE_RANDOM:"隨機小數",MATH_RANDOM_FLOAT_TOOLTIP:"返回介於(包含)0.0到1.0之間的隨機數。",MATH_RANDOM_INT_HELPURL:"https://zh.wikipedia.org/wiki/隨機數生成器",MATH_RANDOM_INT_TITLE:"從 %1 到 %2 之間的隨機整數",MATH_RANDOM_INT_TOOLTIP:"返回兩個指定的範圍(含)之間的隨機整數。",MATH_ROUND_HELPURL:"https://zh.wikipedia.org/wiki/數值修約",MATH_ROUND_OPERATOR_ROUND:"四舍五入",MATH_ROUND_OPERATOR_ROUNDDOWN:"向下舍入",MATH_ROUND_OPERATOR_ROUNDUP:"向上舍入",MATH_ROUND_TOOLTIP:"數字向上或向下舍入。",MATH_SINGLE_HELPURL:"https://zh.wikipedia.org/wiki/平方根",MATH_SINGLE_OP_ABSOLUTE:"絕對",MATH_SINGLE_OP_ROOT:"平方根",MATH_SINGLE_TOOLTIP_ABS:"返回一個數的絕對值。",MATH_SINGLE_TOOLTIP_EXP:"返回數的e次冪。",MATH_SINGLE_TOOLTIP_LN:"返回一個數的自然對數。",MATH_SINGLE_TOOLTIP_LOG10:"返回數字的對數。",MATH_SINGLE_TOOLTIP_NEG:"返回數的邏輯非。",MATH_SINGLE_TOOLTIP_POW10:"返回數的10次冪。",MATH_SINGLE_TOOLTIP_ROOT:"返回數的平方根。",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://zh.wikipedia.org/wiki/三角函數",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"返回一個數的反余弦值。",MATH_TRIG_TOOLTIP_ASIN:"返回一個數的反正弦值。",MATH_TRIG_TOOLTIP_ATAN:"返回指定角度的反正切值。",MATH_TRIG_TOOLTIP_COS:"返回指定角度的余弦值(非弧度)。",MATH_TRIG_TOOLTIP_SIN:"返回指定角度的正弦值(非弧度)。",MATH_TRIG_TOOLTIP_TAN:"返回指定角度的正切值(非弧度)。",NEW_VARIABLE:"創建變量...",NEW_VARIABLE_TITLE:"新變量的名稱:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"允許聲明",PROCEDURES_BEFORE_PARAMS:"參數:",PROCEDURES_CALLNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLNORETURN_TOOLTIP:"運行用戶定義的函數“%1”。",PROCEDURES_CALLRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLRETURN_TOOLTIP:"運行用戶定義的函數“%1”,並使用它的輸出值。",PROCEDURES_CALL_BEFORE_PARAMS:"與:",PROCEDURES_CREATE_DO:"創建“%1”",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"定義函數",PROCEDURES_DEFNORETURN_TOOLTIP:"創建一個不帶輸出值的函數。",PROCEDURES_DEFRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFRETURN_RETURN:"返回",PROCEDURES_DEFRETURN_TOOLTIP:"創建一個有輸出值的函數。",PROCEDURES_DEF_DUPLICATE_WARNING:"警告: 此函數具有重復參數。",PROCEDURES_HIGHLIGHT_DEF:"突出顯示函數定義",PROCEDURES_IFRETURN_HELPURL:"http://c2.com/cgi/wiki?GuardClause",PROCEDURES_IFRETURN_TOOLTIP:"如果值為真,則返回第二個值。",PROCEDURES_IFRETURN_WARNING:"警告: 僅在定義函數內可使用此塊。",PROCEDURES_MUTATORARG_TITLE:"輸入名稱:",PROCEDURES_MUTATORARG_TOOLTIP:"添加函數輸入。",PROCEDURES_MUTATORCONTAINER_TITLE:"輸入",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"添加、刪除或重新排此函數的輸入。",REDO:"重做",REMOVE_COMMENT:"刪除註釋",RENAME_VARIABLE:"重命名變量...",RENAME_VARIABLE_TITLE:"將所有“%1”變量重命名為:",TEXT_APPEND_APPENDTEXT:"追加文本",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"",TEXT_APPEND_TOOLTIP:"將一些文本追加到變量“%1”。",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"轉為小寫",TEXT_CHANGECASE_OPERATOR_TITLECASE:"轉為首字母大寫",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"轉為大寫",TEXT_CHANGECASE_TOOLTIP:"使用不同的大小寫復制這段文字。",TEXT_CHARAT_FIRST:"獲得第一個字符",TEXT_CHARAT_FROM_END:"獲得倒數第#個字符",TEXT_CHARAT_FROM_START:"獲得字符#",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"從文本",TEXT_CHARAT_LAST:"獲得最後一個字符",TEXT_CHARAT_RANDOM:"獲取隨機的字母",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"返回位於指定位置的字母。",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"將一個項添加到文本中。",TEXT_CREATE_JOIN_TITLE_JOIN:"加入",TEXT_CREATE_JOIN_TOOLTIP:"添加、移除或重新排列各節來重新配置這個文本塊。",TEXT_GET_SUBSTRING_END_FROM_END:"到倒數第#個字符",TEXT_GET_SUBSTRING_END_FROM_START:"到字符#",TEXT_GET_SUBSTRING_END_LAST:"到最後一個字符",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"從文本",TEXT_GET_SUBSTRING_START_FIRST:"取得一段字串自第一個字符",TEXT_GET_SUBSTRING_START_FROM_END:"取得一段字串自倒數第#個字符",TEXT_GET_SUBSTRING_START_FROM_START:"取得一段字串自#",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"返回指定的部分文本。",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"在文本",TEXT_INDEXOF_OPERATOR_FIRST:"中查找 最先 出現",TEXT_INDEXOF_OPERATOR_LAST:"中查找 最後 出現",TEXT_INDEXOF_TAIL:"的位置",TEXT_INDEXOF_TOOLTIP:"返回在第二個字串中的第一/最後一個匹配項的索引值。如果未找到則返回%1。",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1是空的",TEXT_ISEMPTY_TOOLTIP:"如果提供的文本為空,則返回真。",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"轉為文本",TEXT_JOIN_TOOLTIP:"通過串起任意數量的項以建立一段文字。",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"%1的長度",TEXT_LENGTH_TOOLTIP:"返回提供文本的字母數(包括空格)。",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"打印%1",MPYTHON_INPUT_MESSAGE0:"輸入%1",TEXT_PRINT_TOOLTIP:"打印指定的文字、數字或其他值。",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"提示用戶輸入數字。",TEXT_PROMPT_TOOLTIP_TEXT:"提示用戶輸入一些文本。",TEXT_PROMPT_TYPE_NUMBER:"輸入數字並顯示提示消息",TEXT_PROMPT_TYPE_TEXT:"輸入數字並顯示提示消息",TEXT_TEXT_HELPURL:"https://zh.wikipedia.org/wiki/字符串",TEXT_TEXT_TOOLTIP:"一個字母、單詞或一行文本。",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"消除兩側空格",TEXT_TRIM_OPERATOR_LEFT:"消除左側空格",TEXT_TRIM_OPERATOR_RIGHT:"消除右側空格",TEXT_TRIM_TOOLTIP:"復制這段文字的同時刪除兩端多余的空格。",TODAY:"今天",UNDO:"撤銷",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"創建“設定%1”",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"返回此變量的值。",VARIABLES_SET:"將變量 %1 設定為 %2",VARIABLES_SET_CREATE_GET:"創建“獲得%1”",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"設置此變量,以使它和輸入值相等。",VARIABLE_ALREADY_EXISTS:"已存在名為“%1”的變量。"};bF.PROCEDURES_DEFRETURN_TITLE=bF.PROCEDURES_DEFNORETURN_TITLE,bF.CONTROLS_IF_IF_TITLE_IF=bF.CONTROLS_IF_MSG_IF,bF.CONTROLS_WHILEUNTIL_INPUT_DO=bF.CONTROLS_REPEAT_INPUT_DO,bF.CONTROLS_IF_MSG_THEN=bF.CONTROLS_REPEAT_INPUT_DO,bF.TRY_EXCEPT_TRY="try",bF.CONTROLS_IF_ELSE_TITLE_ELSE=bF.CONTROLS_IF_MSG_ELSE,bF.CONTROLS_IF_ELSE_TITLE_ELSE=bF.CONTROLS_IF_MSG_ELSE,bF.PROCEDURES_DEFRETURN_PROCEDURE=bF.PROCEDURES_DEFNORETURN_PROCEDURE,bF.LISTS_GET_SUBLIST_INPUT_IN_LIST=bF.LISTS_INLIST,bF.LISTS_GET_INDEX_INPUT_IN_LIST=bF.LISTS_INLIST,bF.PROCEDURES_DEFRETURN_DO=bF.PROCEDURES_DEFNORETURN_DO,bF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=bF.CONTROLS_IF_MSG_ELSEIF,bF.LISTS_GET_INDEX_HELPURL=bF.LISTS_INDEX_OF_HELPURL,bF.CONTROLS_FOREACH_INPUT_DO=bF.CONTROLS_REPEAT_INPUT_DO,bF.LISTS_SET_INDEX_INPUT_IN_LIST=bF.LISTS_INLIST,bF.CONTROLS_FOR_INPUT_DO=bF.CONTROLS_REPEAT_INPUT_DO,bF.LISTS_CREATE_WITH_ITEM_TITLE=bF.VARIABLES_DEFAULT_NAME,bF.TUPLE_CREATE_WITH_ITEM_TITLE=bF.VARIABLES_DEFAULT_NAME,bF.DICT_CREATE_WITH_ITEM_TITLE=bF.VARIABLES_DEFAULT_NAME,bF.SET_CREATE_WITH_ITEM_TITLE=bF.VARIABLES_DEFAULT_NAME,bF.TEXT_APPEND_VARIABLE=bF.VARIABLES_DEFAULT_NAME,bF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=bF.VARIABLES_DEFAULT_NAME,bF.MATH_CHANGE_TITLE_ITEM=bF.VARIABLES_DEFAULT_NAME,bF.LISTS_INDEX_OF_INPUT_IN_LIST=bF.LISTS_INLIST,bF.PROCEDURES_DEFRETURN_COMMENT=bF.PROCEDURES_DEFNORETURN_COMMENT,bF.MPYTHON_MAIN_HELPURL="",bF.MPYTHON_MAIN_TOOLTIP="這個圖形塊不是必須使用。但使用這個圖形塊,能使得程序結構更規整。",bF.MPYTHON_MAIN_MESSAGE0="主程式",bF.MPYTHON_OPEN="開啟",bF.MPYTHON_CLOSE="關閉",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT="左移",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT="右移",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_UP="上移",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN="下移",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE="數字反轉",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻轉",bF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="線性極",bF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="對數極",bF.MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE="灰度",bF.MPYTHON_AI_SENSOR_PATTERN_COLOR="彩色",bF.MPYTHON_AI_SENSOR_ENABLE_START="開始抓取圖像",bF.MPYTHON_AI_SENSOR_ENABLE_STOP="停止抓取圖像",bF.MPYTHON_AI_SENSOR_LEVEL_MI_H="水平鏡像",bF.MPYTHON_AI_SENSOR_LEVEL_MI_V="垂直翻轉",bF.MPYTHON_AI_SENSOR_SETS_CONTRAST="對比度",bF.MPYTHON_AI_SENSOR_SETS_BRIGHTNESS="亮度",bF.MPYTHON_AI_SENSOR_SETS_SATURATION="飽和度",bF.MPYTHON_AI2_FACE_YOLO="人臉識別",bF.MPYTHON_AI2_CLASS_20_YOLO="20類識別",bF.MPYTHON_AI_TRACE_COLOR_RECTANGLE="矩形",bF.MPYTHON_AI_TRACE_COLOR_CROSS="十字",bF.TEXT_APPEND_TEXT_HELPURL="",bF.TEXT_APPEND_TEXT_TOOLTIP="",bF.TEXT_APPEND_TEXT_MESSAGE0="%1 追加文本 %2",bF.CHINA_CITY_MESSAGE0="%1 %2",bF.CHINA_CITY_TOWN_MESSAGE0="%1 %2 %3 返回 %4",bF.CHINA_CITY_CNNAME="中文簡稱",bF.CHINA_CITY_PINYIN="拼音",bF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_1="简体中文",bF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_2="正體中文",bF.MPYTHON_SENIVERSE_CITY_WEATHER_HELPURL="",bF.MPYTHON_SENIVERSE_CITY_WEATHER_TOOLTIP="",bF.MPYTHON_SENIVERSE_CITY_WEATHER_MESSAGE0="[心知天氣] %1 信息 %2 地理位置 %3 API私鑰 %4 %5 語言 %6 %7 溫度單位 %8",bF.MPYTHON_SENIVERSE_WEATHER_API_1="天氣實況",bF.MPYTHON_SENIVERSE_WEATHER_API_2="3天天氣預報",bF.MPYTHON_SENIVERSE_WEATHER_API_3="6項生活指數",bF.MPYTHON_SENIVERSE_WEATHER_UNIT_1="攝氏度",bF.MPYTHON_SENIVERSE_WEATHER_UNIT_2="華氏度",bF.MPYTHON_DEFINE_SENIVERSE_WEATHER_HELPURL="",bF.MPYTHON_DEFINE_SENIVERSE_WEATHER_TOOLTIP="",bF.MPYTHON_DEFINE_SENIVERSE_WEATHER_MESSAGE0="設定 %1 為 %2",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_HELPURL="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_TOOLTIP="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_MESSAGE0="%1 [心知天氣] 通用字段 %2",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_HELPURL="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_TOOLTIP="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_MESSAGE0="%1 [心知天氣] 天氣實況 %2",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_HELPURL="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_TOOLTIP="風向角度,範圍0~360\n風速,單位km/h(當unit=c時)、mph(當unit=f時)",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_MESSAGE0="%1 [心知天氣] 3天天氣預報 %2 的 %3",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_HELPURL="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_TOOLTIP="",bF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_MESSAGE0="%1 [心知天氣] 6項生活指數 %2",bF.MPYTHON_SENIVERSE_WEATHER_city_name="城市名稱",bF.MPYTHON_SENIVERSE_WEATHER_city_id="城市ID",bF.MPYTHON_SENIVERSE_WEATHER_country="國家代碼",bF.MPYTHON_SENIVERSE_WEATHER_path="行政歸屬",bF.MPYTHON_SENIVERSE_WEATHER_timezone="時區",bF.MPYTHON_SENIVERSE_WEATHER_timezone_offset="UTC偏移量",bF.MPYTHON_SENIVERSE_WEATHER_last_update_date="數據更新日期",bF.MPYTHON_SENIVERSE_WEATHER_last_update="數據更新時間",bF.MPYTHON_SENIVERSE_WEATHER_object="原始字典對象",bF.MPYTHON_SENIVERSE_WEATHER_text="天氣現象",bF.MPYTHON_SENIVERSE_WEATHER_code="天氣現象代碼",bF.MPYTHON_SENIVERSE_WEATHER_temperature="溫度",bF.MPYTHON_SENIVERSE_WEATHER_today="今天",bF.MPYTHON_SENIVERSE_WEATHER_tomorrow="明天",bF.MPYTHON_SENIVERSE_WEATHER_the_day_after_tomorrow="後天",bF.MPYTHON_SENIVERSE_WEATHER_date="日期",bF.MPYTHON_SENIVERSE_WEATHER_text_day="白天天氣現象",bF.MPYTHON_SENIVERSE_WEATHER_code_day="白天天氣現象代碼",bF.MPYTHON_SENIVERSE_WEATHER_text_night="晚間天氣現象",bF.MPYTHON_SENIVERSE_WEATHER_code_night="晚間天氣現象代碼",bF.MPYTHON_SENIVERSE_WEATHER_high="當天最高溫度",bF.MPYTHON_SENIVERSE_WEATHER_low="當天最低溫度",bF.MPYTHON_SENIVERSE_WEATHER_wind_direction="風向",bF.MPYTHON_SENIVERSE_WEATHER_wind_direction_degree="風向角度",bF.MPYTHON_SENIVERSE_WEATHER_wind_speed="風速",bF.MPYTHON_SENIVERSE_WEATHER_wind_scale="風力等級",bF.MPYTHON_SENIVERSE_WEATHER_car_washing="洗車指數",bF.MPYTHON_SENIVERSE_WEATHER_dressing="穿衣指數",bF.MPYTHON_SENIVERSE_WEATHER_flu="感冒指數",bF.MPYTHON_SENIVERSE_WEATHER_sport="運動指數",bF.MPYTHON_SENIVERSE_WEATHER_travel="旅遊指數",bF.MPYTHON_SENIVERSE_WEATHER_uv="紫外線指數",bF.MPYTHON_RED="紅",bF.MPYTHON_GREEN="綠",bF.MPYTHON_BLUE="藍",bF.MPYTHON_BLUEBIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0="I2C射頻卡 讀取電子錢包 數據",bF.MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP="讀取塊數據,長度16位元組",bF.MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0="I2C射頻卡 寫入電子錢包 數據%1",bF.MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP="寫入塊數據,長度16位元組",bF.MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0="I2C射頻卡 給電子錢包%1 金額%2",bF.MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP="",bF.MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0="充值",bF.MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0="扣費",bF.MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0="I2C射頻卡 獲取電子錢包餘額",bF.MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP="",bF.MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0="I2C射頻卡 獲取序號",bF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP="",bF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0="I2C射頻卡 初始化電子錢包",bF.MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP="",bF.MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0="I2C射頻卡 掃描",bF.MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP="",bF.MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",bF.MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0="I2C超聲波",bF.MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP="",bF.MPYTHON_BLUEBIT_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0="%1 被觸發 引腳%2",bF.MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP="",bF.MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0="%1 模擬值 引腳%2",bF.MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP="",bF.MPYTHON_BLUEBIT_READ_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0="設置LED燈 輸出%1 引腳%2",bF.MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP="",bF.MPYTHON_BLUEBIT_SET_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0="循跡傳感器 檢測為黑 引腳%1",bF.MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP="",bF.MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_SET_TRUE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0="打開 %1 引腳 %2",bF.MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP="",bF.MPYTHON_BLUEBIT_SET_FALSE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0="關閉 %1 引腳 %2",bF.MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP="",bF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP="",bF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0="打開錄放器 %1 %2 REC %3 PLAY %4",bF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP="",bF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0="關閉錄放器 %1 REC %2 PLAY %3",bF.MPYTHON_BLUEBIT_VOICE_RECORD_PLAY="播放",bF.MPYTHON_BLUEBIT_VOICE_RECORD_REC="錄音",bF.MPYTHON_BLUEBIT_IR_RECEIVE="紅外探測",bF.MPYTHON_BLUEBIT_SOUND="麥克風",bF.MPYTHON_BLUEBIT_LINE_FOLLOWER="循跡",bF.MPYTHON_BLUEBIT_VIBRATION="震動",bF.MPYTHON_BLUEBIT_RFID="射頻卡",bF.MPYTHON_BLUEBIT_FINGERPRINT_SCANNER="指紋",bF.MPYTHON_BLUEBIT_PIR="人體感應",bF.MPYTHON_BLUEBIT_MAGNETIC="門磁開關",bF.MPYTHON_BLUEBIT_BUTTON="按鍵",bF.MPYTHON_BLUEBIT_RELAY="繼電器",bF.MPYTHON_BLUEBIT_LIMIT_SWITCH="限位開關",bF.MPYTHON_BLUEBIT_FAN="風扇",bF.MPYTHON_BLUEBIT_LASER="激光",bF.MPYTHON_BLUEBIT_NTC_TEMP="熱敏電阻",bF.MPYTHON_BLUEBIT_WATER="水位",bF.MPYTHON_BLUEBIT_SOIL_MOISTURE="土壤濕度",bF.MPYTHON_BLUEBIT_ROTATE_DIMMER="旋鈕電位器",bF.MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER="直滑電位器",bF.MPYTHON_BLUEBIT_ANALOG_LIGHT="模擬光線",bF.MPYTHON_BLUEBIT_LM35_TEMP="LM35溫度",bF.MPYTHON_BLUEBIT_SMOKE="煙霧",bF.MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE="正轉",bF.MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE="反轉",bF.MPYTHON_BLUEBIT_READ_SOIL_HELPURL="",bF.MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP="新的土壤濕度",bF.MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0="土壤濕度(新)%1",bF.MPYTHON_BLUEBIT_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP="速度:-100~100 映射至 -1023~1023",bF.MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0="打開直流電機 %1 速度 %2 引腳AIN1 %3 引腳AIN2 %4",bF.MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP="",bF.MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0="停止直流電機 %1 引腳AIN1 %2 引腳AIN2 %3",bF.MPYTHON_BLUEBIT_SET_FAN_HELPURL="",bF.MPYTHON_BLUEBIT_SET_FAN_TOOLTIP="",bF.MPYTHON_BLUEBIT_SET_FAN_MESSAGE0="拓展板 打開風扇 %1",bF.MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL="",bF.MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP="",bF.MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0="拓展板 關閉風扇 %1",bF.MPYTHON_BLUEBIT_4BUTTON_HELPURL="http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",bF.MPYTHON_BLUEBIT_4BUTTON_TOOLTIP="",bF.MPYTHON_BLUEBIT_4BUTTON_MESSAGE0="四向按鍵模塊 引腳 %1 按鍵 %2 被按下",bF.BLUE="A",bF.GREEN="B",bF.RED="C",bF.YELLOW="D",bF.MPYTHON_BLUEBIT_JOYSTICK_HELPURL="",bF.MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP="",bF.MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0="搖桿 引腳A0 %1 引腳A1 %2 %3 軸的值",bF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL="",bF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP="速度:0~100",bF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0="拓展板 打開直流電機 %1 %2 速度 %3",bF.MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL="",bF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP="速度:0~100",bF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0="拓展板 關閉直流電機",bF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL="",bF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP="速度:-1023~1023",bF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0="編碼電機 模式 %1 撥碼 %2 M1速度 %3 M2速度 %4",bF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL="",bF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP="停止編碼電機轉動",bF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0="停止編碼電機轉動 %1",bF.MPYTHON_BLUEBIT_HUM_TEM_HELPURL="",bF.MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP="",bF.MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0="I2C %1",bF.MPYTHON_BLUEBIT_TEMPERATURE="溫度",bF.MPYTHON_BLUEBIT_HUMIDITY="濕度",bF.MPYTHON_BLUEBIT_INIT_MIDI_HELPURL="",bF.MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0="初始化MIDI TX引脚 %1",bF.MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP="",bF.MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL="",bF.MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0="設MIDI音量 %1",bF.MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP="音量 0~127",bF.MIDI_PIANO="平臺鋼琴",bF.MIDI_BRIGHTACOUSTICPIANO="亮音鋼琴",bF.MIDI_ELECTRICGRANDPIANO="電鋼琴",bF.MIDI_HARPSICHORD="大鍵琴",bF.MIDI_CELESTA="鋼片琴",bF.MIDI_GLOCKENSPIEL="鍾琴",bF.MIDI_MUSICALBOX="音樂盒",bF.MIDI_MARIMBA="馬林巴琴",bF.MIDI_XYLOPHONE="木琴",bF.MIDI_TUBULARBELL="管鐘",bF.MIDI_DULCIMER="洋琴",bF.MIDI_VIBRAPHONE="顫音琴",bF.MIDI_ORGAN="音栓風琴",bF.MIDI_ACOUSTIC_GUITAR="木吉他",bF.MIDI_ELECTRIC_GUITAR="電吉他",bF.MIDI_ACOUSTIC_BASS="民謠貝斯",bF.MIDI_STRING_ENSEMBLE="弦樂合奏",bF.MIDI_VIOLIN="小提琴",bF.MIDI_TRUMPET="小號",bF.MIDI_SAX="薩克斯",bF.MIDI_STEEL_DRUMS="鋼鼓",bF.MIDI_LEAD="合成音主旋律",bF.MIDI_PAD="合成音襯底",bF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL="",bF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0="設MIDI樂器 %1",bF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP="",bF.MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL="",bF.MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0="MIDI %1 音調 %2",bF.MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP="",bF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL="",bF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0="設點陣亮度等級 %1",bF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP="亮度等級 0~15",bF.MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL="",bF.MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0="點陣 %1",bF.MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP="",bF.MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL="",bF.MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0="設置點陣 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",bF.MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP="",bF.MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL="",bF.MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0="點陣設置生效",bF.MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP="",bF.MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0="設MP3音量 %1",bF.MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP="音量:0~30",bF.MPYTHON_BLUEBIT_MP3_INIT_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0="初始化MP3 TX引脚 %1",bF.MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP="掌控板的 tx 引脚連接音樂模塊的 RXI 引脚",bF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0="MP3 音量 %1",bF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP="",bF.MPYTHON_PLUS_1="加1",bF.MPYTHON_MINUS_1="減1",bF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0="MP3 播放第 %1 首歌",bF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP="",bF.MPYTHON_BLUEBIT_MP3_CMD_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0="MP3 播放 %1",bF.MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP="",bF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL="",bF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0="Mp3 單曲循環 %1",bF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP="",bF.MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL="",bF.MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0="設擴展端口 IO %2 為 %1",bF.MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP="IO: 0~7",bF.MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL="",bF.MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0="擴展端口值 IO %1",bF.MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP="",bF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL="",bF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0="設擴展端口 IO %2 為 %1",bF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP="",bF.MPYTHON_LCD_OBJECT_HELPURL="",bF.MPYTHON_LCD_OBJECT_MESSAGE0="LCD1602 初始化",bF.MPYTHON_LCD_OBJECT_TOOLTIP="",bF.MPYTHON_LCD_PRINT_HELPURL="",bF.MPYTHON_LCD_PRINT_MESSAGE0="LCD1602 顯示 %1",bF.MPYTHON_LCD_PRINT_TOOLTIP="",bF.MPYTHON_LCD_HOME_HELPURL="",bF.MPYTHON_LCD_HOME_MESSAGE0="LCD1602 光標 回到原點",bF.MPYTHON_LCD_HOME_TOOLTIP="",bF.MPYTHON_LCD_CURSOR_HELPURL="",bF.MPYTHON_LCD_CURSOR_MESSAGE0="LCD1602 光標 %1",bF.MPYTHON_LCD_CURSOR_TOOLTIP="",bF.MPYTHON_LCD_SET_CURSOR_HELPURL="",bF.MPYTHON_LCD_SET_CURSOR_MESSAGE0="LCD1602 起始點 行 %2 列 %1",bF.MPYTHON_LCD_SET_CURSOR_TOOLTIP="行列從0開始計數",bF.MPYTHON_LCD_CLEAR_HELPURL="",bF.MPYTHON_LCD_CLEAR_MESSAGE0="LCD1602 清屏",bF.MPYTHON_LCD_CLEAR_TOOLTIP="",bF.MPYTHON_LCD_CURSOR_BLINK="閃爍",bF.MPYTHON_LCD_CURSOR_NO_BLINK="不閃爍",bF.MPYTHON_RIGHT_TO_LEFT="從右向左",bF.MPYTHON_LEFT_TO_RIGHT="從左向右",bF.MPYTHON_LCD_TEXT_DIRECTION_HELPURL="",bF.MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0="LCD1602 文字方向 %1",bF.MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP="",bF.MPYTHON_LCD_MOVE_HELPURL="",bF.MPYTHON_LCD_MOVE_MESSAGE0="LCD1602 向 %1 滾動一格",bF.MPYTHON_LCD_MOVE_TOOLTIP="",bF.MPYTHON_IR_TRANS_HELPURL="",bF.MPYTHON_IR_TRANS_MESSAGE0="紅外發送 單字節字符串 %1 tx 引脚 %2",bF.MPYTHON_IR_TRANS_TOOLTIP="\n單字節字符串:\n'A', 'b', '1'等\n",bF.OUTPUT_PIN_HELPURL="",bF.OUTPUT_PIN_MESSAGE0="%1",bF.OUTPUT_PIN_TOOLTIP="",bF.INPUT_PIN_HELPURL="",bF.INPUT_PIN_MESSAGE0="%1",bF.INPUT_PIN_TOOLTIP="",bF.READ_ANALOG_PIN_HELPURL="",bF.READ_ANALOG_PIN_MESSAGE0="%1",bF.READ_ANALOG_PIN_TOOLTIP="",bF.SET_DIGITAL_HELPURL="",bF.SET_DIGITAL_MESSAGE0="%1",bF.SET_DIGITAL_TOOLTIP="",bF.SET_ANALOG_HELPURL="",bF.SET_ANALOG_MESSAGE0="%1",bF.SET_ANALOG_TOOLTIP="",bF.ALL_PIN_HELPURL="",bF.ALL_PIN_MESSAGE0="%1",bF.ALL_PIN_TOOLTIP="",bF.PWM_PIN_HELPURL="",bF.PWM_PIN_MESSAGE0="%1",bF.PWM_PIN_TOOLTIP="",bF.DH11_HUM_TEM_PIN_HELPURL="",bF.DH11_HUM_TEM_PIN_MESSAGE0="%1",bF.DH11_HUM_TEM_PIN_TOOLTIP="",bF.UART_TX_PIN_HELPURL="",bF.UART_TX_PIN_MESSAGE0="%1",bF.UART_TX_PIN_TOOLTIP="",bF.UART_RX_PIN_HELPURL="",bF.UART_RX_PIN_MESSAGE0="%1",bF.UART_RX_PIN_TOOLTIP="",bF.I2C_PIN_HELPURL="",bF.I2C_PIN_MESSAGE0="%1",bF.I2C_PIN_TOOLTIP="",bF.MQTT_COMMON_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",bF.MQTT_COMMON_SETUP_MESSAGE0="MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",bF.MQTT_COMMON_SETUP_TOOLTIP="",bF.MQTT_TENCENT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",bF.MQTT_TENCENT_SETUP_MESSAGE0="MQTT 騰訊物聯網 %1 服務器 %2 Port %3 AppId %4 Device %5 -- 傳出參數 -- %6 ReportTopic %7 ControlTopic %8",bF.MQTT_TENCENT_SETUP_TOOLTIP="",bF.MQTT_TENCENT_SETUPS_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",bF.MQTT_TENCENT_SETUPS_MESSAGE0="MQTT 騰訊物聯網 %1 服務器 %2 Port %3 AppId %4 Device %5 -- 傳出參數 -- %6 ReportTopic %7 ControlTopic %8",bF.MQTT_TENCENT_SETUPS_TOOLTIP="",bF.MQTT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_SETUP_MESSAGE0="MQTT-Easy IoT %1 服務器 %2 Client ID %5 Iot_id %3 Iot_pwd %4",bF.MQTT_SETUP_TOOLTIP="",bF.MQTT_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_CONNECT_MESSAGE0="連接 MQTT",bF.MQTT_CONNECT_TOOLTIP="",bF.MQTT_PUBLISH_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_PUBLISH_MESSAGE0="發佈 %1 至 主題 %2",bF.MQTT_PUBLISH_TOOLTIP="",bF.MQTT_REC_FROM_TOPIC_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_REC_FROM_TOPIC_MESSAGE0="當從主題 %1 接收到 %2 時",bF.MQTT_REC_FROM_TOPIC_TOOLTIP="",bF.MQTT_RECEIVE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_RECEIVE_MESSAGE0="當從主題 %1 接收到 %2 時",bF.MQTT_RECEIVE_TOOLTIP='參數"主題"只接受變量',bF.MQTT_RECEIVED_MESSAGE0="當從主題 %1 接收到消息 時",bF.MQTT_MESSAGE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_MESSAGE_MESSAGE0="從 MQTT 收到的消息",bF.MQTT_MESSAGE_TOOLTIP="",bF.MQTT_WAIT_MSG_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_WAIT_MSG_MESSAGE0="等待主題消息 以 %1 模式",bF.MQTT_WAIT_MSG_TOOLTIP="建議放在'一直重複'中運行",bF.MQTT_DISCONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",bF.MQTT_DISCONNECT_MESSAGE0="MQTT 斷開連接",bF.MQTT_DISCONNECT_TOOLTIP="",bF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",bF.MQTT_LAST_WILL_MESSAGE0="設置 MQTT 主題 %2 離綫消息 %1",bF.MQTT_LAST_WILL_TOOLTIP="設置 MQTT last will 消息。應該在 connect() 之前調用。",bF.MPYTHON_SIOT_CONNECT_HELPURL="",bF.MPYTHON_SIOT_CONNECT_TOOLTIP="",bF.MPYTHON_SIOT_CONNECT_MESSAGE0="創建 SIoT 連接 %1 客戶端ID %2 服務器 %3 用戶 %4 密碼 %5",bF.MPYTHON_SIOT_ISCONNECTED_HELPURL="",bF.MPYTHON_SIOT_ISCONNECTED_TOOLTIP="",bF.MPYTHON_SIOT_ISCONNECTED_MESSAGE0="SIoT 連接成功 ?",bF.MPYTHON_SIOT_SUBSCRIBE_HELPURL="",bF.MPYTHON_SIOT_SUBSCRIBE_TOOLTIP="",bF.MPYTHON_SIOT_SUBSCRIBE_MESSAGE0="SIoT 訂閱主題",bF.MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE="點擊左邊星號 訂閱 SIoT 主題",bF.MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH="SIoT 訂閱 主題1",bF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE="主題",bF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP="",bF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD="最多訂閱 5 個主題",bF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP="",bF.MPYTHON_SIOT_DISCONNECT_HELPURL="",bF.MPYTHON_SIOT_DISCONNECT_TOOLTIP="",bF.MPYTHON_SIOT_DISCONNECT_MESSAGE0="SIoT 斷開連接",bF.MPYTHON_SIOT_MESSAGE_HELPURL="",bF.MPYTHON_SIOT_MESSAGE_TOOLTIP="",bF.MPYTHON_SIOT_MESSAGE_MESSAGE0="從 SIoT 收到的消息",bF.MPYTHON_SIOT_TOPIC1="主題1",bF.MPYTHON_SIOT_TOPIC2="主題2",bF.MPYTHON_SIOT_TOPIC3="主題3",bF.MPYTHON_SIOT_TOPIC4="主題4",bF.MPYTHON_SIOT_TOPIC5="主題5",bF.MPYTHON_SIOT_PUBLISH_HELPURL="",bF.MPYTHON_SIOT_PUBLISH_TOOLTIP="",bF.MPYTHON_SIOT_PUBLISH_MESSAGE0="SIoT 發送消息 %1 到 %2",bF.MPYTHON_SIOT_PUBLISH_TO_MESSAGE0="SIoT 發送消息 %1 到 主題 %2",bF.MPYTHON_SIOT_RECEIVE_HELPURL="",bF.MPYTHON_SIOT_RECEIVE_TOOLTIP="",bF.MPYTHON_SIOT_RECEIVE_MESSAGE0="當從 SIoT %1 收到消息時 %2 執行 %3",bF.MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0="當從 SIoT 主題 %1 收到消息時 %2 執行 %3",bF.MPYTHON_IR_RECV_HELPURL="",bF.MPYTHON_IR_RECV_MESSAGE0="紅外接收 整型 rx 引脚 %1",bF.MPYTHON_IR_RECV_TOOLTIP="第一次接收總爲空",bF.MPYTHON_BLUEBIT_OLED_PRINT_HELPURL="",bF.MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0="bluebit OLED 顯示 %1 x %2 y %3",bF.MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP="",bF.MPYTHON_BLUEBIT_OLED_INIT_HELPURL="",bF.MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0="bluebit OLED 初始化 tx %1 rx %2",bF.MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP="",bF.MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL="",bF.MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0="bluebit OLED 清空",bF.MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP="",bF.MPYTHON_BLUEBIT_OLED_BMP_HELPURL="",bF.MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0="bluebit OLED 顯示圖像 x %1 y %2 寬 %3 高 %4 16進制圖像數據 %5",bF.MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP="",bF.mpython_bme280_hum_tem_pre_MESSAGE0="气象 %1",bF.mpython_bme280_hum_tem_pre_TOOLTIP="气压单位Pa, 温度单位摄氏度, 环境湿度单位%",bF.mpythonbox_sound_MESSAGE0="聲音值",bF.mpythonbox_sound_TOOLTIP="採樣數據,为0~4095。",bF.mpythonbox_sound_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",bF.MPYTHONBOX_SLIDER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",bF.MPYTHONBOX_SLIDER_MESSAGE0="滑杆",bF.MPYTHONBOX_SLIDER_TOOLTIP="返回滑杆電阻採樣值。範圍0~4095。",bF.MPYTHONBOX_5BUTTON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",bF.MPYTHONBOX_5BUTTON_MESSAGE0="五向按鍵%1",bF.MPYTHONBOX_5BUTTON_TOOLTIP="",bF.MPYTHONBOX_MOTOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",bF.MPYTHONBOX_MOTOR_MESSAGE0="馬達 速度%1",bF.MPYTHONBOX_MOTOR_TOOLTIP="馬達速度,範圍±100。正值表示正轉,負值則反。",bF.MPYTHONBOX_ULTRASONIC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",bF.MPYTHONBOX_ULTRASONIC_MESSAGE0="超聲波",bF.MPYTHONBOX_ULTRASONIC_TOOLTIP="超聲波測距,獲取超聲波感測器測距值,組織cm。範圍3~340CM",bF.MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",bF.MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0="人體紅外",bF.MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP="返回人體紅外觸發值。當為1時,表示已觸發;當為0時,表示未觸發。",bF.MPYTHONBOX_RGB_pixel_HELPURL="",bF.MPYTHONBOX_RGB_pixel_MESSAGE0="設定第 %1列 %2行 R%3 G%4 B%5",bF.MPYTHONBOX_RGB_pixel_TOOLTIP="設定第多少列,行的RGB顏色",bF.MPYTHONBOX_RGB_get_pixel_HELPURL="",bF.MPYTHONBOX_RGB_get_pixel_MESSAGE0="返回 第%1列 %2行 RGB颜色",bF.MPYTHONBOX_RGB_get_pixel_TOOLTIP="返回第多少列,行位置的RGB顏色",bF.MPYTHONBOX_RGB_ImageText_HELPURL="",bF.MPYTHONBOX_RGB_ImageText_MESSAGE0="滾動顯示文本%1 速度%2",bF.MPYTHONBOX_RGB_ImageText_TOOLTIP="滾動顯示文字,亮度為0不亮,9最亮",bF.MPYTHONBOX_RGB_SetImage_HELPURL="",bF.MPYTHONBOX_RGB_SetImage_TOOLTIP="",bF.MPYTHONBOX_RGB_SetImage_MESSAGE0="創建圖像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",bF.MPYTHONBOX_RGB_Image_HELPURL="",bF.MPYTHONBOX_RGB_Image_MESSAGE0="顯示影像%1",bF.MPYTHONBOX_RGB_Image_TOOLTIP="顯示影像",bF.MPYTHONBOX_RGB_SetImage_HELPURL="",bF.MPYTHONBOX_RGB_SetImage_MESSAGE0="創建影像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",bF.MPYTHONBOX_RGB_SetImage_TOOLTIP="創建新影像,每行每位數代表第幾比特燈,默認紅色;亮度為0不亮,9最亮。",bF.MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0="顯示影像/文本 %1",bF.MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP="顯示影像或文字消息。",bF.MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL="",bF.MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0="顯示影像 %1",bF.MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP="顯示影像。",bF.MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL="",bF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0="複製影像 %1",bF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP="複製影像。",bF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL="",bF.MPYTHONBOX_RGB_ImageCot_HELPURL="",bF.MPYTHONBOX_RGB_ImageCot_MESSAGE0="切剪影像%1 列%2 行%3 宽%4 高%5",bF.MPYTHONBOX_RGB_ImageCot_TOOLTIP="切剪影像",bF.MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0="內寘影像 %1",bF.MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP="選擇一個內寘的影像。",bF.MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL="",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0="平移影像 %1 %2 %3 位",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP="向特定方向移動影像,並返回移動後的結果。",bF.MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL="",bF.MPYTHONBOX_RGB_clear_HELPURL="",bF.MPYTHONBOX_RGB_clear_MESSAGE0="關閉所有 RGB 燈",bF.MPYTHONBOX_RGB_clear_TOOLTIP="",bF.MPYTHONBOX_RGB_pixel_return_HELPURL="",bF.MPYTHONBOX_RGB_pixel_return_MESSAGE0="返回第 %1列 %2行 顏色",bF.MPYTHONBOX_RGB_pixel_return_TOOLTIP="返回第多少列,行的RGB顏色",bF.MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",bF.MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0="%1軸加速度",bF.MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP="单位g,范围-2~+2g。",bF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",bF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0="%1軸角速度",bF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP="范围±500°/秒",bF.MPYTHONBOX_EULER_ANGLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",bF.MPYTHONBOX_EULER_ANGLE_MESSAGE0="%1歐拉角",bF.MPYTHONBOX_EULER_ANGLE_TOOLTIP="返回當前歐拉角(Pitch,Roll,Yaw),單位角度",bF.MPYTHONBOX_QUATERNION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",bF.MPYTHONBOX_QUATERNION_MESSAGE0="%1四元數",bF.MPYTHONBOX_QUATERNION_TOOLTIP="返回當前四元數(w,x,y,z)",bF.MPYTHONBOX_CAMERA_LED_HELPURL="",bF.MPYTHONBOX_CAMERA_LED_MESSAGE0="攝像燈%1",bF.MPYTHONBOX_CAMERA_LED_TOOLTIP="led燈,分為打開和關閉兩種狀態",bF.LIST_FIRST_INDEX_HELPURL="",bF.LIST_FIRST_INDEX_MESSAGE0="項 %1 在列表 %2 %3 出現的位置",bF.LIST_FIRST_INDEX_TOOLTIP="",bF.MPYTHON_AI_LCD_INIT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",bF.MPYTHON_AI_LCD_INIT_MESSAGE0="螢幕 初始化 ",bF.MPYTHON_AI_LCD_INIT_TOOLTIP="初始化 螢幕顯示",bF.MPYTHON_AI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",bF.MPYTHON_AI_SENSOR_RESET_MESSAGE0="監視器 初始化",bF.MPYTHON_AI_SENSOR_RESET_TOOLTIP="初始化單目監視器",bF.MPYTHON_AI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",bF.MPYTHON_AI_SENSOR_ENABLE_MESSAGE0="監視器%1",bF.MPYTHON_AI_SENSOR_ENABLE_TOOLTIP="获取影像",bF.MPYTHON_AI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",bF.MPYTHON_AI_LCD_TEXT_MESSAGE0="顯示文字 x %1 y %2 内容 %3",bF.MPYTHON_AI_LCD_TEXT_TOOLTIP="僅支持字母和數位",bF.MPYTHON_AI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",bF.MPYTHON_AI_SENSOR_SKIP_MESSAGE0="監視器 跳過幀數%1 毫秒%2内的影像",bF.MPYTHON_AI_SENSOR_SKIP_TOOLTIP="監視器跳過指定幀數或者跳過指定時間內的影像",bF.MPYTHON_AI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",bF.MPYTHON_AI_SENSOR_RETURN_MESSAGE0="测 監視器 获取%1",bF.MPYTHON_AI_SENSOR_RETURN_TOOLTIP="(AI)監視器返回参数(宽高,图像帧的格式,图像帧的大小)",bF.MPYTHON_AI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",bF.MPYTHON_AI_SENSOR_SETS_MESSAGE0="監視器 设置%1 为%2",bF.MPYTHON_AI_SENSOR_SETS_TOOLTIP="设置監視器对比度,亮度,饱和度范围为[-2,+2]",bF.MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",bF.MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0="監視器 自動增益%1",bF.MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP="1開啟監視器自動增益0關閉監視器自動增益",bF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",bF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0="監視器 白平衡%1",bF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP="設定攝像自動白平衡模式,默認打開。True為打開,False為關閉自動白平衡。若您想追跡顏色,則需關閉白平衡。",bF.MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",bF.MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0="監視器 %1 %2",bF.MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP="1表示開啟水准鏡像 0表示關閉水准鏡像",bF.MPYTHON_AI_LCD_DISPLAY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",bF.MPYTHON_AI_LCD_DISPLAY_MESSAGE0="屏幕 顯示生效",bF.MPYTHON_AI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上顯示",bF.MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",bF.MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0="图像 顯示生效 x%1 y%2 宽%3 高%4",bF.MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP="可以在液晶屏上顯示一張圖片",bF.MPYTHON_AI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",bF.MPYTHON_AI_SENSOR_IMAGES_MESSAGE0="監視器 獲取影像",bF.MPYTHON_AI_SENSOR_IMAGES_TOOLTIP="控制監視器捕捉影像",bF.MPYTHON_AI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0="人臉識別",bF.MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP="",bF.MPYTHON_AI_LCD_SHOW_REC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",bF.MPYTHON_AI_LCD_SHOW_REC_TOOLTIP="在影像上繪製矩形",bF.MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",bF.MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP="在影像上繪製線條",bF.MPYTHON_AI_LCD_SHOW_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0="螢幕 顯示清空",bF.MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP="將液晶屏清空為黑色或者指定的顏色",bF.MPYTHON_AI_LCD_CLEAR_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 顏色",bF.MPYTHON_AI_LCD_return_colour_TOOLTIP="返回某個座標點的顏色",bF.MPYTHON_AI_LCD_return_colour_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0="圓形%1 x%2 y%3 半径%4 顏色为 R%5 G%6 B%7 加粗%8",bF.MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP="在影像上繪製圓形",bF.MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_TEXT_MOST_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0="顯示文字 x %1 y %2 内容 %3 顏色为R%4 G%5 B%6 字号%7",bF.MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP="僅支持字母和數位",bF.MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0="十字線 x%1 y%2 顏色为R%3 G%4 B%5 尺寸%6 加粗%7",bF.MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP="在影像上繪製十字線",bF.MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0="箭頭 x1%1 y1%2 到x2%3 y2%4 顏色为R%5 G%6 B%7 加粗%8",bF.MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP="在影像上繪製一個箭頭",bF.MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",bF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL=".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",bF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="顯示影像 路徑%1",bF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="顯示影像",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="圖像轉換為%1",bF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="黑白翻轉是將二進位影像0(黑色)變為1(白色),1(白色)變為0(黑色),非常快速地翻轉二進位影像中的所有點數值。",bF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",bF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0="影像 從笛卡爾座標到%1 座標重新投影 反向%2",bF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP="",bF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",bF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0="影像 膨胀 級別%1",bF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP="膨脹就是對影像高亮部分進行“領域擴張”,效果圖擁有比原圖更大的高亮區域。",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0="影像 中点濾波 級別%1 滤波%2",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP="控制影像混合的最小/最大程度。0只適用於最小濾波,1僅用於最大濾波。",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0="影像 众数濾波 級別%1",bF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP="在影像上運行眾數濾波,用相鄰點數的模式替換每個點數。",bF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",bF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0="影像 模糊滤波 级别%1",bF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP="使用盒式濾波器的標準平均值模糊濾波。",bF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",bF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0="影像 卡通化 級別%1 起始點數差异%2 相鄰點數差异%3",bF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP="使图像卡通化",bF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",bF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0="影像 3D旋轉 上下旋轉%1 左右旋轉%2 度数%3 左右移动%4 上下移动%5 缩放%6",bF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP="通過執行幀緩衝區的3D旋轉來糾正影像中的透視問題。",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0="將影像的副本保存到SD卡 图像名%1 影像顯示區域 x%2 y%3 宽%4 高%5",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP="將影像的副本保存到SD卡",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="創建一個影像對象的副本 複製影像區域 x%1 y%2 宽%3 高%4",bF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="創建一個影像對象的副本",bF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="手寫數位識別",bF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="手寫數位識別",bF.MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",bF.MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0="屏幕 x%1 y%2 显示颜色 R%3 G%4 B%5",bF.MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP="屏幕显示颜色",bF.MPYTHON_AI_LCD_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",bF.MPYTHON_AI_LCD_COLOUR_MESSAGE0="屏幕 初始化 显示颜色 R%1 G%2 B%3",bF.MPYTHON_AI_LCD_COLOUR_TOOLTIP="屏幕显示颜色",bF.MPYTHON_AI_SENSOR_PATTERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",bF.MPYTHON_AI_SENSOR_PATTERN_MESSAGE0="監視器 初始化 點數模式 %1",bF.MPYTHON_AI_SENSOR_PATTERN_TOOLTIP="用於設定監視器點數模式,有黑白和rgb彩色",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="追跡色塊 顯示%1",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",bF.MPYTHON_AI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_FACE_TRACKING_MESSAGE0="(實驗箱)選擇訓練模型 人臉",bF.MPYTHON_AI2_FACE_TRACKING_TOOLTIP="可以識別並且追蹤人臉,顯示人臉大小等",bF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0="(實驗箱)調用攝像頭進行 人臉識別",bF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP="調用攝像頭進行 人臉識別",bF.MPYTHON_AI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_MESSAGE0="(實驗箱)獲取識別後人臉的 所有參數",bF.MPYTHON_AI2_RESULT_FACE_TOOLTIP="獲取識別後人臉的 所有參數",bF.MPYTHON_AI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_X_MESSAGE0="(實驗箱)獲取識別後人臉的 x座標",bF.MPYTHON_AI2_RESULT_FACE_X_TOOLTIP="獲取識別後人臉的 x座標",bF.MPYTHON_AI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0="(實驗箱)獲取識別後人臉的 y座標",bF.MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP="獲取識別後人臉的 y座標",bF.MPYTHON_AI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_W_MESSAGE0="(實驗箱)獲取識別後人臉的 寬度",bF.MPYTHON_AI2_RESULT_FACE_W_TOOLTIP="獲取識別後人臉的 寬度",bF.MPYTHON_AI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_H_MESSAGE0="(實驗箱)獲取識別後人臉的 高度",bF.MPYTHON_AI2_RESULT_FACE_H_TOOLTIP="獲取識別後人臉的 高度",bF.MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0="(實驗箱)獲取識別後人臉的 置信度",bF.MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP="獲取識別後人臉的 置信度",bF.MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0="(實驗箱)獲取識別後人臉的 數量",bF.MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP="獲取識別後人臉的 數量",bF.MPYTHON_AI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_20class_TRACKING_MESSAGE0="(實驗箱)選擇訓練模型 20類",bF.MPYTHON_AI2_20class_TRACKING_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",bF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(實驗箱)調用攝像頭進行 20類識別",bF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP="調用攝像頭進行 20類識別",bF.MPYTHON_AI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_MESSAGE0="(實驗箱)獲取識別後20類的 所有參數",bF.MPYTHON_AI2_RESULT_20CLASS_TOOLTIP="獲取識別後20類的 所有參數",bF.MPYTHON_AI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0="(實驗箱)獲取識別後20類的 x座標",bF.MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP="獲取識別後20類的 x座標",bF.MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0="(實驗箱)獲取識別後20類的 y座標",bF.MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP="獲取識別後20類的 y座標",bF.MPYTHON_AI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0="(實驗箱)獲取識別後20類的 寬度",bF.MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP="獲取識別後20類的 寬度",bF.MPYTHON_AI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0="(實驗箱)獲取識別後20類的 高度",bF.MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP="獲取識別後20類的 高度",bF.MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0="(實驗箱)獲取識別後20類的 置信度",bF.MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP="獲取識別後20類的 置信度",bF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(實驗箱)獲取識別後20類的 數量",bF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP="獲取識別後20類的 數量",bF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0="(實驗箱)獲取識別後20類的 類型",bF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",bF.MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0="(實驗箱)獲取識別後20類的 類型數量",bF.MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP="獲取識別後20類的 類型數量",bF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="(實驗箱)選擇訓練模型 手寫數字",bF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="選擇訓練模型 手寫數字",bF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0="(實驗箱)調用攝像頭進行 手寫數字識別",bF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP="調用攝像頭進行 手寫數字識別",bF.MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0="(實驗箱)獲取識別後手寫數字的 所有參數",bF.MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP="獲取識別後手寫數字的 所有參數",bF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0="(實驗箱)獲取識別後手寫數字的 數字",bF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP="獲取識別後手寫數字的 數字",bF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(實驗箱)獲取識別後手寫數字的 置信度",bF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP="獲取識別後手寫數字的 置信度",bF.MPYTHON_AI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",bF.MPYTHON_AI_IMAGE_LAB_MESSAGE0="寻找颜色 LAB值%1",bF.MPYTHON_AI_IMAGE_LAB_TOOLTIP="image寻找颜色",bF.MPYTHON_AI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",bF.MPYTHON_AI_TRACE_COLOR_MESSAGE0="(實驗箱)追蹤色塊 LAB顏色%1 邊界框小於%2 像素小於%3 過濾",bF.MPYTHON_AI_TRACE_COLOR_TOOLTIP="追蹤色塊",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(實驗箱)追蹤色塊 顯示%1",bF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",bF.MPYTHON_AI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_ALL_MESSAGE0="(實驗箱)%1獲取識別後色塊的 所有參數",bF.MPYTHON_AI_BLOB_ALL_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_X_MESSAGE0="(實驗箱)%1獲取識別後色塊的 x座標",bF.MPYTHON_AI_BLOB_X_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_Y_MESSAGE0="(實驗箱)%1獲取識別後色塊的 y座標",bF.MPYTHON_AI_BLOB_Y_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_W_MESSAGE0="(實驗箱)%1獲取識別後色塊的 寬度",bF.MPYTHON_AI_BLOB_W_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_H_MESSAGE0="(實驗箱)%1獲取識別後色塊的 高度",bF.MPYTHON_AI_BLOB_H_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_NUMBER_MESSAGE0="(實驗箱)%1獲取識別後色塊的 數量",bF.MPYTHON_AI_BLOB_NUMBER_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_CENTER_X_MESSAGE0="(實驗箱)%1獲取識別後色塊的 中心x座標",bF.MPYTHON_AI_BLOB_CENTER_X_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0="(實驗箱)%1獲取識別後色塊的 中心y座標",bF.MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_AI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0="(實驗箱)%1獲取識別後色塊的 矩形",bF.MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_DRILL_WEIGHT_MESSAGE0="初始化 訓練 %1",bF.MPYTHON_DRILL_WEIGHT_TOOLTIP="",bF.MPYTHON_DRILL_WEIGHT_HELPURL="",bF.MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL="",bF.MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0="實例化 線性迴歸直線",bF.MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP="",bF.MPYTHON_DRILL_TITLE_HELPURL="",bF.MPYTHON_DRILL_TITLE_MESSAGE0="標題%1 字號%2",bF.MPYTHON_DRILL_TITLE_TOOLTIP="",bF.MPYTHON_DRILL_LABEL_HELPURL="",bF.MPYTHON_DRILL_LABEL_MESSAGE0="標籤%1 標題%2 字號%3",bF.MPYTHON_DRILL_LABEL_TOOLTIP="",bF.MPYTHON_DRILL_DRILL_REALITY_HELPURL="",bF.MPYTHON_DRILL_DRILL_REALITY_MESSAGE0="真實數據 符號標記%1 顏色爲 r%2 g%3 b%4 標題%5",bF.MPYTHON_DRILL_DRILL_REALITY_TOOLTIP="",bF.MPYTHON_DRILL_PREDICTED_REALITY_HELPURL="",bF.MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0="預測線性迴歸直線 符號標記%1 顏色爲 r%2 g%3 b%4 標題%5",bF.MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP="",bF.MPYTHON_DRILL_LEGEND_HELPURL="",bF.MPYTHON_DRILL_LEGEND_MESSAGE0="展示圖例",bF.MPYTHON_DRILL_LEGEND_TOOLTIP="",bF.MPYTHON_DRILL_SHOW_HELPURL="",bF.MPYTHON_DRILL_SHOW_MESSAGE0="顯示圖片",bF.MPYTHON_DRILL_SHOW_TOOLTIP="",bF.MPYTHON_DRILL_DRILL_PRINT_HELPURL="",bF.MPYTHON_DRILL_DRILL_PRINT_MESSAGE0="返回對應鍵值%1",bF.MPYTHON_DRILL_DRILL_PRINT_TOOLTIP="",bF.MPYTHON_DRILL_DRILL_full_line="實線",bF.MPYTHON_DRILL_DRILL_dash_line="破折線",bF.MPYTHON_DRILL_DRILL_chain_line="點劃線",bF.MPYTHON_DRILL_DRILL_imaginary_line="虛線",bF.MPYTHON_DRILL_DRILL_dot="點",bF.MPYTHON_DRILL_DRILL_pixel="像素",bF.MPYTHON_DRILL_DRILL_solid_rim="實心圈",bF.MPYTHON_DRILL_DRILL_down_triangle="下三角",bF.MPYTHON_DRILL_DRILL_up_triangle="上三角",bF.MPYTHON_DRILL_DRILL_right_triangle="右三角",bF.MPYTHON_DRILL_DRILL_left_triangle="左三角",bF.MPYTHON_DRILL_DRILL_down_flower_triangle="下花三角",bF.MPYTHON_DRILL_DRILL_up_flower_triangle="上花三角",bF.MPYTHON_DRILL_DRILL_right_flower_triangle="右花三角",bF.MPYTHON_DRILL_DRILL_left_flower_triangle="左花三角",bF.MPYTHON_DRILL_DRILL_solid_square="實心方形",bF.MPYTHON_DRILL_DRILL_solid_pentagon="實心五角",bF.MPYTHON_DRILL_DRILL_star="星形",bF.MPYTHON_DRILL_DRILL_vertical_hexagon="豎六邊形",bF.MPYTHON_DRILL_DRILL_across_hexagon="橫六邊形",bF.MPYTHON_DRILL_DRILL_cross="十字",bF.MPYTHON_DRILL_DRILL_X="X",bF.MPYTHON_DRILL_DRILL_rhombus="菱形",bF.MPYTHON_DRILL_DRILL_thin_rhombus="瘦菱形",bF.MPYTHON_DRILL_DRILL_vertical_line="垂直線",bF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0="初始化 鳶尾花數據集",bF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP="採用Python的Sklearn機器學習庫中自帶的數據集——鳶尾花數據集。簡單分析數據集之間特徵的關係圖,根據花瓣長度,花瓣寬度,花萼長度,花萼寬度四個特徵進行繪圖虹膜植物數據集可以從龍骨數據集數據集網站獲取,也可以直接從Sklearn。數據集機器學習包得到。數據集共包含4個特徵變量,1個類別變量,共150個有樣本。類別變量分別對應鳶尾花的三個亞屬,分別是山鳶尾(Iris-setosa),變色鳶尾(Iris-versicolor)和維吉尼亞鳶尾(Iris-virginica)分別用(0,1,2)來做映射",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0="鳶尾花 主成分分析",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0="鳶尾花 因子分析 3D",bF.MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0="鳶尾花 因子分析",bF.MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0="預測圖示 鳶尾花類型%1 呈現內容 x%3 y%4 呈現種類%2 顏色爲 r%5 g%6 b%7 標題%8 向上合併%9",bF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0="預測圖示 呈現內容 x%1 y%2 呈現種類%3 顏色爲 r%4 g%5 b%6 標題%7",bF.MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0="3D 預測圖示 呈現內容 x朝向%1 y朝向%2 z朝向%3 顏色爲 r%4 g%5 b%6 標題%7",bF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0="標題%1 字號%2",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0="標籤%1 標題%2 字號%3",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0="3D 標題%1 字號%2",bF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0="3D 標籤%1 標題%2 字號%3",bF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0="展示圖例",bF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0="顯示圖片",bF.MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP="",bF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL="",bF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0="花萼和花瓣的x, y座標",bF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP="共150條記錄,分別代表50條山鳶尾(Iris-setosa),變色鳶尾(Iris-versicolor),維吉尼亞鳶尾(Iris-virginica)",bF.MPYTHONS_FLOWER_DE_LUCE_Iris_setosa="山鳶尾",bF.MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor="變色鳶尾",bF.MPYTHONS_FLOWER_DE_LUCE_Iris_virginica="維吉尼亞鳶尾",bF.MPYTHONS_FLOWER_DE_LUCE_scatter_diagram="散點圖",bF.MPYTHONS_FLOWER_DE_LUCE_kde_diagram="kde圖",bF.MPYTHONS_FLOWER_DE_LUCE_box_diagram="箱圖",bF.MPYTHONS_FLOWER_DE_LUCE_merge="合並",bF.MPYTHONS_FLOWER_DE_LUCE_not_merge="不合並",bF.MPYTHONS_FLOWER_DE_LUCE_calyx_length="花萼長度",bF.MPYTHONS_FLOWER_DE_LUCE_calyx_width="花萼寬度",bF.MPYTHONS_FLOWER_DE_LUCE_petal_length="花瓣長度",bF.MPYTHONS_FLOWER_DE_LUCE_petal_width="花瓣寬度",bF.MPYTHONS_CONVERT_PICTURE_HELPURL="",bF.MPYTHONS_CONVERT_PICTURE_MESSAGE0="將圖片轉換爲28²二值圖%1 待處理的圖片存儲路徑%2 處理後的圖片存儲路徑%3 格式%4",bF.MPYTHONS_CONVERT_PICTURE_TOOLTIP="掌控板通過串口把WIF傳給語音助手",bF.MPYTHONS_NUMBER_REPERTOIRE_HELPURL="",bF.MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0="查找解析 手寫數字數 據存儲路徑%1",bF.MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP="使用手寫數字字符庫",bF.MPYTHONS_SHOW_NUMBER_PATH_HELPURL="",bF.MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0="手寫數字圖像 存儲路徑%1",bF.MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP="",bF.MPYTHONS_SHOW_NUMBER_HELPURL="",bF.MPYTHONS_SHOW_NUMBER_MESSAGE0="顯示手寫數字圖像",bF.MPYTHONS_SHOW_NUMBER_TOOLTIP="",bF.MPYTHONS_NUMBER_RECOGNITION_HELPURL="",bF.MPYTHONS_NUMBER_RECOGNITION_MESSAGE0="識別手寫數字圖像 存儲路徑%1",bF.MPYTHONS_NUMBER_RECOGNITION_TOOLTIP="",bF.MPYTHONS_NUMBER_PLACEHOLDER_HELPURL="",bF.MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0="創建變量%1 初始化 神經網絡張量 變量名%2",bF.MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP="",bF.MPYTHON_DRILL_RESHAPE_MESSAGE0="創建變量%1 將輸入照片變量%2 轉換爲 神經網絡輸出張量%3",bF.MPYTHON_DRILL_RESHAPE_TOOLTIP="",bF.MPYTHON_DRILL_RESHAPE_HELPURL="",bF.MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0="創建變量%1 共享變量%2 初始化模式%3",bF.MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP="",bF.MPYTHON_NUMBER_CONV_WEIGHT_HELPURL="",bF.MPYTHON_NUMBER_INITIALIZER_MESSAGE0="產生截斷正態分佈隨機數 輸出張量%1 標準差%2",bF.MPYTHON_NUMBER_INITIALIZER_TOOLTIP="",bF.MPYTHON_NUMBER_INITIALIZER_HELPURL="",bF.MPYTHON_NUMBER_CONSTANT_MESSAGE0="創建常量 數值%1 輸出張量%2",bF.MPYTHON_NUMBER_CONSTANT_TOOLTIP="",bF.MPYTHON_NUMBER_CONSTANT_HELPURL="",bF.MPYTHON_NUMBER_CONV2D_MESSAGE0="神經網絡輸出張量%1 共享變量%2 步長%3 填充%4",bF.MPYTHON_NUMBER_CONV2D_TOOLTIP="",bF.MPYTHON_NUMBER_CONV2D_HELPURL="",bF.MPYTHON_NUMBER_CONV_BIASES_MESSAGE0="張量%1",bF.MPYTHON_NUMBER_CONV_BIASES_TOOLTIP="",bF.MPYTHON_NUMBER_CONV_BIASES_HELPURL="",bF.MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0="卷積二維層 變量%1 %2",bF.MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP="",bF.MPYTHON_NUMBER_CONV_CONV2D_HELPURL="",bF.MPYTHON_NUMBER_RELU_MESSAGE0="創建變量%1 Relu正向激勵函數 卷積二維層%2",bF.MPYTHON_NUMBER_RELU_TOOLTIP="",bF.MPYTHON_NUMBER_RELU_HELPURL="",bF.MPYTHON_NUMBER_MAX_POOL_MESSAGE0="池化二維層 變量%1 卷積層%2 池化窗口%3 步長%4 填充%5",bF.MPYTHON_NUMBER_MAX_POOL_TOOLTIP="",bF.MPYTHON_NUMBER_MAX_POOL_HELPURL="",bF.MPYTHON_NUMBER_MATMUL_MESSAGE0="兩個參數的對應元素各自相乘 x%1 y%2",bF.MPYTHON_NUMBER_MATMUL_TOOLTIP="",bF.MPYTHON_NUMBER_MATMUL_HELPURL="",bF.MPYTHON_NUMBER_ADD_MESSAGE0="全連接層 變量%1 兩個參數的元素相加 x%2 y%3",bF.MPYTHON_NUMBER_ADD_TOOLTIP="",bF.MPYTHON_NUMBER_ADD_HELPURL="",bF.MPYTHON_NUMBER_SOFTMAX_MESSAGE0="創建變量%1 預測模型準確度 變量名%2",bF.MPYTHON_NUMBER_SOFTMAX_TOOLTIP="",bF.MPYTHON_NUMBER_SOFTMAX_HELPURL="",bF.MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0="創建變量%1 損失函數%2",bF.MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP="",bF.MPYTHON_NUMBER_REDUCE_MEAN_HELPURL="",bF.MPYTHON_NUMBER_LOG_MESSAGE0="自然對數 %1",bF.MPYTHON_NUMBER_LOG_TOOLTIP="",bF.MPYTHON_NUMBER_LOG_HELPURL="",bF.MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0="壓縮求和%1 維度%2",bF.MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP="因爲日誌函數是單調遞增的,所以logP (Y | X)也會達到最大值,因此在前面加上負號之後,最大化P (Y | X)就等價於最小化了。",bF.MPYTHON_NUMBER_REDUCE_SUM_HELPURL="https://www.cnblogs.com/guoyaohua/p/9217206.html",bF.MPYTHON_NUMBER_TRAIN_MESSAGE0="優化學習速率 %1",bF.MPYTHON_NUMBER_TRAIN_TOOLTIP="",bF.MPYTHON_NUMBER_TRAIN_HELPURL="",bF.MPYTHON_NUMBER_MINIMIZE_MESSAGE0="創建變量%1 優化張量%2",bF.MPYTHON_NUMBER_MINIMIZE_TOOLTIP="",bF.MPYTHON_NUMBER_MINIMIZE_HELPURL="",bF.MPYTHON_NUMBER_INIT_MESSAGE0="初始化模型 完成",bF.MPYTHON_NUMBER_INIT_TOOLTIP="",bF.MPYTHON_NUMBER_INIT_HELPURL="",bF.MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0="選擇 手寫數字集%1 數量%2",bF.MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP="",bF.MPYTHON_NUMBER_TRAIN_TEST_HELPURL="",bF.MPYTHON_NUMBER_SESSION_RUN_MESSAGE0="啓動數據流圖會話進行計算 會話%1 圖片%2 標籤%3",bF.MPYTHON_NUMBER_SESSION_RUN_TOOLTIP="",bF.MPYTHON_NUMBER_SESSION_RUN_HELPURL="",bF.MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0="啓動數據流圖會話進行計算 會話%1 圖片%2 標籤%3",bF.MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP="",bF.MPYTHON_NUMBER_SESSION_RUN2_HELPURL="",bF.MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0="預測模型%1 擬合度%2 會話%3",bF.MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP="",bF.MPYTHON_NUMBER_SESSION_RUN3_HELPURL="",bF.MPYTHON_NUMBER_EQUAL_MESSAGE0="兩個張量的每一維是否相等 x%1 y%2",bF.MPYTHON_NUMBER_EQUAL_TOOLTIP="",bF.MPYTHON_NUMBER_EQUAL_HELPURL="",bF.MPYTHON_NUMBER_ARGMAX_MESSAGE0="張量%1 按%2比較返回最大值的索引",bF.MPYTHON_NUMBER_ARGMAX_TOOLTIP="",bF.MPYTHON_NUMBER_ARGMAX_HELPURL="",bF.MPYTHON_NUMBER_CAST_MESSAGE0="轉爲浮點型 %1",bF.MPYTHON_NUMBER_CAST_TOOLTIP="",bF.MPYTHON_NUMBER_CAST_HELPURL="",bF.MPYTHONS_NUMBER_SAVER_SAVE_HELPURL="",bF.MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0="手寫數字識別模型 變量名%1 存儲路徑%2",bF.MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP="MNIST手寫數字識別模型保存路徑",bF.MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL="",bF.MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0="加載模型%1 存儲路徑%2",bF.MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP="",bF.MPYTHONS_NUMBER_SAME="包含邊界",bF.MPYTHONS_NUMBER_VALID="不包含邊界",bF.MPYTHONS_NUMBER_train="訓練",bF.MPYTHONS_NUMBER_test="測試",bF.MPYTHONS_NUMBER_row="行",bF.MPYTHONS_NUMBER_rank="列",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0="調用攝像頭 %1",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP="調用筆記本內置攝像頭,所以參數爲0,如果有其他的攝像頭可以調整參數爲1,2",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0="關閉攝像頭",bF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0="刪除所有窗口",bF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加載模型 存儲路徑%1",bF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0="從攝像頭讀取圖片",bF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP="ret如果有讀取圖片就真的,否則假;第二個參數是框架,是當前截取一幀的圖片。",bF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0="轉爲灰度圖片",bF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0="檢測人臉 每次圖像尺寸減小比例%1",bF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP="",bF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL="",bF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0="人臉區域顯示矩形框 顏色爲 紅%1 綠%2 藍%3",bF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0="保存圖像 位置%1 ID%2 編號%3",bF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0="窗口中顯示圖像 文件名%1",bF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL="",bF.MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0="通過esc鍵 退出",bF.MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP="在窗口置頂時使用纔有效果",bF.MPYTHONS_FACE_RECOGNITIONR_HELPURL="",bF.MPYTHONS_FACE_RECOGNITIONR_MESSAGE0="獲得人臉在圖像中的座標值 人臉%1",bF.MPYTHONS_FACE_RECOGNITIONR_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0="是否讀取圖片",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0="是否打開攝像頭",bF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0="獲取照片及id 照片存儲路徑%1",bF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0="初始化訓練模型",bF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0="開始訓練模型",bF.MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0="%1訓練模型 存儲路徑%2",bF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0="人臉模型訓練 數目",bF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_FONT_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0="窗口顯示 識別的名字%1 設置字體爲%2 顏色爲 紅%3 綠%4 藍%5",bF.MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0="窗口顯示 識別的置信度%1 設置字體爲%2 顏色爲 紅%3 綠%4 藍%5",bF.MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL="",bF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0="預測人臉 名字%1 置信度%2",bF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP="",bF.MPYTHONS_FACE_RECOGNITION_FORECAST_Write="寫入",bF.MPYTHONS_FACE_RECOGNITION_FORECAST_Read="讀取",bF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL="",bF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0="初始化 聊天机器人",bF.MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP="",bF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL="",bF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0="选择训练器 聊天机器人",bF.MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP="",bF.MPYTHONS_DIALOGUE_ROBOT_START_HELPURL="",bF.MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0="选择与%1 聊天",bF.MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP="",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL="",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP="",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0="自定义 语料库 %1[%2]",bF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL="",bF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0="输入对话 获得响应 %1",bF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP="",bF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0="识别响应",bF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP="",bF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL="",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL="",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0="选择跟 %1 聊天",bF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP="",bF.Jenny="珍妮",bF.Jack="杰克",bF.Tom="汤姆",bF.MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL="",bF.MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0="选择 %1 %2 模式%3 %4 喂养%5",bF.MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP="",bF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL="",bF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0="查看训练库 选择%1",bF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP="",bF.MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL="",bF.MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0="生成随机数 %1",bF.MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP="",bF.MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL="",bF.MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0="显示窗口",bF.MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP="",bF.MPYTHON_AGESTURE_IMSHOW_HELPURL="",bF.MPYTHON_AGESTURE_IMSHOW_MESSAGE0="处理图像 %1",bF.MPYTHON_AGESTURE_IMSHOW_TOOLTIP="",bF.MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL="",bF.MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0="选择训练库 knn模型",bF.MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP="",bF.MPYTHON_AGESTURE_LOAD_MODEL_HELPURL="",bF.MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0="载入knn模型 存储路径%1",bF.MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP="",bF.MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL="",bF.MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0="%1打开图片 存储路径%2 图片名%3",bF.MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP="",bF.MPYTHON_AGESTURE_ARRAY_MESSAGE0="选择%1 构建特征数据%2",bF.MPYTHON_AGESTURE_ARRAY_TOOLTIP="",bF.MPYTHON_AGESTURE_ARRAY_HELPURL="",bF.MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0="打乱排序%1 ",bF.MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP="",bF.MPYTHON_GESTURE_RANDOM_RANK_HELPURL="",bF.MPYTHON_GESTURE_READ_LEND_MESSAGE0=" %1 图片特征",bF.MPYTHON_GESTURE_READ_LEND_TOOLTIP="",bF.MPYTHON_GESTURE_READ_LEND_HELPURL="",bF.MPYTHON_GESTURE_START_SRAIN_HELPURL="",bF.MPYTHON_GESTURE_START_SRAIN_MESSAGE0="开始训练 手势识别 期望%1 目标%2",bF.MPYTHON_GESTURE_START_SRAIN_TOOLTIP="",bF.MPYTHON_GESTURE_SCORE_HELPURL="",bF.MPYTHON_GESTURE_SCORE_MESSAGE0="进行评分 期望%1 目标%2",bF.MPYTHON_GESTURE_SCORE_TOOLTIP="",bF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL="",bF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",bF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 数组降维 图片总数%2",bF.MPYTHON_GESTURE_FORECAST_HELPURL="",bF.MPYTHON_GESTURE_FORECAST_TOOLTIP="",bF.MPYTHON_GESTURE_FORECAST_MESSAGE0="预测结果%1",bF.MPYTHON_AGESTURE_SAVE_MODEL_HELPURL="",bF.MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0="保存模型 存储路径%1",bF.MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP="",bF.MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL="",bF.MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0="%1图片 预测图片 ",bF.MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP="",bF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL="",bF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",bF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 彩色图像降维",bF.MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL="",bF.MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0="选择人脸库 图片存储路径%1",bF.MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP="",bF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",bF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",bF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0="第%1位人脸性别结果 置信度",bF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0="第%1位人脸情绪结果 置信度",bF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL="",bF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0="第%1位人脸性别 结果",bF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL="",bF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0="第%1位人脸情绪 结果",bF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP="",bF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL="",bF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0="选择人脸库 %1",bF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0="第%1位情绪为 %2",bF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0="第%1位性别为 %2",bF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0="人脸数量",bF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0="表情数量",bF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL="",bF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0="人脸实时检测 %1",bF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP="",bF.MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL="",bF.MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0="显示图片",bF.MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP="",bF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL="",bF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0="选择人脸%1 %2",bF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL="",bF.MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0="初始化 文章聚类",bF.MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_TITLE_HELPURL="文章数量不超过100",bF.MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0="标题 第%1文章",bF.MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_CONTENT_HELPURL="文章数量不超过100",bF.MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0="内容 第%1文章",bF.MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_JIEBA_HELPURL="文章数量不超过100",bF.MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0="文章内容转为列表 第%1文章",bF.MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL="",bF.MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0="读取停词表%1",bF.MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP="返回的是100篇文章里的符号",bF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL="",bF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0="删除后的新闻";bF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL="",bF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0="构造词云所用的数据",bF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL="",bF.MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0="计算总数 排序前%1",bF.MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP="返回的是100篇文章里的文本",bF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL="",bF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0="文章聚类训练结果 保存为图片",bF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP="",bF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL="",bF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0="显示图片",bF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP="",bF.FIRST="第一次",bF.LAST="最后一次",bF.MPYTHON_USOCKET_BLOCK="阻塞",bF.MPYTHON_USOCKET_UNBLOCK="非阻塞",bF.MPYTHON_USOCKET_SETSOCKOPT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",bF.MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0="設定socket %1 地址 %2 類型 %3",bF.MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP="設定給定通訊端選項的值。所需的符號常數在通訊端模塊中定義(SO_ *等)。該值可以是整數或表示緩衝區的類位元組對象。",bF.MPYTHON_USOCKET_READLINE_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",bF.MPYTHON_USOCKET_READLINE_MESSAGE0="socket %1 接收一行數據,遇分行符號結束並返回接收數據的對象",bF.MPYTHON_USOCKET_READLINE_TOOLTIP="接收一行數據,遇分行符號結束,並返回接收數據的對象",bF.MPYTHON_USOCKET_READ_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.read",bF.MPYTHON_USOCKET_READ_MESSAGE0="從socket %1 讀取 %2 字節並返回字節對象",bF.MPYTHON_USOCKET_READ_TOOLTIP="若未給定讀取數量 ,則按照類似 socket.readall() 的模式運行",bF.MPYTHON_USOCKET_SETBLOCKING_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.setblocking",bF.MPYTHON_USOCKET_SETBLOCKING_MESSAGE0="設socket %1 為 %2 模式",bF.MPYTHON_USOCKET_SETBLOCKING_TOOLTIP="",bF.MPYTHON_USOCKET_SETTIMEOUT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.settimeout",bF.MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0="socket %1 設超時時間 %2 秒",bF.MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP="",bF.MPYTHON_USOCKET_RECV_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recv",bF.MPYTHON_USOCKET_RECV_MESSAGE0="socket %1 接收並返回接收到的數據對象 最大數據量為 %2",bF.MPYTHON_USOCKET_RECV_TOOLTIP="",bF.MPYTHON_USOCKET_RECVFROM_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recvfrom",bF.MPYTHON_USOCKET_RECVFROM_MESSAGE0="socket %1 接收並返回接收到的數據元組 最大數據量為 %2",bF.MPYTHON_USOCKET_RECVFROM_TOOLTIP="元組格式 (bytes, address)",bF.MPYTHON_USOCKET_SENDALL_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",bF.MPYTHON_USOCKET_SENDALL_MESSAGE0="socket %1 連續發送%2 並返回發送的位元組數",bF.MPYTHON_USOCKET_SENDALL_TOOLTIP="將所有數據發送到通訊端。通訊端必須連接到遠程通訊端。與send()此不同,此方法將嘗試通過連續發送數據塊來發送所有數據。",bF.MPYTHON_USOCKET_SENDS_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",bF.MPYTHON_USOCKET_SENDS_MESSAGE0="socket %1 發送 %2 並返回發送的字節數",bF.MPYTHON_USOCKET_SENDS_TOOLTIP="將數據發送到通訊端。通訊端必須連接到遠程通訊端。返回發送的位元組數,可能小於數據長度(“short write”)。",bF.MPYTHON_USOCKET_SEND_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",bF.MPYTHON_USOCKET_SEND_MESSAGE0="socket %1 發送 %2 並返回發送的字節數",bF.MPYTHON_USOCKET_SEND_TOOLTIP="Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",bF.MPYTHON_TEXT_ESC_HELPURL="",bF.MPYTHON_TEXT_ESC_MESSAGE0="文本轉義字元 %1 ",bF.MPYTHON_TEXT_ESC_TOOLTIP="文本轉義字元",bF.MPYTHON_USOCKET_SENDTO_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.sendto",bF.MPYTHON_USOCKET_SENDTO_MESSAGE0="socket %1 發送 %2 到地址 %3",bF.MPYTHON_USOCKET_SENDTO_TOOLTIP="Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",bF.MPYTHON_USOCKET_CONNECT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.connect",bF.MPYTHON_USOCKET_CONNECT_MESSAGE0="socket %1 連接 host %2 端口 %3",bF.MPYTHON_USOCKET_CONNECT_TOOLTIP="",bF.MPYTHON_USOCKET_GETADDRINFO_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.getaddrinfo",bF.MPYTHON_USOCKET_GETADDRINFO_MESSAGE0="解析 host %1 端口 %2 並返回 ip",bF.MPYTHON_USOCKET_GETADDRINFO_TOOLTIP="需聯網",bF.MPYTHON_USOCKET_ACCEPT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",bF.MPYTHON_USOCKET_ACCEPT_MESSAGE0="socket %1 接受連接請求並返回socket元組",bF.MPYTHON_USOCKET_ACCEPT_TOOLTIP="接收連接請求。socket需要指定地址並監聽連接。返回值是 (conn, address)。\nconn:新的socket對象,可以用來收發消息\naddress:連接到服務器的客戶端地址",bF.MPYTHON_USOCKET_LISTEN_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.listen",bF.MPYTHON_USOCKET_LISTEN_MESSAGE0="監聽socket %1 backlog個數 %2",bF.MPYTHON_USOCKET_LISTEN_TOOLTIP="backlog :接受套接字的最大个数,至少为0,如果没有指定,则默认一个合理值。",bF.MPYTHON_USOCKET_BIND_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.bind",bF.MPYTHON_USOCKET_BIND_MESSAGE0="socket %1 綁定地址 %2 端口 %3",bF.MPYTHON_USOCKET_BIND_TOOLTIP="",bF.MPYTHON_USOCKET_CLOSE_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.close",bF.MPYTHON_USOCKET_CLOSE_MESSAGE0="socket %1 關閉",bF.MPYTHON_USOCKET_CLOSE_TOOLTIP="",bF.MPYTHON_USOCKET_INIT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",bF.MPYTHON_USOCKET_INIT_MESSAGE0="創建 socket %1 地址 %2 類型 %3",bF.MPYTHON_USOCKET_INIT_TOOLTIP="AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP流\nSOCK_DGRAM:=2 — UDP數據報\nSOCK_RAW :=3 — 原始套接字\nSO_REUSEADDR : =4 — socket可重用\n",bF.MPYTHON_GET_POST_HELPURL="",bF.MPYTHON_GET_POST_MESSAGE0="%1 請求網址 %2 提交字段 %3",bF.MPYTHON_GET_POST_TOOLTIP="",bF.MPYTHON_UREQUESTS_GET_POST_HELPURL="",bF.MPYTHON_UREQUESTS_GET_POST_TOOLTIP="",bF.MPYTHON_UREQUESTS_GET_POST_MESSAGE0="%1 請求網址 %2 提交字段 %3",bF.MPYTHON_UREQUESTS_POST_FILE_HELPURL="",bF.MPYTHON_UREQUESTS_POST_FILE_TOOLTIP="",bF.MPYTHON_UREQUESTS_POST_FILE_MESSAGE0="Post 提交文件 %1 請求網址 %2 文件路徑 %3 Mime類型 %4 附加字段 %5",bF.MPYTHON_RESPONSE_HELPURL="",bF.MPYTHON_RESPONSE_MESSAGE0="響應内容 格式 %1",bF.MPYTHON_RESPONSE_TOOLTIP="",bF.STRING="字符串",bF._BYTE="二进制",bF.TEXT="文本",bF.MPYTHON_RESPONSE_ATTRIBUTE_HELPURL="",bF.MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0="響應屬性 %1",bF.MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP="",bF.MPYTHON_SETS_PIN_MODE_HELPURL="https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",bF.MPYTHON_SETS_PIN_MODE_TOOLTIP="右鍵幫助,查看引脚聲明",bF.MPYTHON_SETS_PIN_MODE_MESSAGE0="設置引脚 %1 為 %2 模式 %3 並設置值為 %4",bF.MPYTHON_SET_PIN_IN="輸入",bF.MPYTHON_SET_PIN_PUSH_PULL_OUT="推挽輸出",bF.MPYTHON_SET_PIN_LEAKY_OUT="開漏輸出",bF.MPYTHON_SET_PIN_NO_PULL="無上下拉",bF.MPYTHON_SET_PIN_DOWN_PULL="下拉",bF.MPYTHON_SET_PIN_UP_PULL="上拉",bF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL="",bF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0="綫程鎖對象 %1 請求鎖",bF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP="",bF.MPYTHON_START_NEW_THREAD_HELPURL="",bF.MPYTHON_START_NEW_THREAD_MESSAGE0="子綫程 %1",bF.MPYTHON_START_NEW_THREAD_TOOLTIP="",bF.MPYTHON_UART_INIT_HELPURL="",bF.MPYTHON_UART_INIT_MESSAGE0="串口 %4 初始化 波特率 %1 tx %2 rx %3",bF.MPYTHON_UART_INIT_TOOLTIP="掌控板支持3組串口。0用於REPL,剩下1,2兩組串口可用。所有引脚皆可作爲串口的輸入RX,除 P2、P3 、P4 、P10 只能作爲輸出,其餘所有的引脚理論上都可作爲輸出 TX。",bF.MPYTHON_UART_DEINIT_HELPURL="",bF.MPYTHON_UART_DEINIT_MESSAGE0="關閉串口 %1",bF.MPYTHON_UART_DEINIT_TOOLTIP="關閉 UART 總線",bF.MPYTHON_UART_WRITE_STR_HELPURL="",bF.MPYTHON_UART_WRITE_STR_MESSAGE0="串口 %1 寫入文本 %2 %3",bF.MPYTHON_UART_WRITE_STR_TOOLTIP="將文本寫入總線。\n返回值:寫入或 None 超時的字節數。",bF.MPYTHON_UART_WRITE_HEX_HELPURL="",bF.MPYTHON_UART_WRITE_HEX_MESSAGE0="串口 %1 發送16進制字符串 %2 %3",bF.MPYTHON_UART_WRITE_HEX_TOOLTIP="",bF.MPYTHON_UART_HAS_DATA_HELPURL="",bF.MPYTHON_UART_HAS_DATA_MESSAGE0="串口 %1 有可讀數據",bF.MPYTHON_UART_HAS_DATA_TOOLTIP="返回一個整數,計算可以無阻塞地讀取的字符數。\n如果沒有可用字符,它將返回0,如果有字符,則返回正數。\n即使有多個可讀的字符,該方法也可以返回1。",bF.MPYTHON_UART_READLINE_HELPURL="",bF.MPYTHON_UART_READLINE_MESSAGE0="串口 %1 讀取一行數據",bF.MPYTHON_UART_READLINE_TOOLTIP="讀一行,以換行符結尾。\n返回值:讀取行或 None 超時。",bF.MPYTHON_UART_READ_HELPURL="",bF.MPYTHON_UART_READ_MESSAGE0="串口 %1 讀取數據",bF.MPYTHON_UART_READ_TOOLTIP="讀取盡可能多的串口數據\n返回值:包含讀入字節的字節列表。若讀取超時則返回 None。",bF.MPYTHON_UART_READ_LENGTH_HELPURL="",bF.MPYTHON_UART_READ_LENGTH_MESSAGE0="串口 %1 讀取數據 長度 %2",bF.MPYTHON_UART_READ_LENGTH_TOOLTIP="讀取指定長度字節數據\n返回值:包含讀入字節的字節列表。若讀取超時則返回 None。",bF.MPYTHON_UART_WRITE_BYTE_HELPURL="",bF.MPYTHON_UART_WRITE_BYTE_MESSAGE0="串口 %1 寫入單字節 %2",bF.MPYTHON_UART_WRITE_BYTE_TOOLTIP="參數為 0~255 的整數\n將字節寫入總線。\n返回值:寫入或 None 超時的字節數。",bF.MPYTHON_UART_WRITE_BYTES_HELPURL="",bF.MPYTHON_UART_WRITE_BYTES_MESSAGE0="串口 %1 寫入字節數組 %2",bF.MPYTHON_UART_WRITE_BYTES_TOOLTIP="將字節數組寫入總線。\n返回值:寫入或 None 超時的字節數。",bF.TEXT_FORMAT_MESSAGE0="格式化字符串 %1 % %2",bF.TEXT_FORMAT_TOOLTIP="",bF.TEXT_FORMAT_HELPURL="",bF.TEXT_FORMAT2_MESSAGE0="格式化字符串 %1 format %2",bF.TEXT_FORMAT2_TOOLTIP="",bF.TEXT_FORMAT2_HELPURL="",bF.MPYTHON_BAUDRATE_HELPURL="",bF.MPYTHON_BAUDRATE_MESSAGE0="%1",bF.MPYTHON_BAUDRATE_TOOLTIP="",bF.MPYTHON_HIGH_LOW_HELPURL="",bF.MPYTHON_HIGH_LOW_MESSAGE0="%1",bF.MPYTHON_HIGH_LOW_TOOLTIP="",bF.MPYTHON_TEN_CONVERT_TO_HELPURL="",bF.MPYTHON_TEN_CONVERT_TO_MESSAGE0="10進制整數 %1 轉化為 %2 字符串",bF.MPYTHON_TEN_CONVERT_TO_TOOLTIP="",bF.MPYTHON_BIN="二進制",bF.MPYTHON_OCT="八進制",bF.MPYTHON_HEX="十六進制",bF.MPYTHON_CONVERT_TO_TEN_HELPURL="",bF.MPYTHON_CONVERT_TO_TEN_MESSAGE0="%1 字符串 %2 轉 10進制整數",bF.MPYTHON_CONVERT_TO_TEN_TOOLTIP="",bF.MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL="",bF.MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0="10進制整數 %2 轉 %1 字节",bF.MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP="",bF.MPYTHON_INT_TO_CHR_HELPURL="",bF.MPYTHON_INT_TO_CHR_MESSAGE0="整型 %1 轉 ASCII 單字符",bF.MPYTHON_INT_TO_CHR_TOOLTIP="ASCII:基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言",bF.MPYTHON_CHR_TO_INT_HELPURL="",bF.MPYTHON_CHR_TO_INT_MESSAGE0="ASCII 單字符 %1 轉 整型",bF.MPYTHON_CHR_TO_INT_TOOLTIP="ASCII:基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",bF.MPYTHON_STR_TO_HEX_HELPURL="",bF.MPYTHON_STR_TO_HEX_MESSAGE0="字符串 %1 轉 十六進制 字節",bF.MPYTHON_STR_TO_HEX_TOOLTIP="返回結果中用空格分隔兩個十六進制數",bF.MPYTHON_HEX_TO_BIN_STR_HELPURL="",bF.MPYTHON_HEX_TO_BIN_STR_MESSAGE0="十六進制字符串 %1 轉 二進制 字節",bF.MPYTHON_HEX_TO_BIN_STR_TOOLTIP="",bF.MPYTHON_DATA_TO_BASE64_HELPURL="",bF.MPYTHON_DATA_TO_BASE64_MESSAGE0="%1 以 base64 格式編碼 返回字節對象",bF.MPYTHON_DATA_TO_BASE64_TOOLTIP="",bF.MPYTHON_BASE64_TO_DATA_HELPURL="",bF.MPYTHON_BASE64_TO_DATA_MESSAGE0="解碼 base64 數據 %1 返回字節對象",bF.MPYTHON_BASE64_TO_DATA_TOOLTIP="",bF.MPYTHON_UJSON_DUMPS_HELPURL="",bF.MPYTHON_UJSON_DUMPS_MESSAGE0="%1 轉 json 字符串",bF.MPYTHON_UJSON_DUMPS_TOOLTIP="JSON 格式的 key 必須是字符串 ,value 可以是合法的 JSON 數據類型(字符串, 數字, 對象, 數組, 布爾值或 none)",bF.MPYTHON_UJSON_LOADS_HELPURL="",bF.MPYTHON_UJSON_LOADS_MESSAGE0="解析 json 字符串 %1 返回对象",bF.MPYTHON_UJSON_LOADS_TOOLTIP="JSON 格式的 key 必須是字符串 ,value 可以是合法的 JSON 數據類型(字符串, 數字, 對象, 數組, 布爾值或 none)",bF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL="",bF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0="自定義終端部件 Terminal 虛擬管脚 V %1",bF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP="",bF.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL="",bF.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0="同步虛擬管脚狀態 V %1",bF.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP="",bF.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL="",bF.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0="當 Blynk 斷開連接時",bF.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP="",bF.MPYTHON_BLYNK_ON_CONNECTED_HELPURL="",bF.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0="當 Blynk 連接時",bF.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP="",bF.MPYTHON_BLYNKTIMER_RUN_HELPURL="",bF.MPYTHON_BLYNKTIMER_RUN_MESSAGE0="運行 Blynk 定時器進程",bF.MPYTHON_BLYNKTIMER_RUN_TOOLTIP="建議放在 '一直重復' 中循環執行",bF.MPYTHON_BLYNK_RUN_HELPURL="",bF.MPYTHON_BLYNK_RUN_MESSAGE0="運行 Blynk 進程",bF.MPYTHON_BLYNK_RUN_TOOLTIP="建議放在 '一直重復' 中循環執行",bF.MPYTHON_BLYNK_APP_NOTIFY_HELPURL="",bF.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0="Blynk APP 顯示通知 %1",bF.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP="",bF.MPYTHON_BLYNKTIMER_HELPURL="",bF.MPYTHON_BLYNKTIMER_MESSAGE0="Blynk 定時器 %1 %2 周期 %3 秒",bF.MPYTHON_BLYNKTIMER_TOOLTIP='注意:\n定時器序號為自動獲取,自上而下,從0開始且連續,不可"定時器0,定時器2",此處暴露參數為方便查看!\n參數:\nno_timers_err=False - 如果所有定時器都停止,禁用異常觸發',bF.MPYTHON_BLYNK_GET_TIMERS_HELPURL="",bF.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0="可用的 Blynk 定時器",bF.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP="",bF.MPYTHON_BLYNK_STOP_TIMERS_HELPURL="",bF.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0="停止 Blynk 定時器 %1",bF.MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP='注意:\n定時器序號為自動獲取,自上而下,從0開始且連續,不可"定時器0,定時器2",此處暴露參數為方便查看!\n參數:\nno_timers_err=False - 如果所有定時器都停止,禁用異常觸發',bF.MPYTHON_UART_INPUT_HELPURL="",bF.MPYTHON_UART_INPUT_MESSAGE0="從串口獲取文本 提示語句 %1",bF.MPYTHON_UART_INPUT_TOOLTIP="",bF.INT_TO_CHR_HELPURL="",bF.INT_TO_CHR_MESSAGE0="整數 %1 轉 ASCII 單字符",bF.INT_TO_CHR_TOOLTIP="",bF.MPYTHON_BLYNK_SET_PROPERTY_HELPURL="",bF.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0="給虛擬管脚添加 屬性 %1 值 %2",bF.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP="放於 read 或 write 事件中,虛擬管脚由事件決定,與該管脚綁定的組件會擁有添加的屬性",bF.MPYTHON_BLYNK_EMAIL_HELPURL="",bF.MPYTHON_BLYNK_EMAIL_MESSAGE0="向預設郵箱發郵件 %1 主題 %2 正文 %3",bF.MPYTHON_BLYNK_EMAIL_TOOLTIP="",bF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL="",bF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0="發送數據 %1 到 Blynk APP 的 虛擬管脚 V %2",bF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP="虛擬管脚:V0 ~ V255",bF.MPYTHON_BLYNK_SETUP_HELPURL="",bF.MPYTHON_BLYNK_SETUP_MESSAGE0="Blynk 設置 %1 服務器 %2 端口 %3 授權碼 %4",bF.MPYTHON_BLYNK_SETUP_TOOLTIP="服務器可填 blynk-cloud.com 或者 blynk.mpython.cn\n默認端口為 8080\n註意:手機APP訪問端口為 9443",bF.MPYTHON_BLYNK_APP_DATA_HELPURL="",bF.MPYTHON_BLYNK_APP_DATA_MESSAGE0="當 從 Blynk APP 收到 虛擬管腳 V %1 的值 %2 時",bF.MPYTHON_BLYNK_APP_DATA_TOOLTIP="虛擬管脚:V0 ~ V255",bF.MPYTHON_BLYNK_RECEIVED_MESSAGE0="當 收到 Blynk 虛擬管腳 V %1 的值",bF.MPYTHON_BLYNK_VALUE_MESSAGE0="從 Blynk 收到的值",bF.MPYTHON_BLYNK_VALUE_TOOLTIP="",bF.MPYTHON_BLYNK_VALUE_HELPURL="",bF.MPYTHON_ONENET_DISCONNECT_MESSAGE0="OneNET 斷開連接",bF.MPYTHON_ONENET_DISCONNECT_TOOLTIP="",bF.MPYTHON_ONENET_DISCONNECT_HELPURL="",bF.MPYTHON_ONENET_MSG_MESSAGE0="從 OneNET 收到的消息",bF.MPYTHON_ONENET_MSG_TOOLTIP="",bF.MPYTHON_ONENET_MSG_HELPURL="",bF.MPYTHON_ONENET_RECV_MESSAGE0="當 從 OneNET 收到消息 %1 時",bF.MPYTHON3_ONENET_RECV_MESSAGE0="當 從 OneNET 收到消息 時",bF.MPYTHON_ONENET_RECV_TOOLTIP="",bF.MPYTHON_ONENET_RECV_HELPURL="",bF.MPYTHON_ONENET_RECV_MSG_MESSAGE0="當 從 OneNET 收到特定消息 %1 時",bF.MPYTHON_ONENET_RECV_MSG_TOOLTIP="",bF.MPYTHON_ONENET_RECV_MSG_HELPURL="",bF.MPYTHON_ONENET_PUB_VALUE_MESSAGE0="向 OneNET 發送數據流 名稱 %1 值 %2",bF.MPYTHON_ONENET_PUB_VALUE_TOOLTIP="",bF.MPYTHON_ONENET_PUB_VALUE_HELPURL="",bF.MPYTHON_ONENET_PUB_DICT_MESSAGE0="向 OneNET 發送數據流 %1",bF.MPYTHON_ONENET_PUB_DICT_TOOLTIP="",bF.MPYTHON_ONENET_PUB_DICT_HELPURL="",bF.MPYTHON_ONENET_PUB_VALUE2_MESSAGE0="向 小程序 發送數據流 名稱 %1 值 %2",bF.MPYTHON_ONENET_PUB_VALUE2_TOOLTIP="",bF.MPYTHON_ONENET_PUB_VALUE2_HELPURL="",bF.MPYTHON_HCSR04_DISTANCE_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",bF.MPYTHON_HCSR04_DISTANCE_MESSAGE0="%1 hcsr04 超聲波距離 測量單位 %2",bF.MPYTHON_HCSR04_DISTANCE_TOOLTIP="",bF.MPYTHON_HCSR04_DISTANCE_MM_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",bF.MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0="%1 hcsr04 超聲波(mm)",bF.MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP="",bF.MPYTHON_HCSR04_OBJ_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",bF.MPYTHON_HCSR04_OBJ_MESSAGE0="hcsr04 超聲波初始化 名稱 %1 trigger %2 echo %3",bF.MPYTHON_HCSR04_OBJ_TOOLTIP="",bF.MPYTHON_PM2_5_MIC_HELPURL="",bF.MPYTHON_PM2_5_MIC_MESSAGE0="rx引脚%1 PM值濃度%2",bF.MPYTHON_PM2_5_MIC_TOOLTIP="",bF.MPYTHON_PM2_5_LitresAir_HELPURL="",bF.MPYTHON_PM2_5_LitresAir_MESSAGE0="rx引脚%1 0.1昇空氣中直徑在%2 顆粒物個數",bF.MPYTHON_PM2_5_LitresAir_TOOLTIP="",bF.MPYTHON3_IR_REMOTE_RECV_MESSAGE0="當 紅外接收端 %1 收到消息時 %2 執行 %3",bF.MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0="紅外回調地址",bF.MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0="紅外接收內容",bF.MPYTHON_IR_REMOTE_RECV_MESSAGE0="紅外接收 %1 回調地址 %2 回調命令 %3",bF.MPYTHON_IR_REMOTE_RECV_HELPURL="",bF.MPYTHON_IR_REMOTE_RECV_TOOLTIP="",bF.MPYTHON_IR_REMOTE_SEND_MESSAGE0="紅外發送 %1 地址 %2 命令 %3",bF.MPYTHON_IR_REMOTE_SEND_HELPURL="",bF.MPYTHON_IR_REMOTE_SEND_TOOLTIP="",bF.MPYTHON_ONENET_ACCEPT_MESSAGE="收到消息",bF.MPYTHON_ONENET="OneNET 設置",bF.MPYTHON_ONENET_WECHAT_APP="小程序 设置",bF.MPYTHON_ONENET_OPTION_BOARDS="可選掌控板",bF.MPYTHON_ONENET_TITLE="OneNET",bF.MPYTHON_SERVER="服務器",bF.MPYTHON_DEVICE_ID="設備ID",bF.MPYTHON_PRODUCT_ID="產品ID",bF.MPYTHON_API_KEY="產品APIKey",bF.MPYTHON_ONENET_CALLBACK="回調函數",bF.MPYTHON_TOPIC="主題",bF.MPYTHON_ONENET_CALLBACK_TITLE="OneNET回調函數",bF.MPYTHON_ONENET_OPTION_BOARDS_HELPURL="",bF.MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0="小程序 選擇掌控板應用 %1",bF.MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP="",bF.TEXT_TO_BYTE_MESSAGE0="轉字節 %1",bF.TEXT_TO_BYTE_TOOLTIP="支持數據類型:string",bF.TEXT_TO_BYTE_HELPURL="",bF.OTHER_TO_BYTE_MESSAGE0="非文本轉字節 %1",bF.OTHER_TO_BYTE_TOOLTIP="",bF.OTHER_TO_BYTE_HELPURL="",bF.MPYTHON_BYTES_DECODE_HELPURL="",bF.MPYTHON_BYTES_DECODE_MESSAGE0="字節 %1 轉 字符串",bF.MPYTHON_BYTES_DECODE_TOOLTIP="",bF.MPYTHON_ONENET_TOOLTIP="創建OneNET連接",bF.MPYTHON_ONENET_INIT_WIFI_MESSAGE0="物聯網 確保連接到 Wi-Fi 名稱 %1 密碼 %2",bF.MPYTHON_ONENET_INIT_WIFI_TOOLTIP="",bF.MPYTHON_ONENET_INIT_WIFI_HELPURL="",bF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL="",bF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0="儅從小程序收到消息 %1 和 %2 時",bF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP="",bF.MPYTHON_MAC_ADDRESS_HELPURL="",bF.MPYTHON_MAC_ADDRESS_MESSAGE0="MAC 地址",bF.MPYTHON_MAC_ADDRESS_TOOLTIP="",bF.MPYTHON_RADIO_REC_HELPURL="",bF.MPYTHON_RADIO_REC_MESSAGE0="無綫廣播 接收消息",bF.MPYTHON_RADIO_REC_TOOLTIP="所接收為字節型",bF.MPYTHON_RADIO_SEND_HELPURL="",bF.MPYTHON_RADIO_SEND_MESSAGE0="無綫廣播 發送 %1",bF.MPYTHON_RADIO_SEND_TOOLTIP="頻道: 1~13",bF.MPYTHON_RADIO_CHANNEL_HELPURL="",bF.MPYTHON_RADIO_CHANNEL_MESSAGE0="設無綫廣播 頻道為 %1",bF.MPYTHON_RADIO_CHANNEL_TOOLTIP="頻道: 1~13",bF.MPYTHON_RADIO_ON_OFF_HELPURL="",bF.MPYTHON_RADIO_ON_OFF_MESSAGE0="%1 無綫廣播",bF.MPYTHON_RADIO_ON_OFF_TOOLTIP="頻道: 1~13",bF.MPYTHON_RADIO_MSG_MESSAGE0="收到的無線廣播消息",bF.MPYTHON_RADIO_MSG_TOOLTIP="",bF.MPYTHON_RADIO_MSG_HELPURL="",bF.MPYTHON3_RADIO_RECV_MESSAGE0="當 收到無線廣播消息 時 %1 執行 %2",bF.MPYTHON_RADIO_RECV_MESSAGE0="當 收到無線廣播消息 %1 時",bF.MPYTHON_RADIO_RECV_TOOLTIP="頻道: 1~13",bF.MPYTHON_RADIO_RECV_HELPURL="",bF.MPYTHON_RADIO_RECV_MSG_MESSAGE0="當 收到特定無線廣播消息 %1 時 %2 執行 %3",bF.MPYTHON_RADIO_RECV_MSG_TOOLTIP="頻道: 1~13",bF.MPYTHON_RADIO_RECV_MSG_HELPURL="",bF.MPYTHON_UDP_INIT_HELPURL="",bF.MPYTHON_UDP_INIT_MESSAGE0="建立 UDP 連接",bF.MPYTHON_UDP_INIT_TOOLTIP="UDP連接基於Wi-Fi",bF.MPYTHON_UDP_SEND_HELPURL="",bF.MPYTHON_UDP_SEND_MESSAGE0="UDP 群發消息 %1",bF.MPYTHON_UDP_SEND_TOOLTIP="",bF.MPYTHON_UDP_SENDTO_HELPURL="",bF.MPYTHON_UDP_SENDTO_MESSAGE0="UDP 發送消息 %1 到 %2 端口 %3",bF.MPYTHON_UDP_SENDTO_TOOLTIP="",bF.MPYTHON_UDP_RECV_HELPURL="",bF.MPYTHON_UDP_RECV_MESSAGE0="UDP 接收消息",bF.MPYTHON_UDP_RECV_TOOLTIP="",bF.MPYTHON_UDP_RECV_EVENT_HELPURL="",bF.MPYTHON_UDP_RECV_EVENT_MESSAGE0="當從 UDP 收到消息時 %1 執行 %2",bF.MPYTHON_UDP_RECV_EVENT_TOOLTIP="",bF.MPYTHON_UDP_RECV_MSG_MESSAGE0="從 UDP 收到的消息",bF.MPYTHON_UDP_RECV_MSG_TOOLTIP="",bF.MPYTHON_UDP_RECV_MSG_HELPURL="",bF.MPYTHON_AUDIO_PLAY_chirp_MESSAGE0="鳥叫",bF.MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0="鋼琴黑暗旋律配樂",bF.MPYTHON_AUDIO_PLAY_miaow_MESSAGE0="貓叫",bF.MPYTHON_AUDIO_PLAY_bark_MESSAGE0="小狗吠叫",bF.MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0="渾厚的打擊音",bF.MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0="緊張效果的音效",bF.MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0="拍照快門聲",bF.MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0="數百只蒼蠅",bF.MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0="蟋蟀叫聲",bF.MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0="搖晃低音聲線",bF.MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0="聽眾歡呼掌聲",bF.MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0="郵輪汽笛",bF.MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0="現代電話鈴聲",bF.MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0="拔蘿蔔",bF.MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0="兩只老虎",bF.MPYTHON_AUDIO_SET_VOLUME_HELPURL="",bF.MPYTHON_AUDIO_SET_VOLUME_MESSAGE0="設音頻音量 %1",bF.MPYTHON_AUDIO_SET_VOLUME_TOOLTIP="",bF.MPYTHON_DISPCHAR_MODE_1="普通",bF.MPYTHON_DISPCHAR_MODE_2="反轉",bF.MPYTHON_DISPCHAR_MODE_3="透明",bF.MPYTHON_AUDIO_XUNFEI_TTS_HELPURL="",bF.MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0="TTS 語音播放 %1",bF.MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP="需要在 訊飛開放平臺 www.xfyun.cn 上開通“在線語音合成”服務",bF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL="https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",bF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0="TTS 語音配置 APPID %1 APIKey %2",bF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP="輸入在 訊飛開放平臺 www.xfyun.cn 獲取的 APPID 與 APIKey\n註意:要設置IP白名單",bF.MPYTHON_AUDIO_PLAY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",bF.MPYTHON_AUDIO_PLAY_MESSAGE0="音頻 播放 %1",bF.MPYTHON_AUDIO_PLAY_TOOLTIP="需要有源音箱\nP8 左聲道\nP9 右聲道\nGND 接地\n播放參數: \n網絡 MP3 的 url 或已上傳至掌控板的 MP3, 如'music_1.mp3' ",bF.MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",bF.MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0="音頻 播放 %1",bF.MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP="需要有源音箱\nP8 左聲道\nP9 右聲道\nGND 接地\n播放參數: \n網絡 MP3 的 url 或已上傳至掌控板的 MP3, 如'music_1.mp3' ",bF.MPYTHON_AUDIO_DEINIT_HELPURL="",bF.MPYTHON_AUDIO_DEINIT_MESSAGE0="音頻 釋放緩存",bF.MPYTHON_AUDIO_DEINIT_TOOLTIP="",bF.MPYTHON_AUDIO_CMD_HELPURL="",bF.MPYTHON_AUDIO_CMD_MESSAGE0="音頻 %1",bF.MPYTHON_AUDIO_CMD_TOOLTIP="",bF.MPYTHON_AUDIO_INIT_HELPURL="",bF.MPYTHON_AUDIO_INIT_MESSAGE0="音頻 初始化",bF.MPYTHON_AUDIO_INIT_TOOLTIP="為音頻解碼開闢緩存",bF.MPYTHON_AUDIO_START_RECORDING_HELPURL="",bF.MPYTHON_AUDIO_START_RECORDING_MESSAGE0="開始錄音 錄音時長%1秒",bF.MPYTHON_AUDIO_START_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本,錄音時長不能超過5秒",bF.MPYTHON_AUDIO_RECORDING_RESULT_HELPURL="",bF.MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0="錄音結果",bF.MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",bF.MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL="",bF.MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0="將 %1 進行識別",bF.MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。",bF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL="",bF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0="識別錄音結果",bF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",bF.MPYTHON_RECORD_INIT_HELPURL="",bF.MPYTHON_RECORD_INIT_MESSAGE0="錄音 初始化",bF.MPYTHON_RECORD_INIT_TOOLTIP="錄音初始化。\n需要掌控板v1.1以上硬件版本。",bF.MPYTHON_RECORD_DEINIT_HELPURL="",bF.MPYTHON_RECORD_DEINIT_MESSAGE0="錄音 釋放資源",bF.MPYTHON_RECORD_DEINIT_TOOLTIP="錄音結束後釋放資源。\n需要掌控板v1.1以上硬件版本。",bF.MPYTHON_RECORD_WAV_HELPURL="",bF.MPYTHON_RECORD_WAV_MESSAGE0="錄制音頻 存儲路徑 %1 時長 %2 秒",bF.MPYTHON_RECORD_WAV_TOOLTIP="錄制音頻,並以 WAV 格式存儲。\n需要掌控板v1.1以上硬件版本。",bF.MPYTHON_ASR_HELPURL="",bF.MPYTHON_ASR_MESSAGE0="識別 %1 秒語音指令",bF.MPYTHON_ASR_TOOLTIP="可以識別3秒內的語音指令。\n需要掌控板v1.1以上硬件版本。",bF.mpython_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_button_A="P5(按鍵A)",bF.mpython_button_B="P11(按鍵B)",bF.mpython_PIN7_RGB="P7(板載RGB)",bF.MPYTHON_PWM_PIN_P7="P7 (掌控板)",bF.MPYTHON_PWM_PIN_P9="P9 (掌控實驗箱)",bF.mpython_tem="溫度",bF.mpython_hum="濕度",bF.mpython_pre="氣壓",bF.mpython_left_right="左右",bF.MPYTHON_LEFT="左",bF.MPYTHON_RIGHT="右",bF.mpython_front_back="前後",bF.mpython_vertical="垂直",bF.mpython_horizontal="水平",bF.mpython_run_in_back="後臺運行",bF.mpython_run_in_front="前臺運行",bF.mpython_draw="繪制",bF.mpython_clear="清除",bF.mpython_s="秒",bF.mpython_ms="毫秒",bF.mpython_us="微秒",bF.mpython_year="年",bF.mpython_month="月",bF.mpython_date="日",bF.mpython_hour="時",bF.mpython_minute="分",bF.mpython_week="星期數",bF.mpython_days="天數",bF.MPYTHON_ORDER="第",bF.MPYTHON_REVERSE_ORDER="倒數第",bF.MATH_RANDOM_RANDRANGE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.MATH_RANDOM_RANDRANGE_TOOLTIP="返回指定遞增基數集合中的一個隨機數,基數缺省值為1",bF.MATH_RANDOM_RANDRANGE_MESSAGE0="隨機數 從遞增區間 [%1 ,%2) 遞增步長%3",bF.MATH_KEEP_DECIMAL_HELPURL="",bF.MATH_KEEP_DECIMAL_TOOLTIP="",bF.MATH_KEEP_DECIMAL_MESSAGE0="%1 保留 %2 位小數",bF.MPYTHON_MIN="最小值",bF.MPYTHON_MAX="最大值",bF.MPYTHON_LENTH="長度",bF.TUPLE_MIN_MAX_LEN_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.TUPLE_MIN_MAX_LEN_TOOLTIP="",bF.TUPLE_MIN_MAX_LEN_MESSAGE0="元組 %1 %2",bF.TUPLE_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.TUPLE_ITEM_EXIST_TOOLTIP="",bF.TUPLE_ITEM_EXIST_MESSAGE0="元組%1 包含%2",bF.LIST_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.LIST_ITEM_EXIST_TOOLTIP="",bF.LIST_ITEM_EXIST_MESSAGE0="列表%1 包含%2",bF.PARTS_OF_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.PARTS_OF_TUPLE_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.PARTS_OF_TUPLE_MESSAGE0="返回元組%1 取第%2 項到尾項",bF.PARTS_OF_TUPLE2_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.PARTS_OF_TUPLE2_TOOLTIP="遞增順序取項\n舉例:\n 倒數第5到倒數第2;\n 第0到第5",bF.PARTS_OF_TUPLE2_MESSAGE0="返回元組%1 取%2 %3 項到 %4 %5 項",bF.PARTS_OF_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.PARTS_OF_LIST_TOOLTIP="遞增順序取項\n舉例:\n 倒數第5到倒數第2;\n 第0到第5",bF.PARTS_OF_LIST_MESSAGE0="返回列表%1 取%2 %3 項到 %4 %5 項",bF.LIST_TO_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.LIST_TO_TUPLE_TOOLTIP="",bF.LIST_TO_TUPLE_MESSAGE0="列表%1 轉元組",bF.tuple_create_with_MESSAGE0="定義元組 %1 = %2 ",bF.tuple_create_with_TOOLTIP="只包含一個元素時,需要在元素後面添加逗號",bF.tuple_create_with_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.tuple_order_item_MESSAGE0="元組%1 %2 %3 項",bF.tuple_order_item_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.tuple_order_item_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.LIST_ORDER_ITEM_MESSAGE0="列表%1 %2 %3 項",bF.LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SET_LIST_ORDER_ITEM_MESSAGE0="設列表%1 %2 %3 項為%4",bF.SET_LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.SET_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.INSERT_LIST_ORDER_ITEM_MESSAGE0="插入列表%1 %2 %3 項為%4",bF.INSERT_LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.INSERT_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SET_TUPLE_ORDER_ITEM_MESSAGE0="設元組%1 %2 %3 項為%4",bF.SET_TUPLE_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.SET_TUPLE_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_CREATE_WITH_TOOLTIP="",bF.DICT_CREATE_WITH_MESSAGE0="定義字典 %1 = %2",bF.SET_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SET_CREATE_WITH_TOOLTIP="",bF.SET_CREATE_WITH_MESSAGE0="定義集合 %1 = %2",bF.SET_UPDATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SET_UPDATE_WITH_TOOLTIP="添加參數可為字符串、列表、元組、集合、字典(只添加key),已有元素則不進行操作",bF.SET_UPDATE_WITH_MESSAGE0="集合 %1 添加 %2",bF.INTERSECTION_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.INTERSECTION_OF_SETS_TOOLTIP="",bF.INTERSECTION_OF_SETS_MESSAGE0="取 %1 集合 %2 集合 %3",bF.MPYTHON_INTERSECTION="交集",bF.MPYTHON_UNION="並集",bF.MPYTHON_DIFFERENCE="差集",bF.SETS_UPDATE_WAYS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SETS_UPDATE_WAYS_TOOLTIP="",bF.SETS_UPDATE_WAYS_MESSAGE0="集合 %1 更新為 與集合 %2 的 %3",bF.SUBSET_SUPERSET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SUBSET_SUPERSET_TOOLTIP="",bF.SUBSET_SUPERSET_MESSAGE0="集合 %1 為集合 %2 的 %3",bF.MPYTHON_SUBSET="子集",bF.MPYTHON_SUPERSET="超集",bF.LEN_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.LEN_OF_SETS_TOOLTIP="",bF.LEN_OF_SETS_MESSAGE0="集合 %1 長度",bF.GET_SETS_POP_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.GET_SETS_POP_TOOLTIP="",bF.GET_SETS_POP_MESSAGE0="返回隨機項並移除之 從集合 %1",bF.CREATE_EMPTY_SET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.CREATE_EMPTY_SET_TOOLTIP="",bF.CREATE_EMPTY_SET_MESSAGE0="創建空集合 %1",bF.BIT_INVERSION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.BIT_INVERSION_TOOLTIP="對數據的每個二進制位取反",bF.BIT_INVERSION_MESSAGE0="二進制取反 %1",bF.TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.SET_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP="項可為字符串、已賦值變量、元組",bF.DICT_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序計數從0開始,倒序計數從1開始",bF.DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_KEY_VALUE_TOOLTIP="",bF.DICT_KEY_VALUE_MESSAGE0="字典%1 鍵%2 的值",bF.ADD_DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.ADD_DICT_KEY_VALUE_TOOLTIP="已有該鍵則更新該鍵",bF.ADD_DICT_KEY_VALUE_MESSAGE0="字典%1 添加鍵%2 值%3",bF.DICT_LENGTH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_LENGTH_TOOLTIP="",bF.DICT_LENGTH_MESSAGE0="字典%1 長度",bF.DICT_KEY_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_KEY_EXIST_TOOLTIP="",bF.DICT_KEY_EXIST_MESSAGE0="字典%1 包含鍵%2",bF.DICT_KEY_OR_VAL_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.DICT_KEY_OR_VAL_LIST_TOOLTIP="",bF.DICT_KEY_OR_VAL_LIST_MESSAGE0="字典%1 %2的列表",bF.DICT_KEYS="鍵",bF.DICT_VALUES="值",bF.mpython_lists_append_MESSAGE0="列表%1 末尾添加項%2",bF.mpython_lists_append_TOOLTIP="",bF.mpython_lists_append_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_lists_extend_MESSAGE0="列表%1 追加列表%2",bF.mpython_lists_extend_TOOLTIP="",bF.mpython_lists_extend_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_lists_clear_MESSAGE0="列表%1 清空",bF.mpython_lists_clear_TOOLTIP="",bF.mpython_lists_clear_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.MPYTHON_REMOVE_REPETITION_MESSAGE0="列表%1 移除重複",bF.MPYTHON_REMOVE_REPETITION_TOOLTIP="",bF.MPYTHON_REMOVE_REPETITION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_Timer_value_MESSAGE0="定時器 %1 的計數值",bF.mpython_Timer_value_TOOLTIP="獲取並返回計時器當前計數值",bF.mpython_Timer_deinit_MESSAGE0="清除 定時器/事件 %1",bF.mpython_Timer_deinit_TOOLTIP="取消定時器的初始化。停止計時器,並禁用計時器外圍設備",bF.mpython_Interrupt_AB_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",bF.mpython_Interrupt_AB_TOOLTIP="",bF.mpython_Interrupt_AB_MESSAGE0="當按鍵 %1 被 %2 時",bF.mpython_Interrupt_pin_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",bF.mpython_Interrupt_pin_TOOLTIP="上升沿觸發:由低電平到高電平;下降沿觸發:由高電平到低電平",bF.mpython_Interrupt_pin_MESSAGE0="當引腳 %1 電平 %2 時",bF.mpython_Interrupt_pin_IRQ_FALLING="↘ 從高到低",bF.mpython_Interrupt_pin_IRQ_RISING="↗ 從低到高",bF.mpython_IRQ_FALLING="按下",bF.mpython_IRQ_RISING="松開",bF.mpython_PERIODIC="重復執行",bF.mpython_ONE_SHOT="延時執行",bF.MPYTHON_IS_SHAKED_MESSAGE0="掌控板 %1",bF.MPYTHON_IS_SHAKED_HELPURL="",bF.MPYTHON_IS_SHAKED_TOOLTIP="",bF.MPYTHON_IS_SHAKED="被搖晃",bF.MPYTHON_IS_THROWN="被拋起",bF.MPYTHON_SHAKE_DETECTOR_MESSAGE0="當掌控板 %1 時",bF.MPYTHON_SHAKE_DETECTOR_HELPURL="",bF.MPYTHON_SHAKE_DETECTOR_TOOLTIP="",bF.MPYTHON_IS_TILTED_MESSAGE0="掌控板 %1",bF.MPYTHON_IS_TILTED_HELPURL="",bF.MPYTHON_IS_TILTED_TOOLTIP="",bF.MPYTHON_TILT_DETECTOR_MESSAGE0="當掌控板 %1 時",bF.MPYTHON_TILT_DETECTOR_HELPURL="",bF.MPYTHON_TILT_DETECTOR_TOOLTIP="",bF.MPYTHON_DIRECTION_FORWARD="向前傾斜",bF.MPYTHON_DIRECTION_BACK="向後傾斜",bF.MPYTHON_DIRECTION_RIGHT="向右傾斜",bF.MPYTHON_DIRECTION_LEFT="向左傾斜",bF.MPYTHON_DIRECTION_NONE="平放",bF.MPYTHON_TOUCH_EVENT_MESSAGE0="當觸摸鍵 %1 被 %2 時",bF.MPYTHON_TOUCH_EVENT_HELPURL="",bF.MPYTHON_TOUCH_EVENT_TOOLTIP="",bF.MPYTHON_TOUCH_EVENT_PRESSED="觸摸",bF.MPYTHON_TOUCH_EVENT_UNPRESSED="釋放",bF.MPYTHON_CUSTOM_EVENT_MESSAGE0="事件 %1 : 當 %2 時",bF.MPYTHON_CUSTOM_EVENT_HELPURL="",bF.MPYTHON_CUSTOM_EVENT_TOOLTIP="自定義事件與定時器共用 1/2/4/7/8/9/10,不可同時占用一個端口。\n最大同時創建4個事件/定時器,如果存在沖突,請嘗試換一個編號。",bF.mpython_music_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_music_range_pitch_TOOLTIP="時長為單個頻率的時長",bF.mpython_music_range_pitch_MESSAGE0="播放音調 從%1 到%2 步長%3 時長%4 毫秒 引脚 %5",bF.mpython_neopixel_init_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_neopixel_init_TOOLTIP="",bF.mpython_neopixel_init_MESSAGE0="燈帶初始化 名稱%1 引腳%2 數量%3",bF.MPYTHON_NEOPIXEL_RAINBOW_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP="",bF.MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0="彩虹燈效 燈帶%1 數量 %2 亮度 %3 偏移 %4",bF.MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",bF.MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP="亮度調節, 範圍 0 ~ 100",bF.MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0="燈帶 %1 設置亮度為 %2",bF.mpython_neopixel_single_TOOLTIP="",bF.mpython_neopixel_single_MESSAGE0="燈帶%1 %2號 紅%3 綠%4 藍%5",bF.mpython_neopixel_single_gui_MESSAGE0="燈帶 %1 %2號 顏色為 %3",bF.mpython_neopixel_single_gui_TOOLTIP="",bF.mpython_neopixel_show_TOOLTIP="",bF.mpython_neopixel_show_MESSAGE0="燈帶%1 設置生效",bF.mpython_neopixel_off_TOOLTIP="",bF.mpython_neopixel_off_MESSAGE0="燈帶%1 關閉",bF.mpython_neopixel_all_TOOLTIP="",bF.mpython_neopixel_all_MESSAGE0="燈帶%1 全亮 紅%2 綠%3 藍%4",bF.mpython_neopixel_all_gui_TOOLTIP="",bF.mpython_neopixel_all_gui_MESSAGE0="燈帶%1 全亮 顏色%2",bF.mpython_image_to_oled_MESSAGE0="打開圖片 %1 寬 %2 高 %3",bF.mpython_image_to_oled_TOOLTIP="",bF.mpython_time_localtime_MESSAGE0="本地時間 %1",bF.mpython_time_localtime_TOOLTIP="星期數:返回0~6,周一為0,周日為6\n天數:獲取當前日期是一年中的第幾天\n建議先連接wifi並獲取網絡時間",bF.mpython_WiFi_config_MESSAGE0="Wi-Fi 配置信息 %1",bF.mpython_WiFi_config_TOOLTIP="netmask-子網掩碼;gateway-網關",bF.mpython_time_ticks_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",bF.mpython_time_ticks_MESSAGE0="運行時間 %1",bF.mpython_time_ticks_TOOLTIP="",bF.MPYTHON_TIMER_DEF_MESSAGE0="定義定時器 %1",bF.MPYTHON_TIMER_INIT_MESSAGE0="啟動定時器 %1 %2 周期 %3 毫秒",bF.mpython_Timer_MESSAGE0="設置定時器 %1 %2 周期 %3 毫秒",bF.mpython_Timer_TOOLTIP="創建定時器n,n=1-14。\n最大同時創建4個定時器,如果存在沖突,請嘗試換一個編號。\n3用於內部程序,\n5/6用於伺服系統和ADC,\n11用於搖晃檢測,\n12用於觸摸鍵檢測,\n13用於Radio和DHT11/DHT22定時取值(共用),\n14用於OneNET和傾斜檢測(共用),\n其余端口與自定義事件共用。",bF.mpython_Timer_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",bF.mpython_bme280_hum_tem_pre_MESSAGE0="%1",bF.mpython_bme280_hum_tem_pre_TOOLTIP="氣壓單位Pa, 溫度單位攝氏度, 環境濕度單位%",bF.mpython_sway_xyz_MESSAGE0="%1 搖晃掌控板",bF.mpython_sway_xyz_TOOLTIP="掌控板正面朝上,觸摸鍵 'python' 靠近使用者,開始左右或前後搖晃掌控板",bF.mpython_init_bluetooth_MESSAGE0="初始化 藍牙名稱%1",bF.mpython_init_bluetooth_TOOLTIP="初始化 藍牙名稱",bF.mpython_OnOff_bluetooth_MESSAGE0="藍牙設備%1廣播",bF.mpython_OnOff_bluetooth_TOOLTIP="藍牙設備 開啟或關閉廣播",bF.mpython_HID_consumer_bluetooth_MESSAGE0="消費類設備%1 狀態%2",bF.mpython_HID_consumer_bluetooth_TOOLTIP="類比HID消費類設備的控制器,如藍牙遙控器",bF.mpython_HID_release_keyboard_bluetooth_MESSAGE0="鍵盤 釋放按鍵",bF.mpython_HID_release_keyboard_bluetooth_TOOLTIP="HID鍵盤設備",bF.mpython_HID_mouse_bluetooth_MESSAGE0="鼠標%1",bF.mpython_HID_mouse_bluetooth_TOOLTIP="鼠標設備",bF.mpython_HID_release_mouse_bluetooth_MESSAGE0="鼠標 釋放按鍵",bF.mpython_HID_release_mouse_bluetooth_TOOLTIP="鼠標設備",bF.mpython_HID_keyboard_bluetooth_MESSAGE0="鍵盤 按鍵%1",bF.mpython_HID_keyboard_bluetooth_TOOLTIP="鍵盤設備",bF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="HID設備按鍵 %1 組合按鍵%2",bF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="如果想使用多個按鍵組合指令,可以用“|”或運算",bF.mpython_HID_mouse_pointer_bluetooth_MESSAGE0="滑鼠 指標移動 x%2 y%1",bF.mpython_HID_mouse_pointer_bluetooth_TOOLTIP="鼠标坐标x,y轴的相对位移,范围-1023 ~ 1023",bF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="設備 按鍵 %1 組合按鍵%2",bF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="鍵盤設備",bF.mpython_HID_keyboard_part_bluetooth_MESSAGE0="鍵盤 组合設備%1",bF.mpython_HID_keyboard_part_bluetooth_TOOLTIP="如果想使用多個按鍵組合指令,可以用“|”或運算",bF.mpython_HID_keyboard_part_bluetooth_HELPURL="",bF.mpython_init_wifi_MESSAGE0="連接 Wi-Fi 名稱 %1 密碼 %2",bF.mpython_init_wifi_TOOLTIP="讓掌控板接入Wi-Fi環境",bF.MPYTHON_WIFI_IFCONFIG_MESSAGE0="Wi-Fi 設置固定IP %1 IP 地址 %2 子網掩碼 %3 默認網關 %4 DNS %5",bF.MPYTHON_WIFI_IFCONFIG_TOOLTIP="",bF.MPYTHON_WIFI_IFCONFIG_HELPURL="",bF.mpython_dis_WiFi_MESSAGE0="斷開 Wi-Fi 連接",bF.mpython_dis_WiFi_TOOLTIP="",bF.MPYTHON_ENABLE_APWIFI_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",bF.MPYTHON_ENABLE_APWIFI_TOOLTIP="密碼可以為空,或者8位以上的字母或數字。\nAP模式僅用於掌控板之間的相互通信,不可以作為熱點,令其它設備上網。",bF.MPYTHON_ENABLE_APWIFI_MESSAGE0="開啟 AP模式 名稱 %1 密碼 %2 信道 %3",bF.mpython_disable_APWiFi_MESSAGE0="關閉 AP模式",bF.mpython_disable_APWiFi_TOOLTIP="",bF.mpython_ntptime_settime_MESSAGE0="同步網絡時間 時區 %1 授時服務器 %2",bF.mpython_ntptime_settime_TOOLTIP="NTP時間同步是一種時間同步網絡技術",bF.mpython_wifi_get_date_MESSAGE0="獲取當前日期",bF.mpython_wifi_get_date_TOOLTIP="獲取當前日期字符串 示例:2020年12月12日",bF.mpython_wifi_get_time_MESSAGE0="獲取當前時間",bF.mpython_wifi_get_time_TOOLTIP="獲取當前時間字符串",bF.mpython_ntptime_timezone_E1="東1區",bF.mpython_ntptime_timezone_E2="東2區",bF.mpython_ntptime_timezone_E3="東3區",bF.mpython_ntptime_timezone_E4="東4區",bF.mpython_ntptime_timezone_E5="東5區",bF.mpython_ntptime_timezone_E6="東6區",bF.mpython_ntptime_timezone_E7="東7區",bF.mpython_ntptime_timezone_E8="東8區",bF.mpython_ntptime_timezone_E9="東9區",bF.mpython_ntptime_timezone_E10="東10區",bF.mpython_ntptime_timezone_E11="東11區",bF.mpython_ntptime_timezone_E12="東12區",bF.mpython_ntptime_timezone_0="中時區",bF.mpython_ntptime_timezone_W1="西1區",bF.mpython_ntptime_timezone_W2="西2區",bF.mpython_ntptime_timezone_W3="西3區",bF.mpython_ntptime_timezone_W4="西4區",bF.mpython_ntptime_timezone_W5="西5區",bF.mpython_ntptime_timezone_W6="西6區",bF.mpython_ntptime_timezone_W7="西7區",bF.mpython_ntptime_timezone_W8="西8區",bF.mpython_ntptime_timezone_W9="西9區",bF.mpython_ntptime_timezone_W10="西10區",bF.mpython_ntptime_timezone_W11="西11區",bF.mpython_ntptime_timezone_W12="西12區",bF.FILE_TO_LIST_HELPURL="",bF.FILE_TO_LIST_TOOLTIP="讀出指定路徑的文本文件內容(僅限utf-8格式),並轉為列表形式,以分隔符分隔。",bF.FILE_TO_LIST_MESSAGE0="讀取文本文件 %1 為列表 ,以 %2 分隔",bF.FILE_TO_BIN_HELPURL="",bF.FILE_TO_BIN_TOOLTIP="以二進制格式讀出指定路徑的文件內容。",bF.FILE_TO_BIN_MESSAGE0="讀取文件 %1 的二進制內容",bF.MPYTHON_INIT_FILE_HELPURL="",bF.MPYTHON_INIT_FILE_TOOLTIP="初始化一個文本文件,如果文件不存在則創建文件,如果文件存在則清空內容。",bF.MPYTHON_INIT_FILE_MESSAGE0="初始化文本文件 %1",bF.MPYTHON_WRITE_FILE_HELPURL="",bF.MPYTHON_WRITE_FILE_TOOLTIP="向指定路徑的文本文件寫入內容,如果文件不存在則創建文件。",bF.MPYTHON_WRITE_FILE_MESSAGE0="向文本文件 %1 寫入內容 %2 ,以 %3 分隔",bF.MPYTHON_SDCARD_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",bF.MPYTHON_SDCARD_INIT_TOOLTIP="sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\n須確保 SPI 總線的引腳與 micro SD 卡物理連接正確,並預先使用 FAT 或 FAT32 文件系統格式化 micro SD 卡。",bF.MPYTHON_SDCARD_INIT_MESSAGE0="初始化 SD 卡",bF.MPYTHON_SDCARD_MOUNT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",bF.MPYTHON_SDCARD_MOUNT_TOOLTIP="掛載 SDCard 到指定路徑。",bF.MPYTHON_SDCARD_MOUNT_MESSAGE0="掛載 SD 卡到路徑 %1",bF.MPYTHON_ENTER="回車",bF.MPYTHON_COMMA="逗號",bF.MPYTHON_SEMICOLON="分號",bF.MPYTHON_SPACE="空格",bF.mpython_wifi_clock_MESSAGE0="Wi-Fi 模擬時鐘 x %1 y %2 半徑 %3",bF.mpython_wifi_clock_TOOLTIP="需連接 Wi-Fi 使用",bF.mpython_def_clock_MESSAGE0="初始化時鐘%1 x %2 y %3 半徑 %4",bF.mpython_def_clock_TOOLTIP="",bF.mpython_settime_clock_MESSAGE0="時鐘%1 讀取時間",bF.mpython_settime_clock_TOOLTIP="",bF.mpython_draw_clear_clock_MESSAGE0="%1 時鐘 %2",bF.mpython_draw_clear_clock_TOOLTIP="",bF.mpython_tinywebio_start_MESSAGE0="啟動 TinyWebIO 服務 %1",bF.mpython_tinywebio_start_TOOLTIP="啟動該服務需連接Wi-Fi,TinyWebIO服務為App Inventor應用提供遠程控制接口的掌控板工具包",bF.mpython_tinywebio_client_setup_HELPURL="",bF.mpython_tinywebio_client_setup_TOOLTIP="向服務器發布的數據項(逗號分隔)\nbuttona/b 按鍵狀態\ntouchpadp/y/t/h/o/n 觸摸按鍵值\nlight 光線值\nsound 聲音值\naccelerometer 三軸加速度值\nid 掌控板標識\ntime 時間戳\npind 數字IO引腳\npina 模擬IO引腳\n----------\n從服務器讀取的數據項(逗號分隔)\nrgb0/1/2 RGB燈珠\noled OLED顯示屏\nmusic 音樂\nservo 舵機\npind 數字IO引腳\npina 模擬IO引腳",bF.mpython_tinywebio_client_setup_MESSAGE0="設置 TinyWebIO 客戶端參數 %1 TinyWebDB服務器地址 %2 向服務器發布的數據項 %3 從服務器讀取的數據項 %4 存取服務器的時間間隔(ms) %5",bF.mpython_tinywebio_client_action_HELPURL="",bF.mpython_tinywebio_client_action_TOOLTIP="",bF.mpython_tinywebio_client_action_MESSAGE0="%1 TinyWebIO 客戶端",bF.mpython_tinywebio_client_action_start="啟動",bF.mpython_tinywebio_client_action_stop="停止",bF.MPYTHON_CUSTOM_CODE_HELPURL="",bF.MPYTHON_CUSTOM_CODE_TOOLTIP="",bF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定義代碼 %2 %3",bF.MPYTHON_CUSTOM_VALUE_MESSAGE0="自定義返回值 %1",bF.MPYTHON_CUSTOM_TYPE_IMPORT="置頂",bF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",bF.mpython_servo_angle0_MESSAGE0="設置舵機 %1 角度為 %2",bF.mpython_servo_angle_MESSAGE0="設置舵機 %1 角度為 %2 脈寬從 %3 到 %4 最大角度 %5",bF.mpython_servo_angle_TOOLTIP="電源線Vcc(紅色)連接拓展板電源口V,地線GND(棕色)連接拓展板地線口G,控制信號線(橙色)連接所選的拓展板引腳",bF.mpython_dh11_hum_tem_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",bF.mpython_dh11_hum_tem_MESSAGE0="DHT11 %1 %2",bF.mpython_dh11_hum_tem_TOOLTIP="DHT11上的 + 連接拓展板的電源口 V ,- 連接拓展板的地線口 G ,out 連接拓展板的引腳 0(即選引腳)",bF.MPYTHON_DH22_HUM_TEM_MESSAGE0="DHT22 %1 %2",bF.MPYTHON_DH22_HUM_TEM_TOOLTIP="",bF.MPYTHON_DH22_HUM_TEM_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",bF.mpython_music_note_MESSAGE0="音符 %1 %2 : %3",bF.mpython_music_note_TOOLTIP="音符,如C4:4",bF.mpython_return_list_MESSAGE0="定義列表 %1 = %2",bF.mpython_return_list_TOOLTIP="",bF.mpython_display_Show_MESSAGE0="OLED 顯示生效",bF.mpython_display_Show_TOOLTIP="",bF.mpython_display_DispChar_MESSAGE0="顯示文本 x %1 y %2 內容 %3 模式 %4 %5",bF.mpython_display_DispChar_TOOLTIP="OLED分辨率128x64",bF.mpython_display_DispChar_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",bF.mpython_display_DispChar_5lines_MESSAGE0="OLED 第%1 行顯示 %2 模式 %3 %4",bF.mpython_display_DispChar_5lines_TOOLTIP="OLED分辨率128x64",bF.mpython_line1="1",bF.mpython_line2="2",bF.mpython_line3="3",bF.mpython_line4="4",bF.mpython_line5="5",bF.MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0="OLED 清除第 %1 行",bF.MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP="OLED分辨率128x64",bF.MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL="";bF.mpython_display_fill_0="清空",bF.mpython_display_fill_1="全亮",bF.mpython_display_invert_0="黑底",bF.mpython_display_invert_1="白底",bF.mpython_display_show="生效",bF.mpython_display_fill_MESSAGE0="OLED 顯示 %1",bF.mpython_display_fill_TOOLTIP="",bF.mpython_display_pixel_0="暗",bF.mpython_display_pixel_1="亮",bF.mpython_display_pixel_MESSAGE0="描點 x %1 y %2 為 %3",bF.mpython_display_pixel_TOOLTIP="",bF.mpython_display_hline_0="擦除",bF.mpython_display_hline_1="繪制",bF.mpython_display_hline_MESSAGE0="%1 水平線%2 x%3 y%4 長度%5",bF.mpython_display_hline_TOOLTIP="",bF.mpython_ProgressBar_MESSAGE0="進度條%1 x%2 y%3 寬%4 高%5 進度%6",bF.mpython_ProgressBar_TOOLTIP="",bF.mpython_stripBar_MESSAGE0="柱狀條%1 x%2 y%3 寬%4 高%5 進度%6",bF.mpython_stripBar_TOOLTIP="",bF.MPYTHON_QR_CODE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",bF.MPYTHON_QR_CODE_TOOLTIP="",bF.MPYTHON_QR_CODE_MESSAGE0="在坐標 x %1 y %2 繪制二維碼 %3 尺寸 %4",bF.MPYTHON_DISPLAY_MODE_0="擦除",bF.MPYTHON_DISPLAY_MODE_1="繪制",bF.MPYTHON_DISPLAY_HOLLOW="空心",bF.MPYTHON_DISPLAY_SOLID="實心",bF.MPYTHON_DISPLAY_HVLINE_MESSAGE0="%1 %2 線 %3 x %4 y %5 長度 %6",bF.MPYTHON_DISPLAY_HVLINE_TOOLTIP="",bF.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0="%1 %2 矩形 %3 x %4 y %5 寬 %6 高 %7",bF.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP="",bF.MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0="%1 %2 圓 %3 x %4 y %5 半徑 %6",bF.MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP="",bF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0="%1 %2 三角 %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",bF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP="",bF.MPYTHON_RGB_0="0 #",bF.MPYTHON_RGB_1="1 #",bF.MPYTHON_RGB_2="2 #",bF.MPYTHON_RGB_ALL="所有",bF.MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0="設置 %1 RGB 燈顏色為 %2",bF.MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0="設置 %1 RGB 燈顏色為 R %2 G %3 B %4",bF.MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.MPYTHON_OFF_RGB_LIST_MESSAGE0="關閉 %1 RGB 燈",bF.MPYTHON_OFF_RGB_LIST_TOOLTIP="",bF.MPYTHON_MUSIC_PLAY_MESSAGE0="播放音樂 %1 引腳 %2",bF.MPYTHON_MUSIC_PLAY_TOOLTIP="播放內置的音樂",bF.MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0="播放音樂 %1 直到完成 , 引腳 %2",bF.MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP="播放內置的音樂",bF.MPYTHON_MUSIC_GE_CHANG_ZU_GUO="歌唱祖國",bF.MPYTHON_MUSIC_DONG_FANG_HONG="東方紅",bF.MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE="彩雲追月",bF.MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI="走進新時代",bF.MPYTHON_MUSIC_MO_LI_HUA="茉莉花",bF.MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO="沂蒙山小調",bF.mpython_display_vline_MESSAGE0="%1 垂直線%2 x%3 y%4 長度%5",bF.mpython_display_vline_TOOLTIP="",bF.mpython_display_line_MESSAGE0="%1 線%2 x1 %3 y1 %4 到 x2 %5 y2 %6",bF.mpython_display_line_TOOLTIP="",bF.mpython_display_rect_MESSAGE0="%1 邊框%2 x %3 y %4 寬 %5 高 %6",bF.mpython_display_rect_TOOLTIP="",bF.mpython_display_RoundRect_MESSAGE0="%1 弧角邊框%2 x %3 y %4 寬 %5 高 %6 半徑%7",bF.mpython_display_RoundRect_TOOLTIP="",bF.mpython_display_fill_rect_MESSAGE0="%1 矩形%2 x %3 y %4 寬 %5 高 %6 ",bF.mpython_display_fill_rect_TOOLTIP="",bF.mpython_display_fill_circle_MESSAGE0="%1 實心圓%2 x %3 y %4 半徑 %5",bF.mpython_display_fill_circle_TOOLTIP="",bF.mpython_display_circle_MESSAGE0="%1 空心圓%2 x %3 y %4 半徑 %5",bF.mpython_display_circle_TOOLTIP="",bF.mpython_display_triangle_MESSAGE0="%1 空心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",bF.mpython_display_triangle_TOOLTIP="",bF.mpython_display_fill_triangle_MESSAGE0="%1 實心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",bF.mpython_display_fill_triangle_TOOLTIP="",bF.mpython_display_Bitmap_MESSAGE0="%1 圖像 x%2 y%3 寬%4 高%5 16進制圖像數據 %6",bF.mpython_display_Bitmap_TOOLTIP="將16進制圖像數據顯示在OLED屏的指定位置",bF.MPYTHON_GET_PBM_DATA_MESSAGE0="獲取內置圖像 %1 模式%2",bF.MPYTHON_GET_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的單色圖像文件,獲取指定路徑的圖像文件數據,返回一個元組對象。",bF.MPYTHON_GET_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",bF.MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0="獲取自定義圖像 %1 模式%2",bF.MPYTHON_DISPLAY_PBM_DATA_MESSAGE0="在坐標 x %1 y %2 顯示圖像 %3",bF.MPYTHON_DISPLAY_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的單色圖像文件",bF.MPYTHON_DISPLAY_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",bF.MPYTHON_BITMAP_FROM_FILE_MESSAGE0="在坐標 x %1 y %2 顯示圖像 %5 寬 %3 高 %4",bF.MPYTHON_BITMAP_FROM_FILE_TOOLTIP="",bF.MPYTHON_BITMAP_FROM_FILE_HELPURL="",bF.mpython_horizontal="水平",bF.mpython_vertical="垂直",bF.mpython_display_FrameBuffer_MESSAGE0="構建幀 列表 %1 長 %2 寬 %3 掃描模式 %4",bF.mpython_display_FrameBuffer_TOOLTIP="用圖像取模後數據的列表 ,創建128x64的幀緩存區,以儲存圖片幀",bF.MPYTHON_FONT_DIGIFACE_11="仿數碼管 11像素",bF.MPYTHON_FONT_DIGIFACE_16="仿數碼管 16像素",bF.MPYTHON_FONT_DIGIFACE_21="仿數碼管 21像素",bF.MPYTHON_FONT_DIGIFACE_30="仿數碼管 30像素",bF.MPYTHON_FONT_DIGIFACE_44="仿數碼管 44像素",bF.MPYTHON_FONT_DIGIFACE_IT_30="仿數碼管 斜體 30像素",bF.MPYTHON_FONT_DIGIFACE_IT_42="仿數碼管 斜體 42像素",bF.MPYTHON_FONT_DVSM_12="DejaVu Sans Mono 12像素",bF.MPYTHON_FONT_DVSM_16="DejaVu Sans Mono 16像素",bF.MPYTHON_FONT_DVSM_21="DejaVu Sans Mono 21像素",bF.MPYTHON_FONT_DVSMB_12="DejaVu Sans Mono 黑體 12像素",bF.MPYTHON_FONT_DVSMB_16="DejaVu Sans Mono 黑體 16像素",bF.MPYTHON_FONT_DVSMB_21="DejaVu Sans Mono 黑體 21像素",bF.MPYTHON_FONT_WRAP="自動換行",bF.MPYTHON_FONT_NO_WRAP="不換行",bF.MPYTHON_FACE_1="心形",bF.MPYTHON_FACE_2="心形(小)",bF.MPYTHON_FACE_3="高興",bF.MPYTHON_FACE_4="笑臉",bF.MPYTHON_FACE_5="傷心",bF.MPYTHON_FACE_6="困惑",bF.MPYTHON_FACE_7="生氣",bF.MPYTHON_FACE_8="睡著",bF.MPYTHON_FACE_9="驚訝",bF.MPYTHON_FACE_10="愚蠢",bF.MPYTHON_FACE_11="極妙",bF.MPYTHON_FACE_12="無聊",bF.MPYTHON_FACE_ROCK="石頭",bF.MPYTHON_FACE_PAPER="布",bF.MPYTHON_FACE_SCISSORS="剪刀",bF.MPYTHON_FACE_ROCK_S="石頭(小)",bF.MPYTHON_FACE_PAPER_S="布(小)",bF.MPYTHON_FACE_SCISSORS_S="剪刀(小)",bF.MPYTHON_DISPLAY_FONT_MESSAGE0="在坐標 x %1 y %2 顯示 %3 以 %4 字體 %5",bF.MPYTHON_DISPLAY_FONT_TOOLTIP="",bF.MPYTHON_DISPLAY_FONT_HELPURL="",bF.mpython_front="正向",bF.mpython_reverse="反轉",bF.mpython_display_blit_MESSAGE0="顯示幀 坐標x %1 y %2",bF.mpython_display_blit_TOOLTIP="",bF.mpython_front_reverse_MESSAGE0="像素點bit %1",bF.mpython_front_reverse_TOOLTIP="用於顯示之前",bF.mpython_images_append_MESSAGE0="動圖顯示 幀數%1 周期%2 長%3 寬%4",bF.mpython_images_append_TOOLTIP="上傳至掌控板的pbm圖片需命名為IMAGE.數字,後綴為pbm。如:IMAGE.1.pbm。幀數為7則數字為1至7",bF.mpython_button_is_pressed_MESSAGE0="按鍵%1 被按下",bF.mpython_button_is_pressed_TOOLTIP="",bF.mpython_button_both_pressed_MESSAGE0="AB按鍵都按下",bF.mpython_button_both_pressed_TOOLTIP="",bF.mpython_touchPad_value_MESSAGE0="按鍵%1 被觸摸",bF.mpython_touchPad_value_TOOLTIP="",bF.mpython_touchPad_value_num_MESSAGE0="按鍵%1 觸摸值",bF.mpython_touchPad_value_num_TOOLTIP="",bF.mpython_read_digital_MESSAGE0="讀取引腳 %1 數字值",bF.mpython_read_digital_TOOLTIP="",bF.mpython_read_DS18B20_MESSAGE0="DS18B20 防水溫度感測器 引脚 %1",bF.mpython_read_DS18B20_TOOLTIP="",bF.mpython_read_DS18B20_HELPURL="http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",bF.mpython_set_digital_MESSAGE0="設置引腳 %2 數字值為 %1",bF.mpython_set_digital_TOOLTIP="",bF.mpython_read_analog_MESSAGE0="讀取引腳 %1 模擬值",bF.mpython_read_analog_TOOLTIP="",bF.mpython_set_analog_MESSAGE0="設置引腳 %2 模擬值(PWM)為 %1",bF.mpython_set_analog_TOOLTIP="模擬輸出是通過IO引腳輸出脈寬調制信號,輸出指定的電壓值,簡稱PWM。",bF.mpython_set_RGB_MESSAGE0="設置 %1 號 RGB 燈顏色為 R %2 G %3 B %4",bF.mpython_set_RGB_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.mpython_set_RGB_color_MESSAGE0="設置 %1 號 RGB 燈顏色為 %2",bF.mpython_set_RGB_color_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.mpython_set_RGB_all_MESSAGE0="設置所有 RGB 燈顏色為 R %1 G %2 B %3",bF.mpython_set_RGB_all_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.mpython_set_RGB_color_all_MESSAGE0="設置所有 RGB 燈顏色為 %1",bF.mpython_set_RGB_color_all_TOOLTIP="原生亮度的 1/30 能較好顯示色差",bF.mpython_fresh_RGB_MESSAGE0="RGB 燈設置生效",bF.mpython_fresh_RGB_TOOLTIP="",bF.mpython_off_RGB_MESSAGE0="關閉 RGB 燈",bF.mpython_off_RGB_TOOLTIP="",bF.mpython_buzz_state_MESSAGE0="停止播放音樂",bF.mpython_buzz_state_TOOLTIP="",bF.mpython_buzz_freq_MESSAGE0="播放連續音調 %1 引脚 %2",bF.mpython_buzz_freq_TOOLTIP="",bF.mpython_buzz_tone_MESSAGE0="播放音調 %1",bF.mpython_buzz_tone_TOOLTIP="",bF.MPYTHON_MUSIC_TONE_TEMPO_HELPURL="",bF.MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP="默認是掌控板的P6引脚",bF.MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0="播放音符 %1 引脚 %2",bF.MPYTHON_MUSIC_TONE_HELPURL="",bF.MPYTHON_MUSIC_TONE_TOOLTIP="",bF.MPYTHON_MUSIC_TONE_MESSAGE0="音調 %1",bF.MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL="",bF.MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP="",bF.MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0="音符 %1 節拍 %2",bF.MPYTHON_MUSIC_TICK_HELPURL="",bF.MPYTHON_MUSIC_TICK_TOOLTIP="",bF.MPYTHON_MUSIC_TICK_MESSAGE0="節拍 %1",bF.MPYTHON_4_LINES_HELPURL="",bF.MPYTHON_4_LINES_TOOLTIP="",bF.MPYTHON_4_LINES_MESSAGE0="%1",bF.NUMBER_1="1",bF.NUMBER_1_2="1/2",bF.NUMBER_1_4="1/4",bF.NUMBER_2="2",bF.NUMBER_4="4",bF.mpython_read_sound_MESSAGE0="聲音值",bF.mpython_read_sound_TOOLTIP="",bF.mpython_read_light_MESSAGE0="光線值",bF.mpython_read_light_TOOLTIP="",bF.mpython_accelerometer_get_MESSAGE0="%1 軸加速度",bF.mpython_accelerometer_get_TOOLTIP="",bF.mpython_accelerometer_get_z_MESSAGE0="z軸加速度",bF.mpython_accelerometer_get_z_TOOLTIP="",bF.mpython_accelerometer_get_y_MESSAGE0="y軸加速度",bF.mpython_accelerometer_get_y_TOOLTIP="",bF.mpython_accelerometer_get_x_MESSAGE0="x軸加速度",bF.mpython_accelerometer_get_x_TOOLTIP="",bF.MPYTHON_ACCELEROMETER_RANGE_2G="±2g",bF.MPYTHON_ACCELEROMETER_RANGE_4G="±4g",bF.MPYTHON_ACCELEROMETER_RANGE_8G="±8g",bF.MPYTHON_ACCELEROMETER_RANGE_16G="±16g",bF.MPYTHON_ACCELEROMETER_RES_10_BIT="10bits",bF.MPYTHON_ACCELEROMETER_RES_12_BIT="12bits",bF.MPYTHON_ACCELEROMETER_RES_14_BIT="14bits",bF.MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP="設置加速度範圍,默認為 ±2g。",bF.MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0="設置加速度範圍為 %1",bF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP="設置加速度分辨率,默認為 10bits。",bF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0="設置加速度分辨率為 %1",bF.MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP="校準加速度計的3個軸(x,y,z)的加速值偏差。\n一般情況下無需校準,只有遇到加速度偏差較大時才要校準。\n x , y , z 為調整偏差值,可修正範圍為 ±1g。\n註意:校準數據斷電後不會保存。",bF.MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0="校準加速度值 %1 X軸偏差 %2 Y軸偏差 %3 Z軸偏差 %4",bF.MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP="僅適用於掌控板2.0及以上版本",bF.MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0="%1 軸 磁力",bF.MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP="僅適用於掌控板2.0及以上版本",bF.MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0="指南針方向",bF.MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP="僅適用於掌控板2.0及以上版本",bF.MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0="校準指南針",bF.MPYTHON_MAGNETIC_PEELING_TOOLTIP="僅適用於掌控板2.0及以上版本",bF.MPYTHON_MAGNETIC_PEELING_MESSAGE0="去除當前環境磁場",bF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP="僅適用於掌控板2.0及以上版本",bF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0="磁場強度",bF.MPYTHON_TILT_ANGLE_HELPURL="",bF.MPYTHON_TILT_ANGLE_TOOLTIP="",bF.MPYTHON_TILT_ANGLE_MESSAGE0="%1 軸傾斜角",bF.mpython_random_choice_MESSAGE0="返回隨機項%1",bF.mpython_random_choice_TOOLTIP="以String格式,返回列表或字符串中的隨機項",bF.mpython_i2c_init_MESSAGE0="初始化I2C 波特率%1",bF.mpython_i2c_init_TOOLTIP="SCL引腳19,SDA引腳20,與內部的OLED和加速度傳感器共享I2C總線",bF.MACHINE_TIME_PULSE_US_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",bF.MACHINE_TIME_PULSE_US_MESSAGE0="%1 外部 %2 電平持續時間(微秒)",bF.MACHINE_TIME_PULSE_US_TOOLTIP="",bF.BYTES="字節",bF.MPYTHON_I2C_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",bF.MPYTHON_I2C_INIT_MESSAGE0="初始化i2c 速率%1",bF.MPYTHON_I2C_INIT_TOOLTIP="",bF.MPYTHON_I2C_DEV_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",bF.MPYTHON_I2C_DEV_INIT_MESSAGE0="初始化%1 SCL %2 SDA %3 速率 %4",bF.MPYTHON_I2C_DEV_INIT_TOOLTIP="",bF.MPYTHON_I2C_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",bF.MPYTHON_I2C_SCAN_MESSAGE0="%1 掃描地址",bF.MPYTHON_I2C_SCAN_TOOLTIP="返回壹個數組對象",bF.MPYTHON_I2C_DEINIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",bF.MPYTHON_I2C_DEINIT_MESSAGE0="關閉%1總線",bF.MPYTHON_I2C_DEINIT_TOOLTIP="",bF.MPYTHON_I2C_WRITETO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",bF.MPYTHON_I2C_WRITETO_MESSAGE0="從%1 %5 地址%2 寫入%3 停止位%4",bF.MPYTHON_I2C_WRITETO_TOOLTIP="地址:Number\n寫入:Number、String",bF.MPYTHON_I2C_READFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",bF.MPYTHON_I2C_READFROM_MESSAGE0="從%1 %5 地址%2 讀取 字節數%3 停止位%4",bF.MPYTHON_I2C_READFROM_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",bF.MPYTHON_I2C_READFROM_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",bF.MPYTHON_I2C_READFROM_INTO_MESSAGE0="從%1 %6 地址%2 讀入緩存區%3 字節數%4 停止位%5",bF.MPYTHON_I2C_READFROM_INTO_TOOLTIP="",bF.MPYTHON_I2C_WRITETO_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",bF.MPYTHON_I2C_WRITETO_MEN_MESSAGE0="從%1 %5 地址%2 寄存器%4 寫入%3",bF.MPYTHON_I2C_WRITETO_MEN_TOOLTIP="地址:Number\n寫入:Number、String",bF.MPYTHON_I2C_READFROM_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",bF.MPYTHON_I2C_READFROM_MEN_MESSAGE0="從%1 %5 地址%2 寄存器%4 讀取 字節數%3",bF.MPYTHON_I2C_READFROM_MEN_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",bF.MPYTHON_I2C_READFROM_MEN_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",bF.MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0="從%1 %6 地址%2 寄存器%5 讀入緩存區%3 字節數%4",bF.MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",bF.mpython_print_MESSAGE0="調試輸出 %1",bF.mpython_print_TOOLTIP="通過串口調試,輸出字符串",bF.MPYTHON_PRINT_TO_CHART_TOOLTIP="",bF.MPYTHON_PRINT_TO_CHART_EMPTY_TITLE="打印數據到圖表",bF.MPYTHON_PRINT_TO_CHART_INPUT_WITH="打印數據到圖表",bF.MPYTHON_PRINT_TO_CHART_ITEM_TITLE="數據",bF.MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP="",bF.MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD="數據內容",bF.MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP="",bF.MPYTHON_INIT_CHART_TOOLTIP="",bF.MPYTHON_INIT_CHART_EMPTY_TITLE="初始化圖表列標題",bF.MPYTHON_INIT_CHART_INPUT_WITH="初始化圖表列標題",bF.MPYTHON_INIT_CHART_ITEM_TITLE="標題",bF.MPYTHON_INIT_CHART_ITEM_TOOLTIP="",bF.MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD="數據列標題",bF.MPYTHON_INIT_CHART_CONTAINER_TOOLTIP="",bF.MPYTHON_MS="毫秒",bF.MPYTHON_US="微秒",bF.MPYTHON_TIME_DIFFERENCE_HELPURL="",bF.MPYTHON_TIME_DIFFERENCE_MESSAGE0="返回運行時間差 開始時間 %1 結束時間 %2",bF.MPYTHON_TIME_DIFFERENCE_TOOLTIP="测量连续调用ticks_ms()、ticks_us()间的周期",bF.MPYTHON_TYPE_HELPURL="",bF.MPYTHON_TYPE_MESSAGE0="值 %1 的類型",bF.MPYTHON_TYPE_TOOLTIP="",bF.MPYTHON_TYPE_IS_HELPURL="",bF.MPYTHON_TYPE_IS_MESSAGE0="值 %1 的類型為 %2",bF.MPYTHON_TYPE_IS_TOOLTIP="",bF.MPYTHON_EVAL_HELPURL="",bF.MPYTHON_EVAL_MESSAGE0="計算表達式 %1 的結果",bF.MPYTHON_EVAL_TOOLTIP="計算字符串表達式,並返回結果",bF.MPYTHON_RETURN_HELPURL="",bF.MPYTHON_RETURN_MESSAGE0="return %1",bF.MPYTHON_RETURN_TOOLTIP="",bF.MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL="",bF.MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0="拓展板 電機速度 %1",bF.MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP="",bF.MPYTHON_M1M2_LED_ON_HELPURL="",bF.MPYTHON_M1M2_LED_ON_MESSAGE0="拓展板 設燈 %1 亮度 %2",bF.MPYTHON_M1M2_LED_ON_TOOLTIP="",bF.MPYTHON_M1M2_LED_OFF_HELPURL="",bF.MPYTHON_M1M2_LED_OFF_MESSAGE0="拓展板 關燈 %1",bF.MPYTHON_M1M2_LED_OFF_TOOLTIP="",bF.MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL="",bF.MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0="I2C數字光綫",bF.MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP="",bF.MPYTHON_BLUEBIT_GET_COLOR_HELPURL="",bF.MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0="I2C RGB 顔色 %1",bF.MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP="",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL="",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0="I2C RGB 顔色",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP="以列表形式返回",bF.MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL="",bF.MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0="I2C HSV 顔色 %1",bF.MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP="色調(H),飽和度(S),明度(V)",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL="",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0="I2C HSV 顔色",bF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP="色調(H),飽和度(S),明度(V)",bF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0="I2C力感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0="I2C电流感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0="I2C電壓感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0="I2C磁場感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0="I2C PH感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0="I2C電導率感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0="I2C氣壓感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL="",bF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0="I2C光電門感測器 撥碼 %1",bF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",bF.MPYTHON_WIFI_ALL_CONFIG_HELPURL="",bF.MPYTHON_WIFI_ALL_CONFIG_MESSAGE0="WI-FI配置信息",bF.MPYTHON_WIFI_ALL_CONFIG_TOOLTIP="以元組形式返回所有wifi配置信息",bF.MPYTHON_WIFI_ISCONNECTED_HELPURL="",bF.MPYTHON_WIFI_ISCONNECTED_MESSAGE0="已連接到 WI-FI",bF.MPYTHON_WIFI_ISCONNECTED_TOOLTIP="",bF.MPYTHON_INIT_ASSISTANT_WIFI_HELPURL="",bF.MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0="Wi-Fi連接 語音助手 Wi-Fi 名稱 %1 密碼 %2",bF.MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP="掌控板通過串口把WIF傳給語音助手",bF.MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL="",bF.MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP="需要先在檔案系統將文件上傳到板",bF.MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0="讀取 語音助手 文字檔 %1",bF.MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL="",bF.MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0="數碼管顯示 %1",bF.MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP="-999~9999",bF.MPYTHON_MACHINE_RESET_HELPURL="",bF.MPYTHON_MACHINE_RESET_MESSAGE0="復位",bF.MPYTHON_MACHINE_RESET_TOOLTIP="與按下外部RESET按鍵效果一樣",bF.MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL="",bF.MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0="清空數碼管",bF.MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP="",bF.MPYTHON_MUSIC_PIN_P6="默認",bF.MPYTHON_MUSIC_PIN_P6_HELPURL="",bF.MPYTHON_MUSIC_PIN_P6_MESSAGE0="%1",bF.MPYTHON_MUSIC_PIN_P6_TOOLTIP="",bF.MPYTHON_SLEEP_MESSAGE0="等待 %1 %2",bF.MPYTHON_SLEEP_TOOLTIP="在進行下一個命令前,等待設定的時間。\n1秒(s) = 1,000毫秒(ms)\n1秒(s) = 1,000,000微秒(μs)\n毫秒,符號ms(millisecond)\n微秒,符號μs(microsecond)",bF.MICROBIT_MICROBIT_RUNNING_TIME_MESSAGE0="運行時間",bF.MICROBIT_MICROBIT_RUNNING_TIME_TOOLTIP="獲取開機或復位後的運行時間(毫秒)。",bF.MICROBIT_MICROBIT_RUNNING_TIME_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.running_time",bF.MICROBIT_MICROBIT_TEMPERATURE_MESSAGE0="溫度",bF.MICROBIT_MICROBIT_TEMPERATURE_TOOLTIP="獲取 micro:bit 的溫度(℃)。",bF.MICROBIT_MICROBIT_TEMPERATURE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.temperature",bF.MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0="播放音樂 %1 等待 %2 循環 %3 引脚 %4",bF.MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP="播放內置的音樂,可以設置等待模式和循環播放。",bF.MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",bF.MICROBIT_MUSIC_PITCH_MESSAGE0="播放音調 %1 %2 延時 %3 毫秒 引脚 %4",bF.MICROBIT_MUSIC_PITCH_TOOLTIP="在設定的時間長度裏播放音調。",bF.MICROBIT_MUSIC_PITCH_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",bF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0="引脚 %5 播放音符列表 %1 等待 %2 %3 循環 %4",bF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP="播放音符列表,如C4:4、G4:8等,音符為字符串形式。默認是掌控板的P6引脚",bF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",bF.MICROBIT_MUSIC_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",bF.MICROBIT_MUSIC_RESET_MESSAGE0="恢復音樂設置",bF.MICROBIT_MUSIC_RESET_TOOLTIP="將所有音樂設置 (當前節拍, 音階和周期) 恢復成默認值。",bF.MICROBIT_MUSIC_STOP_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",bF.MICROBIT_MUSIC_STOP_MESSAGE0="停止播放音樂 引脚 %1",bF.MICROBIT_MUSIC_STOP_TOOLTIP="默認是掌控板的P6引脚",bF.MICROBIT_MUSIC_SET_TEMPO_MESSAGE0="設置每一拍等同 %1 分音符,每分鐘節拍數 %2",bF.MICROBIT_MUSIC_SET_TEMPO_TOOLTIP="設置回放速度 (節拍)。一定數量的滴答代表一拍,每拍每分鐘播放次數 (BPM 每分鐘節拍)。",bF.MICROBIT_MUSIC_SET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",bF.MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0="設置播放速度為 %1 倍",bF.MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP="4分音符為1拍,每分鐘節拍數默認120,為1倍的播放速度",bF.MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",bF.MICROBIT_MUSIC_GET_TEMPO_MESSAGE0="獲取當前節拍",bF.MICROBIT_MUSIC_GET_TEMPO_TOOLTIP="獲取當前節拍: 每節拍滴答數, 每分鐘節拍 (BPM)。",bF.MICROBIT_MUSIC_GET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",bF.MICROBIT_NEOPIXEL_INITIALISE_MESSAGE0="使用 引腳 %1 控制, neopixel 彩燈數 %2 ",bF.MICROBIT_NEOPIXEL_INITIALISE_TOOLTIP="控制 neopixels 彩燈。需要設定 neopixels 彩燈數量和控制腳。",bF.MICROBIT_NEOPIXEL_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",bF.MICROBIT_NEOPIXEL_CLEAR_MESSAGE0="清除 neopixels 彩燈 %1",bF.MICROBIT_NEOPIXEL_CLEAR_TOOLTIP="清除所有 neopixels 彩燈",bF.MICROBIT_NEOPIXEL_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",bF.MICROBIT_NEOPIXEL_SHOW_MESSAGE0="顯示 neopixels 彩燈 %1",bF.MICROBIT_NEOPIXEL_SHOW_TOOLTIP="顯示 / 更新全部 neopixels 彩燈。",bF.MICROBIT_NEOPIXEL_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",bF.MICROBIT_NEOPIXEL_SET_MESSAGE0="neopixels 彩燈控制 %1 設置位置 %2 紅色 %3 綠色 %4 藍色 %5",bF.MICROBIT_NEOPIXEL_SET_TOOLTIP="更新指定的 neopixel 彩燈的紅、綠、藍 (RGB) 顏色",bF.MICROBIT_NEOPIXEL_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",bF.MICROBIT_PIN_TOUCHED_MESSAGE0="引腳 %1 被觸摸",bF.MICROBIT_PIN_TOUCHED_TOOLTIP="如果引腳被觸摸將返回 “真”。",bF.MICROBIT_PIN_TOUCHED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.is_touched",bF.MICROBIT_PIN_WAS_PRESSED_MESSAGE0="引腳 %1 曾經被觸摸",bF.MICROBIT_PIN_WAS_PRESSED_TOOLTIP="如果引腳曾經被觸摸將返回 “真”。",bF.MICROBIT_PIN_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.was_pressed",bF.MICROBIT_PIN_GET_PRESSES_MESSAGE0="引腳 %1 被觸摸的次數",bF.MICROBIT_PIN_GET_PRESSES_TOOLTIP="返回被觸摸的次數,然後清零。",bF.MICROBIT_PIN_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.get_presses",bF.MICROBIT_PIN_READ_ANALOG_MESSAGE0="讀取引腳 %1 模擬電壓",bF.MICROBIT_PIN_READ_ANALOG_TOOLTIP="讀取引腳的模擬輸入電壓。",bF.MICROBIT_PIN_READ_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.read_analog",bF.MICROBIT_PIN_WRITE_ANALOG_MESSAGE0="設置模擬量 %1 到引腳 %2",bF.MICROBIT_PIN_WRITE_ANALOG_TOOLTIP="寫入模擬參數到指定引腳上。",bF.MICROBIT_PIN_WRITE_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.write_analog",bF.MICROBIT_PIN_READ_DIGITAL_MESSAGE0="讀取引腳 %1 的數字輸入",bF.MICROBIT_PIN_READ_DIGITAL_TOOLTIP="讀取引腳的數字輸入 (真 或 假)。",bF.MICROBIT_PIN_READ_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.read_digital",bF.MICROBIT_PIN_WRITE_DIGITAL_MESSAGE0="設置數字輸出 %1 到引腳 %2",bF.MICROBIT_PIN_WRITE_DIGITAL_TOOLTIP="寫入數字量 (真 或 假) 到指定引腳。",bF.MICROBIT_PIN_WRITE_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.write_digital",bF.MICROBIT_RADIO_ON_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.on",bF.MICROBIT_RADIO_ON_MESSAGE0="打開無線廣播",bF.MICROBIT_RADIO_ON_TOOLTIP="打開無線廣播。需要明確聲明調用,因為它會消耗更多功率和占用更多內存。",bF.MICROBIT_RADIO_OFF_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.off",bF.MICROBIT_RADIO_OFF_MESSAGE0="關閉無線廣播",bF.MICROBIT_RADIO_OFF_TOOLTIP="關閉無線廣播,節省功耗和內存。",bF.MICROBIT_RADIO_CONFIG_MESSAGE0="配置無線廣播消息長度 %1 %2 最大隊列數量 %3 %4 信道 %5 %6 廣播功率 %7 %8 地址 %9 %10 組 %11 %12 數據速率 %13",bF.MICROBIT_RADIO_CONFIG_TOOLTIP="配置無線廣播。\n 長度指單個消息的最大長度; \n 隊列指可以存放在消息隊列中消息的數量; \n 信道指無線廣播使用的無線頻率; \n 功率指發射廣播信號的強度; \n 地址:32位值; \n 組:8位值(0-255); \n 數據速率指數據傳輸的速度。",bF.MICROBIT_RADIO_CONFIG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.config",bF.MICROBIT_RADIO_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.reset",bF.MICROBIT_RADIO_RESET_MESSAGE0="復位無線廣播",bF.MICROBIT_RADIO_RESET_TOOLTIP="恢復無線廣播到默認設置。",bF.MICROBIT_RADIO_SEND_STRING_MESSAGE0="發送消息 %1",bF.MICROBIT_RADIO_SEND_STRING_TOOLTIP="廣播文字消息。",bF.MICROBIT_RADIO_SEND_STRING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",bF.MICROBIT_RADIO_SEND_BYTES_MESSAGE0="發送字節 %1",bF.MICROBIT_RADIO_SEND_BYTES_TOOLTIP="廣播字節。",bF.MICROBIT_RADIO_SEND_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",bF.MICROBIT_RADIO_RECEIVE_MESSAGE0="接收消息",bF.MICROBIT_RADIO_RECEIVE_TOOLTIP="接收消息。",bF.MICROBIT_RADIO_RECEIVE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",bF.MICROBIT_RADIO_RECEIVE_BYTES_MESSAGE0="接收字節",bF.MICROBIT_RADIO_RECEIVE_BYTES_TOOLTIP="接收字節。",bF.MICROBIT_RADIO_RECEIVE_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",bF.MICROBIT_SPEECH_SAY_MESSAGE0="說 %1",bF.MICROBIT_SPEECH_SAY_TOOLTIP="嘗試說英語",bF.MICROBIT_SPEECH_SAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#speech.say",bF.MICROBIT_SPEECH_PRONOUNCE_MESSAGE0="讀 %1",bF.MICROBIT_SPEECH_PRONOUNCE_TOOLTIP="精確發音。",bF.MICROBIT_SPEECH_PRONOUNCE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#phonemes",bF.MICROBIT_SPEECH_SING_MESSAGE0="唱 %1",bF.MICROBIT_SPEECH_SING_TOOLTIP="象機器人一樣唱歌。",bF.MICROBIT_SPEECH_SING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#singing",bF.MICROBIT_GESTURE_SHAKE="搖晃",bF.MICROBIT_GESTURE_UP="上",bF.MICROBIT_GESTURE_DOWN="下",bF.MICROBIT_GESTURE_LEFT="左",bF.MICROBIT_GESTURE_RIGHT="右",bF.MICROBIT_GESTURE_FACE_UP="朝上",bF.MICROBIT_GESTURE_FACE_DOWN="朝下",bF.MICROBIT_GESTURE_FREEFAIL="自由下落",bF.MICROBIT_IMAGE_HEART="心形",bF.MICROBIT_IMAGE_HEART_SMALL="心(小)",bF.MICROBIT_IMAGE_HAPPY="高興",bF.MICROBIT_IMAGE_SMILE="笑臉",bF.MICROBIT_IMAGE_SAD="傷心",bF.MICROBIT_IMAGE_CONFUSED="困惑",bF.MICROBIT_IMAGE_ANGRY="生氣",bF.MICROBIT_IMAGE_ASLEEP="睡著",bF.MICROBIT_IMAGE_SUPRISED="驚訝",bF.MICROBIT_IMAGE_SILLY="愚蠢",bF.MICROBIT_IMAGE_FABULOUS="極妙",bF.MICROBIT_IMAGE_MEH="無聊",bF.MICROBIT_IMAGE_YES="是",bF.MICROBIT_IMAGE_NO="否",bF.MICROBIT_IMAGE_CLOCK12="12點",bF.MICROBIT_IMAGE_CLOCK11="11點",bF.MICROBIT_IMAGE_CLOCK10="10點",bF.MICROBIT_IMAGE_CLOCK9="9點",bF.MICROBIT_IMAGE_CLOCK8="8點",bF.MICROBIT_IMAGE_CLOCK7="7點",bF.MICROBIT_IMAGE_CLOCK6="6點",bF.MICROBIT_IMAGE_CLOCK5="5點",bF.MICROBIT_IMAGE_CLOCK4="4點",bF.MICROBIT_IMAGE_CLOCK3="3點",bF.MICROBIT_IMAGE_CLOCK2="2點",bF.MICROBIT_IMAGE_CLOCK1="1點",bF.MICROBIT_IMAGE_ARROW_N="箭頭-北",bF.MICROBIT_IMAGE_ARROW_NE="箭頭-東北",bF.MICROBIT_IMAGE_ARROW_E="箭頭-東",bF.MICROBIT_IMAGE_ARROW_SE="箭頭-東南",bF.MICROBIT_IMAGE_ARROW_S="箭頭-南",bF.MICROBIT_IMAGE_ARROW_SW="箭頭-西南",bF.MICROBIT_IMAGE_ARROW_W="箭頭-西",bF.MICROBIT_IMAGE_ARROW_NW="箭頭-西北",bF.MICROBIT_IMAGE_TRIANGLE="三角形",bF.MICROBIT_IMAGE_TRIANGLE_LEFT="左三角形",bF.MICROBIT_IMAGE_CHESSBOARD="棋盤",bF.MICROBIT_IMAGE_DIAMOND="菱形",bF.MICROBIT_IMAGE_DIAMOND_SMALL="菱形(小)",bF.MICROBIT_IMAGE_SQUARE="方形",bF.MICROBIT_IMAGE_SQUARE_SMALL="方形(小)",bF.MICROBIT_IMAGE_RABBIT="兔子",bF.MICROBIT_IMAGE_COW="牛",bF.MICROBIT_IMAGE_MUSIC_CROTCHET="四分音符",bF.MICROBIT_IMAGE_MUSIC_QUAVER="八分音符",bF.MICROBIT_IMAGE_MUSIC_QUAVERS="顫音",bF.MICROBIT_IMAGE_PITCHFORK="叉子",bF.MICROBIT_IMAGE_XMAS="聖誕樹",bF.MICROBIT_IMAGE_PACMAN="吃豆人",bF.MICROBIT_IMAGE_TARGET="目標",bF.MICROBIT_IMAGE_TSHIRT="T恤衫",bF.MICROBIT_IMAGE_ROLLERSKATE="輪滑",bF.MICROBIT_IMAGE_DUCK="鴨子",bF.MICROBIT_IMAGE_HOUSE="房子",bF.MICROBIT_IMAGE_TORTOISE="烏龜",bF.MICROBIT_IMAGE_BUTTERFLY="蝴蝶",bF.MICROBIT_IMAGE_STICKFIGURE="線條畫",bF.MICROBIT_IMAGE_GHOST="幽靈",bF.MICROBIT_IMAGE_SWORD="寶劍",bF.MICROBIT_IMAGE_GIRAFFE="長頸鹿",bF.MICROBIT_IMAGE_SKULL="頭",bF.MICROBIT_IMAGE_UMBRELLA="傘",bF.MICROBIT_IMAGE_SNAKE="蛇",bF.MICROBIT_IMAGE_ALL_CLOCKS="所有時鐘",bF.MICROBIT_IMAGE_ALL_ARROWS="所有箭頭",bF.MICROBIT_PIN_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",bF.MICROBIT_PIN_SET_SERVO_TOOLTIP="設置舵機角度,範圍為 0 ~ 180度",bF.MICROBIT_PIN_SET_SERVO_MESSAGE0="設置舵機 引腳 %1 角度為 %2",bF.MICROBIT_PIN_SET_MODE_HELPURL="",bF.MICROBIT_PIN_SET_MODE_TOOLTIP="引腳模式有三種:懸空、上拉、下拉",bF.MICROBIT_PIN_SET_MODE_MESSAGE0="設置引腳 %1 模式為 %2",bF.MICROBIT_PIN_MODE_NO="懸空",bF.MICROBIT_PIN_MODE_UP="上拉",bF.MICROBIT_PIN_MODE_DOWN="下拉",bF.MICROBIT_UART_INIT_MESSAGE0="初始化串口波特率為 %3 TX為 %1 RX為 %2",bF.MICROBIT_UART_INIT_TOOLTIP="",bF.MICROBIT_UART_INIT_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",bF.MICROBIT_UART_ANY_MSG_RECEIVED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",bF.MICROBIT_UART_ANY_MSG_RECEIVED_TOOLTIP="",bF.MICROBIT_UART_ANY_MSG_RECEIVED_MESSAGE0="串口接收到數據",bF.MICROBIT_UART_READ_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",bF.MICROBIT_UART_READ_MSG_TOOLTIP="",bF.MICROBIT_UART_READ_MSG_MESSAGE0="讀取串口 %1 字節",bF.MICROBIT_UART_READ_MSG_TO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",bF.MICROBIT_UART_READ_MSG_TO_TOOLTIP="",bF.MICROBIT_UART_READ_MSG_TO_MESSAGE0="讀取串口 %1 字節存至 %2",bF.MICROBIT_UART_WRITE_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",bF.MICROBIT_UART_WRITE_MSG_TOOLTIP="",bF.MICROBIT_UART_WRITE_MSG_MESSAGE0="串口發送數據 %1",bF.MICROBIT_ALL_BYTES="全部",bF.MICROBIT_ALINE_BYTES="一行",bF.LABPLUS_BUTTON_IS_PRESSED_MESSAGE0="引腳 %1 被觸發",bF.LABPLUS_BUTTON_IS_PRESSED_TOOLTIP="如果指定按鍵按下返回 “真”,否則返回 “假”。",bF.LABPLUS_BUTTON_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.is_pressed",bF.LABPLUS_BUTTON_WAS_PRESSED_MESSAGE0="引腳 %1 曾經被觸發",bF.LABPLUS_BUTTON_WAS_PRESSED_TOOLTIP="如果按鍵曾經按下過返回 “真”,否則返回 “假”。",bF.LABPLUS_BUTTON_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.was_pressed",bF.LABPLUS_BUTTON_GET_PRESSES_MESSAGE0="引腳 %1 被觸發過的次數",bF.LABPLUS_BUTTON_GET_PRESSES_TOOLTIP="返回按鍵按下的總次數,然後清除計數。",bF.LABPLUS_BUTTON_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.get_presses",bF.LABPLUS_LED_MESSAGE0="設置LED燈 引腳 %2 輸出 %1",bF.LABPLUS_LED_TOOLTIP="",bF.LABPLUS_LED_HELPURL="http://wiki.labplus.cn/index.php?title=LED",bF.LABPLUS_INFRARED_IS_TRIGGERED_MESSAGE0="紅外探測 引腳 %1 被觸發",bF.LABPLUS_INFRARED_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_INFRARED_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%BA%A2%E5%A4%96%E6%8E%A2%E6%B5%8B",bF.LABPLUS_HEAT_SENSITIVE_DETECTOR_MESSAGE0="熱敏傳感器 引腳 %1 的值",bF.LABPLUS_HEAT_SENSITIVE_DETECTOR_TOOLTIP="",bF.LABPLUS_HEAT_SENSITIVE_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%AD%E6%95%8F%E7%94%B5%E9%98%BB",bF.LABPLUS_I2C_LIGHT_SENSOR_MESSAGE0="I2C數字光線傳感器的值(lux)",bF.LABPLUS_I2C_LIGHT_SENSOR_TOOLTIP="",bF.LABPLUS_I2C_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E5%AD%97%E5%85%89%E7%BA%BF",bF.LABPLUS_WATER_LEVEL_DETECTOR_MESSAGE0="水位傳感器 引腳 %1 的值",bF.LABPLUS_WATER_LEVEL_DETECTOR_TOOLTIP="",bF.LABPLUS_WATER_LEVEL_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B0%B4%E4%BD%8D",bF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_MESSAGE0="煙霧探測器 引腳 %1 被觸發",bF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",bF.LABPLUS_BUZZER_FOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",bF.LABPLUS_BUZZER_FOR_TOOLTIP="",bF.LABPLUS_BUZZER_FOR_MESSAGE0="以頻率 %1 激活蜂鳴器 引腳0 %2 毫秒",bF.LABPLUS_BUZZER_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",bF.LABPLUS_BUZZER_ON_TOOLTIP="",bF.LABPLUS_BUZZER_ON_MESSAGE0="以頻率 %1 激活蜂鳴器 引腳0",bF.LABPLUS_BUZZER_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",bF.LABPLUS_BUZZER_OFF_TOOLTIP="",bF.LABPLUS_BUZZER_OFF_MESSAGE0="關閉蜂鳴器 引腳0",bF.LABPLUS_TM_HM_SENSOR_MESSAGE0="I2C溫濕度傳感器的 %1 值",bF.LABPLUS_TM_HM_SENSOR_TOOLTIP="",bF.LABPLUS_TM_HM_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B8%A9%E6%B9%BF%E5%BA%A6",bF.LABPLUS_TM_HM_SENSOR_TM="溫度",bF.LABPLUS_TM_HM_SENSOR_HM="濕度",bF.LABPLUS_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",bF.LABPLUS_SET_SERVO_TOOLTIP="",bF.LABPLUS_SET_SERVO_MESSAGE0="設置舵機 引腳 %1 角度為 %2",bF.LABPLUS_FINGERPRINT_SENSOR_MESSAGE0="指紋傳感器 引腳 %1 驗證通過",bF.LABPLUS_FINGERPRINT_SENSOR_TOOLTIP="",bF.LABPLUS_FINGERPRINT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8C%87%E7%BA%B9",bF.LABPLUS_SET_MOTOR_HELPURL="",bF.LABPLUS_SET_MOTOR_TOOLTIP="",bF.LABPLUS_SET_MOTOR_MESSAGE0="設置電機 %1 方向 %2 速度 %3",bF.LABPLUS_SET_MOTOR_CLOCKWISE="正轉",bF.LABPLUS_SET_MOTOR_ANTI_CLOCKWISE="反轉",bF.LABPLUS_STOP_MOTOR_HELPURL="",bF.LABPLUS_STOP_MOTOR_TOOLTIP="",bF.LABPLUS_STOP_MOTOR_MESSAGE0="停止電機",bF.LABPLUS_GET_RFID_ID_MESSAGE0="射頻卡 引腳 %1 驗證通過",bF.LABPLUS_GET_RFID_ID_TOOLTIP="",bF.LABPLUS_GET_RFID_ID_HELPURL="http://wiki.labplus.cn/index.php?title=RFID",bF.LABPLUS_GET_RFID_VALUE_MESSAGE0="電子錢包 引腳 %1 余額",bF.LABPLUS_GET_RFID_VALUE_TOOLTIP="",bF.LABPLUS_GET_RFID_VALUE_HELPURL="",bF.LABPLUS_SET_RFID_VALUE_MESSAGE0="設置電子錢包 引腳 %1 余額 %2 %3",bF.LABPLUS_SET_RFID_VALUE_TOOLTIP="",bF.LABPLUS_SET_RFID_VALUE_HELPURL="",bF.LABPLUS_SET_RFID_ADD="增加",bF.LABPLUS_SET_RFID_MINUS="減少",bF.LABPLUS_SOUND_IS_TRIGGERED_MESSAGE0="聲音傳感器 引腳 %1 被觸發",bF.LABPLUS_SOUND_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_SOUND_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%BA%A6%E5%85%8B%E9%A3%8E",bF.LABPLUS_USB_SWITCH_HELPURL="",bF.LABPLUS_USB_SWITCH_TOOLTIP="",bF.LABPLUS_USB_SWITCH_MESSAGE0="%1 USB開關 引腳 %2",bF.LABPLUS_USB_SWITCH_ON="打開",bF.LABPLUS_USB_SWITCH_OFF="關閉",bF.LABPLUS_VOICE_RECORD_HELPURL="",bF.LABPLUS_VOICE_RECORD_TOOLTIP="",bF.LABPLUS_VOICE_RECORD_MESSAGE0="%1 語音錄放器 引腳 %2",bF.LABPLUS_VOICE_RECORD_ON="打開",bF.LABPLUS_VOICE_RECORD_OFF="關閉",bF.LABPLUS_RGB_INITIALISE_MESSAGE0="使用 引腳 %1 控制,RGB 彩燈數 %2 ",bF.LABPLUS_RGB_INITIALISE_TOOLTIP="控制 RGB 彩燈。需要設定 neopixels 彩燈數量和控制腳。",bF.LABPLUS_RGB_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",bF.LABPLUS_RGB_CLEAR_MESSAGE0="清除 RGB 彩燈 %1",bF.LABPLUS_RGB_CLEAR_TOOLTIP="清除所有 RGB 彩燈",bF.LABPLUS_RGB_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",bF.LABPLUS_RGB_SHOW_MESSAGE0="顯示 RGB 彩燈 %1",bF.LABPLUS_RGB_SHOW_TOOLTIP="顯示 / 更新全部 RGB 彩燈。",bF.LABPLUS_RGB_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",bF.LABPLUS_RGB_SET_MESSAGE0="RGB 彩燈控制 %1 設置位置 %2 紅色 %3 綠色 %4 藍色 %5",bF.LABPLUS_RGB_SET_TOOLTIP="更新指定的 RGB 彩燈的紅、綠、藍 (RGB) 顏色",bF.LABPLUS_RGB_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",bF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_MESSAGE0="設置擴展端口 IO %1 為 %2",bF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_TOOLTIP="0表示輸出引腳,1表示輸入引腳",bF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",bF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT="輸入",bF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT="輸出",bF.LABPLUS_READ_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",bF.LABPLUS_READ_EXTENDED_PIN_TOOLTIP="",bF.LABPLUS_READ_EXTENDED_PIN_MESSAGE0="讀取擴展端口值 IO %1",bF.LABPLUS_WRITE_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",bF.LABPLUS_WRITE_EXTENDED_PIN_TOOLTIP="",bF.LABPLUS_WRITE_EXTENDED_PIN_MESSAGE0="設置擴展端口 IO %1 值為 %2",bF.LABPLUS_I2C_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%B6%85%E5%A3%B0%E6%B3%A2",bF.LABPLUS_I2C_ULTRASONIC_TOOLTIP="",bF.LABPLUS_I2C_ULTRASONIC_MESSAGE0="I2C超聲波傳感器的值",bF.MICROBIT_SET_MUSIC_PIN_HELPURL="",bF.MICROBIT_SET_MUSIC_PIN_TOOLTIP="",bF.MICROBIT_SET_MUSIC_PIN_MESSAGE0="設置默認蜂鳴器引腳為 %1",bF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E4%BA%BA%E4%BD%93%E6%84%9F%E5%BA%94",bF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_MESSAGE0="人體感應 引腳 %1 被觸發",bF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%97%A8%E7%A3%81%E5%BC%80%E5%85%B3",bF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_MESSAGE0="門磁開關 引腳 %1 被觸發",bF.LABPLUS_SOUND_LEVEL_SENSOR_HELPURL="",bF.LABPLUS_SOUND_LEVEL_SENSOR_TOOLTIP="",bF.LABPLUS_SOUND_LEVEL_SENSOR_MESSAGE0="聲音傳感器 引腳 %1 的值",bF.LABPLUS_SMOKE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",bF.LABPLUS_SMOKE_SENSOR_TOOLTIP="",bF.LABPLUS_SMOKE_SENSOR_MESSAGE0="煙霧傳感器 引腳 %1 的值",bF.LABPLUS_SOIL_MOISTURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9C%9F%E5%A3%A4%E6%B9%BF%E5%BA%A6",bF.LABPLUS_SOIL_MOISTURE_SENSOR_TOOLTIP="",bF.LABPLUS_SOIL_MOISTURE_SENSOR_MESSAGE0="土壤濕度傳感器 引腳 %1 的值",bF.LABPLUS_FAN_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8E%92%E9%A3%8E%E6%89%87",bF.LABPLUS_FAN_SWITCH_TOOLTIP="",bF.LABPLUS_FAN_SWITCH_MESSAGE0="%1 風扇 引腳 %2",bF.LABPLUS_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.LABPLUS_VOICE_RECORD_ON_TOOLTIP="",bF.LABPLUS_VOICE_RECORD_ON_MESSAGE0="打開錄放器 %1 引腳 %2",bF.LABPLUS_VOICE_RECORD_PLAY="播放",bF.LABPLUS_VOICE_RECORD_REC="錄音",bF.LABPLUS_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.LABPLUS_VOICE_RECORD_OFF_TOOLTIP="",bF.LABPLUS_VOICE_RECORD_OFF_MESSAGE0="關閉錄放器 引腳 %1",bF.LABPLUS_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.LABPLUS_MOTOR_ON_TOOLTIP="",bF.LABPLUS_MOTOR_ON_MESSAGE0="打開直流電機 %1 速度 %2 引腳 %3",bF.LABPLUS_MOTOR_ON_CLOCKWISE="正轉",bF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="反轉",bF.LABPLUS_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.LABPLUS_MOTOR_OFF_TOOLTIP="",bF.LABPLUS_MOTOR_OFF_MESSAGE0="停止直流電機 引腳 %1",bF.LABPLUS_READ_COLOR_FROM_I2C_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%A2%9C%E8%89%B2",bF.LABPLUS_READ_COLOR_FROM_I2C_TOOLTIP="",bF.LABPLUS_READ_COLOR_FROM_I2C_MESSAGE0="I2C顏色傳感器讀取並儲存顏色",bF.LABPLUS_RGB_COLOR_HELPURL="http://wiki.labplus.cn/index.php?title=RGB_LED",bF.LABPLUS_RGB_COLOR_TOOLTIP="讀取已儲存的顏色",bF.LABPLUS_RGB_COLOR_MESSAGE0="RGB顏色 %1",bF.LABPLUS_SET_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",bF.LABPLUS_SET_I2C_DIGITS_TOOLTIP="",bF.LABPLUS_SET_I2C_DIGITS_MESSAGE0="設置I2C數碼管的值為 %1",bF.LABPLUS_TURN_OFF_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",bF.LABPLUS_TURN_OFF_I2C_DIGITS_TOOLTIP="",bF.LABPLUS_TURN_OFF_I2C_DIGITS_MESSAGE0="關閉I2C數碼管",bF.LABPLUS_UART_SET_MIDI_MELODIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",bF.LABPLUS_UART_SET_MIDI_MELODIC_TOOLTIP="",bF.LABPLUS_UART_SET_MIDI_MELODIC_MESSAGE0="設置MIDI模塊音調為 %1",bF.LABPLUS_UART_PLAY_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",bF.LABPLUS_UART_PLAY_MIDI_NOTE_TOOLTIP="",bF.LABPLUS_UART_PLAY_MIDI_NOTE_MESSAGE0="MIDI模塊 %2 音符 %1",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Do="Do",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Re="Re",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Mi="Mi",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Fa="Fa",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Sol="Sol",bF.LABPLUS_UART_PLAY_MIDI_NOTE_La="La",bF.LABPLUS_UART_PLAY_MIDI_NOTE_Si="Si",bF.LABPLUS_UART_PLAY_MIDI_NOTE="播放",bF.LABPLUS_UART_OFF_MIDI_NOTE="停止",bF.LABPLUS_UART_OFF_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",bF.LABPLUS_UART_OFF_MIDI_NOTE_TOOLTIP="",bF.LABPLUS_UART_OFF_MIDI_NOTE_MESSAGE0="MIDI模塊停止播放音符 %1",bF.LABPLUS_UART_INIT_MIDI_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",bF.LABPLUS_UART_INIT_MIDI_TOOLTIP="",bF.LABPLUS_UART_INIT_MIDI_MESSAGE0="初始化MIDI模塊 %1",bF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%BE%AA%E8%BF%B9",bF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_MESSAGE0="循跡傳感器 引腳 %1 檢測為黑",bF.LABPLUS_TEMPERATURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=LM35%E6%B8%A9%E5%BA%A6",bF.LABPLUS_TEMPERATURE_SENSOR_TOOLTIP="",bF.LABPLUS_TEMPERATURE_SENSOR_MESSAGE0="LM35溫度傳感器 引腳 %1 的值",bF.LABPLUS_ROTATE_DIMMER_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%97%8B%E9%92%AE%E7%94%B5%E4%BD%8D%E5%99%A8",bF.LABPLUS_ROTATE_DIMMER_TOOLTIP="",bF.LABPLUS_ROTATE_DIMMER_MESSAGE0="旋轉電位器 引腳 %1 的值",bF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9C%87%E5%8A%A8",bF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",bF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_MESSAGE0="震動傳感器 引腳 %1 被觸發",bF.LABPLUS_LASER_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%BF%80%E5%85%89%E5%8F%91%E5%B0%84",bF.LABPLUS_LASER_SWITCH_TOOLTIP="",bF.LABPLUS_LASER_SWITCH_MESSAGE0="%1 激光開關 引腳 %2",bF.LABPLUS_4BUTTON_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",bF.LABPLUS_4BUTTON_TOOLTIP="",bF.LABPLUS_4BUTTON_MESSAGE0="四向按鍵模塊 引腳 %1 按鍵 %2 被按下",bF.BLUE="A",bF.GREEN="B",bF.RED="C",bF.YELLOW="D",bF.LABPLUS_JOYSTICK_HELPURL="",bF.LABPLUS_JOYSTICK_TOOLTIP="",bF.LABPLUS_JOYSTICK_MESSAGE0="搖桿 引腳A0 %1 引腳A1 %2 %3 軸的值",bF.LABPLUS_UART_MP3_PLAY_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",bF.LABPLUS_UART_MP3_PLAY_TOOLTIP="",bF.LABPLUS_UART_MP3_PLAY_MESSAGE0="MP3模塊(UART)播放第 %1 首音樂",bF.LABPLUS_UART_MP3_SET_VOLUME_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",bF.LABPLUS_UART_MP3_SET_VOLUME_TOOLTIP="",bF.LABPLUS_UART_MP3_SET_VOLUME_MESSAGE0="設置MP3模塊(UART)音量為 %1",bF.LABPLUS_UART_MP3_SET_STATUS_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",bF.LABPLUS_UART_MP3_SET_STATUS_TOOLTIP="",bF.LABPLUS_UART_MP3_SET_STATUS_MESSAGE0="設置MP3模塊(UART)狀態為 %1",bF.PAUSE="暫停",bF.STOP="停止",bF.PLAY="繼續播放",bF.PLAYNEXT="下一首",bF.PLAYPREV="上一首",bF.LABPLUS_UART_INIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.LABPLUS_UART_INIT_TOOLTIP="",bF.LABPLUS_UART_INIT_MESSAGE0="初始化串口波特率為 %3 TX為 %1 RX為 %2",bF.LABPLUS_VOICE_RECORD_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.LABPLUS_VOICE_RECORD_ON1_TOOLTIP="",bF.LABPLUS_VOICE_RECORD_ON1_MESSAGE0="打開錄放器 %1 %2 引腳REC %3 引腳PLAY %4",bF.LABPLUS_VOICE_RECORD_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",bF.LABPLUS_VOICE_RECORD_OFF1_TOOLTIP="",bF.LABPLUS_VOICE_RECORD_OFF1_MESSAGE0="關閉錄放器 %1 引腳REC %2 引腳PLAY %3",bF.LABPLUS_MOTOR_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.LABPLUS_MOTOR_ON1_TOOLTIP="",bF.LABPLUS_MOTOR_ON1_MESSAGE0="打開直流電機 %1 速度 %2 引腳AIN1 %3 引腳AIN2 %4",bF.LABPLUS_MOTOR_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",bF.LABPLUS_MOTOR_OFF1_TOOLTIP="",bF.LABPLUS_MOTOR_OFF1_MESSAGE0="停止直流電機 %1 引腳AIN1 %2 引腳AIN2 %3",bF.LABPLUS_SET_I2C_LCD1602_CURSOR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",bF.LABPLUS_SET_I2C_LCD1602_CURSOR_TOOLTIP="",bF.LABPLUS_SET_I2C_LCD1602_CURSOR_MESSAGE0="設置LCD遊標位置%1 X %2 Y %3";bF.LABPLUS_SET_I2C_LCD1602_PRINT_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",bF.LABPLUS_SET_I2C_LCD1602_PRINT_TOOLTIP="",bF.LABPLUS_SET_I2C_LCD1602_PRINT_MESSAGE0="設置LCD顯示 %1",bF.LABPLUS_SET_I2C_LCD1602_SCROLL_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",bF.LABPLUS_SET_I2C_LCD1602_SCROLL_TOOLTIP="配合循環次數使用",bF.LABPLUS_SET_I2C_LCD1602_SCROLL_MESSAGE0="%1滾動LCD顯示內容",bF.LABPLUS_SET_I2C_LCD1602_SCROLL_ALEFT="向左",bF.LABPLUS_SET_I2C_LCD1602_SCROLL_RIGHTWARD="向右",bF.LABPLUS_SET_I2C_LCD1602_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",bF.LABPLUS_SET_I2C_LCD1602_CLEAR_TOOLTIP="",bF.LABPLUS_SET_I2C_LCD1602_CLEAR_MESSAGE0="清除LCD顯示內容",bF.LABPLUS_UART_ANY_MSG_RECEIVED_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.LABPLUS_UART_ANY_MSG_RECEIVED_TOOLTIP="",bF.LABPLUS_UART_ANY_MSG_RECEIVED_MESSAGE0="%1 接收到數據",bF.BLUEBIT_UART="串口",bF.BLUEBIT_INFRARED_SIGNAL="紅外信號",bF.BLUEBIT_BLUEBOOTH="藍牙",bF.LABPLUS_UART_READ_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.LABPLUS_UART_READ_MSG_TOOLTIP="",bF.LABPLUS_UART_READ_MSG_MESSAGE0="讀取 %1 數據",bF.LABPLUS_UART_WRITE_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",bF.LABPLUS_UART_WRITE_MSG_TOOLTIP="",bF.LABPLUS_UART_WRITE_MSG_MESSAGE0="%1 發送數據 %2",bF.LABPLUS_SET_I2C_LED_MATRIX_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",bF.LABPLUS_SET_I2C_LED_MATRIX_TOOLTIP="",bF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE0="設置點陣 %1 第一行顯示%2 第二行顯示%3 第三行顯示%4 第四行顯示%5 第五行顯示%6 第六行顯示%7 第七行顯示%8 第八行顯示%9 ",bF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE2="設置點陣 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",bF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",bF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_TOOLTIP="",bF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_MESSAGE0="清空點陣",bF.LABPLUS_UART_SET_OLED_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",bF.LABPLUS_UART_SET_OLED_TOOLTIP="",bF.LABPLUS_UART_SET_OLED_MESSAGE0="設置OLED屏 %1 X %2 Y %3 顯示文本 %4 字體為 %5",bF.LABPLUS_UART_SET_OLED_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",bF.LABPLUS_UART_SET_OLED_CLEAR_TOOLTIP="",bF.LABPLUS_UART_SET_OLED_CLEAR_MESSAGE0="在OLED屏上擦除矩陣 %1 X1 %2 Y1 %3 X2 %4 Y2 %5",bF.LABPLUS_UART_SET_OLED_CLEAR_ALL_MESSAGE0="清空OLED屏",bF.LABPLUS_UART_SET_OLED_CLEAR_ALL_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",bF.LABPLUS_UART_SET_OLED_CLEAR_ALL_TOOLTIP="",bF.LABPLUS_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%A8%A1%E6%8B%9F%E5%85%89%E7%BA%BF",bF.LABPLUS_LIGHT_SENSOR_TOOLTIP="",bF.LABPLUS_LIGHT_SENSOR_MESSAGE0="模擬光線傳感器 引腳 %1 的值",bF.LABPLUS_BUTTON_MODULE_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",bF.LABPLUS_BUTTON_MODULE_IS_PRESSED_TOOLTIP="",bF.LABPLUS_BUTTON_MODULE_IS_PRESSED_MESSAGE0="按鍵模塊 引腳 %1 被按下",bF.MICROBIT_EXT2_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",bF.MICROBIT_EXT2_SET_SERVO_TOOLTIP="",bF.MICROBIT_EXT2_SET_SERVO_MESSAGE0="設置舵機 %1 的角度為 %2",bF.MICROBIT_EXT2_SET_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",bF.MICROBIT_EXT2_SET_MOTOR_TOOLTIP="",bF.MICROBIT_EXT2_SET_MOTOR_MESSAGE0="設置馬達 %1 方向 %2 速度 %3",bF.MICROBIT_EXT2_STOP_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",bF.MICROBIT_EXT2_STOP_MOTOR_TOOLTIP="",bF.MICROBIT_EXT2_STOP_MOTOR_MESSAGE0="停止馬達 %1",bF.MICROBIT_EXT2_SOUND_VALUE_MESSAGE0="聲音傳感器的值",bF.MICROBIT_EXT2_SOUND_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",bF.MICROBIT_EXT2_SOUND_VALUE_TOOLTIP="",bF.MICROBIT_EXT2_LIGHT_VALUE_MESSAGE0="光線傳感器的值",bF.MICROBIT_EXT2_LIGHT_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",bF.MICROBIT_EXT2_LIGHT_VALUE_TOOLTIP="",bF.MICROBIT_INIT_I2C_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",bF.MICROBIT_INIT_I2C_TOOLTIP="",bF.MICROBIT_INIT_I2C_MESSAGE0="初始化I2C 頻率 %1 引腳SDA %2 引腳SCL %3",bF.MICROBIT_I2C_READ_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",bF.MICROBIT_I2C_READ_TOOLTIP="",bF.MICROBIT_I2C_READ_MESSAGE0="I2C讀取從地址 %1 讀取 %2 字節",bF.MICROBIT_I2C_WRITE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",bF.MICROBIT_I2C_WRITE_TOOLTIP="",bF.MICROBIT_I2C_WRITE_MESSAGE0="I2C寫入 %2 到地址 %1",bF.MICROBIT_CONVERT_BYTEARRAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",bF.MICROBIT_CONVERT_BYTEARRAY_TOOLTIP="",bF.MICROBIT_CONVERT_BYTEARRAY_MESSAGE0="bytearray %1",bF.BOTBIT_MOTOR_ON_HELPURL="",bF.BOTBIT_MOTOR_ON_TOOLTIP="範圍:-2000~2000",bF.BOTBIT_MOTOR_ON_MESSAGE0="設置機器人 %1 右輪速度為 %2 左輪速度為 %3",bF.BOTBIT_MOTOR_LEFT="左",bF.BOTBIT_MOTOR_RIGHT="右",bF.BOTBIT_SERVO_UP="上方",bF.BOTBIT_SERVO_DOWN="下方",bF.BOTBIT_MOTOR_FORWARD="前進",bF.BOTBIT_MOTOR_BACKWARD="後退",bF.BOTBIT_HOLDBALL_HELPURL="",bF.BOTBIT_HOLDBALL_TOOLTIP="",bF.BOTBIT_HOLDBALL_MESSAGE0="雙臂抱起",bF.BOTBIT_STEERING_ENGINEL_HELPURL="",bF.BOTBIT_STEERING_ENGINEL_TOOLTIP="角度範圍為-45°~45°",bF.BOTBIT_STEERING_ENGINEL_MESSAGE0="設置 %1臂 %2的角度為 %3",bF.BOTBIT_SERVO_Y="Y軸舵機",bF.BOTBIT_SERVO_X="X軸舵機",bF.BOTBIT_STEERING_ENGINE_LEG_HELPURL="",bF.BOTBIT_STEERING_ENGINE_LEG_TOOLTIP="角度範圍為-45°~45°",bF.BOTBIT_STEERING_ENGINE_LEG_MESSAGE0="設置 %1腿 %2舵機的角度為 %3",bF.BOTBIT_UPDATEPOSITION_HELPURL="",bF.BOTBIT_UPDATEPOSITION_TOOLTIP="",bF.BOTBIT_UPDATEPOSITION_MESSAGE0="刷新舵機角度",bF.BOTBIT_ULTRASONIC_HELPURL="",bF.BOTBIT_ULTRASONIC_TOOLTIP="",bF.BOTBIT_ULTRASONIC_MESSAGE0="超聲波傳感器的值",bF.BOTBIT_WALKING_HELPURL="",bF.BOTBIT_WALKING_TOOLTIP="周期越短, 速度越快, 推薦1000~2000",bF.BOTBIT_WALKING_MESSAGE0="舞步(walking) 步數%2 周期%3 方向%1 ",bF.BOTBIT_WALKING_FORWARD="前",bF.BOTBIT_WALKING_BACK="後",bF.BOTBIT_MOONWALKER_HELPURL="",bF.BOTBIT_MOONWALKER_TOOLTIP="推薦周期1000~2000, 幅度10~50",bF.BOTBIT_MOONWALKER_MESSAGE0="舞步(moonwalker) 步數%2 周期%3 幅度%4 方向%1 ",bF.BOTBIT_MOONWALKER_L="左",bF.BOTBIT_MOONWALKER_R="右",bF.BOTBIT_CRUSAITO_HELPURL="",bF.BOTBIT_CRUSAITO_TOOLTIP="推薦步數2~10, 幅度10~50",bF.BOTBIT_CRUSAITO_MESSAGE0="舞步(crusaito) 步數%2 周期%3 幅度%4 方向%1",bF.BOTBIT_CRUSAITO_CW="逆時針",bF.BOTBIT_CRUSAITO_ANTICW="順時針",bF.BOTBIT_FLAPPING_HELPURL="",bF.BOTBIT_FLAPPING_TOOLTIP="推薦步數5~15, 幅度10~30, 周期1000~2000",bF.BOTBIT_FLAPPING_MESSAGE0="舞步(flapping) 步數%2 周期%3 幅度%4 方向%1",bF.BOTBIT_FLAPPING_FORWARD="前",bF.BOTBIT_FLAPPING_BACK="後",bF.BOTBIT_HOME_HELPURL="",bF.BOTBIT_HOME_TOOLTIP="",bF.BOTBIT_HOME_MESSAGE0="機器人舞步初始化",bF.LABPLUS_UART_SET_MIDI_VOL_HELPURL="http://wiki.labplus.cn/index.php?title=MIDI(%E7%94%B5%E5%AD%90%E7%90%B4)",bF.LABPLUS_UART_SET_MIDI_VOL_TOOLTIP="",bF.LABPLUS_UART_SET_MIDI_VOL_MESSAGE0="設置MIDI模塊音量為 %1",bF.labplus_mapping_MESSAGE0="映射%1 從%2 , %3到%4 , %5",bF.labplus_mapping_TOOLTIP="將0~100中的10映射到0~200中並返回映射值",bF.labplus_mapping_HELPURL="",bF.JOINT_MIDI_PIANO="平臺鋼琴",bF.JOINT_MIDI_BRIGHTACOUSTICPIANO="亮音鋼琴",bF.JOINT_MIDI_ELECTRICGRANDPIANO="電鋼琴",bF.JOINT_MIDI_HARPSICHORD="大鍵琴",bF.JOINT_MIDI_Celesta="鋼片琴",bF.JOINT_MIDI_Glockenspiel="鐘琴",bF.JOINT_MIDI_Musicalbox="音樂盒",bF.JOINT_MIDI_Marimba="馬林巴琴",bF.JOINT_MIDI_Xylophone="木琴",bF.JOINT_MIDI_TubularBell="管鐘",bF.JOINT_MIDI_Dulcimer="洋琴",bF.JOINT_Vibraphone="顫音琴",bF.JOINT_MIDI_ORGAN="音栓風琴",bF.JOINT_Acoustic_Guitar="木吉他",bF.JOINT_Electric_Guitar="電吉他",bF.JOINT_Acoustic_Bass="民謠貝斯",bF.JOINT_String_Ensemble="弦樂合奏",bF.JOINT_Violin="小提琴",bF.JOINT_Trumpet="小號",bF.JOINT_Sax="薩克斯",bF.JOINT_Steel_Drums="鋼鼓",bF.JOINT_Lead="合成音主旋律",bF.JOINT_Pad="合成音襯底",bF.LABPLUS_PLAY_BUZZER_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",bF.LABPLUS_PLAY_BUZZER_NOTE_TOOLTIP="",bF.LABPLUS_PLAY_BUZZER_NOTE_MESSAGE0="播放音調 %1",bF.Carbit_init_MESSAGE0="CarBit初始化",bF.Carbit_init_TOOLTIP="",bF.Carbit_init_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_setLeftMotor_MESSAGE0="B2電機速度 %1",bF.Carbit_setLeftMotor_TOOLTIP="範圍:-100~100",bF.Carbit_setLeftMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_setRightMotor_MESSAGE0="B1電機速度 %1",bF.Carbit_setRightMotor_TOOLTIP="範圍:-100~100",bF.Carbit_setRightMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_analog_light_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_analog_light_TOOLTIP="Q3對應Pin1,Q4對應Pin2",bF.Carbit_analog_light_MESSAGE0="%1 模擬光線的值",bF.Carbit_Speed_U10_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_Speed_U10_TOOLTIP="對應U10",bF.Carbit_Speed_U10_MESSAGE0="左輪速度",bF.Carbit_Speed_U11_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_Speed_U11_TOOLTIP="對應U11",bF.Carbit_Speed_U11_MESSAGE0="右輪速度",bF.Carbit_Distance_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_Distance_TOOLTIP="",bF.Carbit_Distance_MESSAGE0="超聲波的值",bF.Carbit_tracking_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",bF.Carbit_tracking_TOOLTIP="",bF.Carbit_tracking_MESSAGE0="循跡參數 %1 直行速度 %2 最大限速 %3 轉彎延時 %5 轉彎速度系數 %4 ",bF.XUNFEI_SPEECH_TTS_HELPURL="",bF.XUNFEI_SPEECH_TTS_TOOLTIP="合成音頻文件格式只能是 *.pcm",bF.XUNFEI_SPEECH_TTS_MESSAGE0="[訊飛語音] 合成音頻 %1 APPID %2 APISecret %3 APIKey %4 文字內容 %5 轉存為音頻文件 %6",bF.XUNFEI_SPEECH_IAT_HELPURL="",bF.XUNFEI_SPEECH_IAT_TOOLTIP="可識別的音頻格式有 *.pcm 與 *.wav",bF.XUNFEI_SPEECH_IAT_MESSAGE0="[訊飛語音] 識別音頻 %1 APPID %2 APISecret %3 APIKey %4 待識別音頻文件 %5",bF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",bF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",bF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[訊飛語音] 識別結果",bF.MPYTHON_ZKAI_LCD_INIT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdinittype1-freq15000000-colorlcdblack",bF.MPYTHON_ZKAI_LCD_INIT_MESSAGE0="LCD 屏幕初始化",bF.MPYTHON_ZKAI_LCD_INIT_TOOLTIP="初始化 LCD 屏幕显示",bF.MPYTHON_ZKAI_LCD_ROTATION_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",bF.MPYTHON_ZKAI_LCD_ROTATION_MESSAGE0="LCD 屏幕方向%1",bF.MPYTHON_ZKAI_LCD_ROTATION_TOOLTIP="设置 LCD 屏幕方向,取值范围 [0,3], 从0到3依次顺时针旋转",bF.MPYTHON_ZKAI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",bF.MPYTHON_ZKAI_SENSOR_RESET_MESSAGE0="摄像头 初始化",bF.MPYTHON_ZKAI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",bF.MPYTHON_ZKAI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",bF.MPYTHON_ZKAI_SENSOR_ENABLE_MESSAGE0="摄像头%1",bF.MPYTHON_ZKAI_SENSOR_ENABLE_TOOLTIP="获取图像",bF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdwidth",bF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_MESSAGE0="LCD 获取%1",bF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_TOOLTIP="返回 LCD 的宽度(水平分辨率);高度(垂直分辨率)",bF.MPYTHON_ZKAI_LCD_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",bF.MPYTHON_ZKAI_LCD_MI_MESSAGE0="LCD 设置镜像",bF.MPYTHON_ZKAI_LCD_MI_TOOLTIP="设置是否镜像",bF.MPYTHON_ZKAI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",bF.MPYTHON_ZKAI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",bF.MPYTHON_ZKAI_LCD_TEXT_TOOLTIP="仅支持字母和数字",bF.MPYTHON_ZKAI_SENSOR_OffOn_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%85%B3%E9%97%AD%E6%91%84%E5%83%8F%E5%A4%B4",bF.MPYTHON_ZKAI_SENSOR_OffOn_MESSAGE0="摄像头%1",bF.MPYTHON_ZKAI_SENSOR_OffOn_TOOLTIP="1 表示开启摄像头 0 表示关闭摄像头",bF.MPYTHON_ZKAI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",bF.MPYTHON_ZKAI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",bF.MPYTHON_ZKAI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",bF.MPYTHON_ZKAI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",bF.MPYTHON_ZKAI_SENSOR_RETURN_MESSAGE0="摄像头 获取%1",bF.MPYTHON_ZKAI_SENSOR_RETURN_TOOLTIP="(ZKAI)摄像头返回参数(宽高,获取帧缓冲,获取ID)",bF.MPYTHON_ZKAI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",bF.MPYTHON_ZKAI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",bF.MPYTHON_ZKAI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",bF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",bF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",bF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",bF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%A2%9E%E7%9B%8A%E5%80%BC",bF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_MESSAGE0="摄像头 获取增益值",bF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_TOOLTIP="获取摄像头增益值",bF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",bF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 水平镜像%1",bF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",bF.MPYTHON_ZKAI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",bF.MPYTHON_ZKAI_IMAGE_LAB_MESSAGE0="寻找颜色 LAB值%1",bF.MPYTHON_ZKAI_IMAGE_LAB_TOOLTIP="image寻找颜色",bF.MPYTHON_ZKAI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",bF.MPYTHON_ZKAI_TRACE_COLOR_MESSAGE0="(掌控AI)追蹤色塊 LAB顏色%1 邊界框小於%2 像素小於%3 過濾",bF.MPYTHON_ZKAI_TRACE_COLOR_TOOLTIP="追蹤色塊",bF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_HELPURL="",bF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(掌控AI)追蹤色塊 顯示%1",bF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",bF.MPYTHON_ZKAI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_ALL_MESSAGE0="(掌控AI)%1獲取識別後色塊的 所有參數",bF.MPYTHON_ZKAI_BLOB_ALL_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_X_MESSAGE0="(掌控AI)%1獲取識別後色塊的 x座標",bF.MPYTHON_ZKAI_BLOB_X_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_Y_MESSAGE0="(掌控AI)%1獲取識別後色塊的 y座標",bF.MPYTHON_ZKAI_BLOB_Y_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_W_MESSAGE0="(掌控AI)%1獲取識別後色塊的 寬度",bF.MPYTHON_ZKAI_BLOB_W_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_H_MESSAGE0="(掌控AI)%1獲取識別後色塊的 高度",bF.MPYTHON_ZKAI_BLOB_H_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_NUMBER_MESSAGE0="(掌控AI)%1獲取識別後色塊的 數量",bF.MPYTHON_ZKAI_BLOB_NUMBER_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_CENTER_X_MESSAGE0="(掌控AI)%1獲取識別後色塊的 中心x座標",bF.MPYTHON_ZKAI_BLOB_CENTER_X_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_CENTER_Y_MESSAGE0="(掌控AI)%1獲取識別後色塊的 中心y座標",bF.MPYTHON_ZKAI_BLOB_CENTER_Y_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",bF.MPYTHON_ZKAI_BLOB_ORTHOGON_MESSAGE0="(掌控AI)%1獲取識別後色塊的 矩形",bF.MPYTHON_ZKAI_BLOB_ORTHOGON_TOOLTIP="返回blob 類 -- 色塊對象",bF.MPYTHON_ZKAI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_FACE_TRACKING_MESSAGE0="(掌控AI)選擇訓練模型 人臉",bF.MPYTHON_ZKAI2_FACE_TRACKING_TOOLTIP="可以識別並且追蹤人臉,顯示人臉大小等",bF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_MESSAGE0="(掌控AI)調用攝像頭進行 人臉識別",bF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_TOOLTIP="調用攝像頭進行 人臉識別",bF.MPYTHON_ZKAI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_MESSAGE0="(掌控AI)獲取識別後人臉的 所有參數",bF.MPYTHON_ZKAI2_RESULT_FACE_TOOLTIP="獲取識別後人臉的 所有參數",bF.MPYTHON_ZKAI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_X_MESSAGE0="(掌控AI)獲取識別後人臉的 x座標",bF.MPYTHON_ZKAI2_RESULT_FACE_X_TOOLTIP="獲取識別後人臉的 x座標",bF.MPYTHON_ZKAI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_Y_MESSAGE0="(掌控AI)獲取識別後人臉的 y座標",bF.MPYTHON_ZKAI2_RESULT_FACE_Y_TOOLTIP="獲取識別後人臉的 y座標",bF.MPYTHON_ZKAI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_W_MESSAGE0="(掌控AI)獲取識別後人臉的 寬度",bF.MPYTHON_ZKAI2_RESULT_FACE_W_TOOLTIP="獲取識別後人臉的 寬度",bF.MPYTHON_ZKAI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_H_MESSAGE0="(掌控AI)獲取識別後人臉的 高度",bF.MPYTHON_ZKAI2_RESULT_FACE_H_TOOLTIP="獲取識別後人臉的 高度",bF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_MESSAGE0="(掌控AI)獲取識別後人臉的 置信度",bF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_TOOLTIP="獲取識別後人臉的 置信度",bF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_MESSAGE0="(掌控AI)獲取識別後人臉的 數量",bF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_TOOLTIP="獲取識別後人臉的 數量",bF.MPYTHON_ZKAI_LCD_DISPLAY_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddisplayimage-roiauto",bF.MPYTHON_ZKAI_LCD_DISPLAY_MESSAGE0="LCD 显示生效",bF.MPYTHON_ZKAI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示一张 image",bF.MPYTHON_ZKAI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",bF.MPYTHON_ZKAI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",bF.MPYTHON_ZKAI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",bF.MPYTHON_ZKAI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_20class_TRACKING_MESSAGE0="(掌控AI)選擇訓練模型 20類",bF.MPYTHON_ZKAI2_20class_TRACKING_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",bF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(掌控AI)調用攝像頭進行 20類識別",bF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_TOOLTIP="調用攝像頭進行 20類識別",bF.MPYTHON_ZKAI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_MESSAGE0="(掌控AI)獲取識別後20類的 所有參數",bF.MPYTHON_ZKAI2_RESULT_20CLASS_TOOLTIP="獲取識別後20類的 所有參數",bF.MPYTHON_ZKAI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_X_MESSAGE0="(掌控AI)獲取識別後20類的 x座標",bF.MPYTHON_ZKAI2_RESULT_20CLASS_X_TOOLTIP="獲取識別後20類的 x座標",bF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_MESSAGE0="(掌控AI)獲取識別後20類的 y座標",bF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_TOOLTIP="獲取識別後20類的 y座標",bF.MPYTHON_ZKAI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_W_MESSAGE0="(掌控AI)獲取識別後20類的 寬度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_W_TOOLTIP="獲取識別後20類的 寬度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_H_MESSAGE0="(掌控AI)獲取識別後20類的 高度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_H_TOOLTIP="獲取識別後20類的 高度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_MESSAGE0="(掌控AI)獲取識別後20類的 置信度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_TOOLTIP="獲取識別後20類的 置信度",bF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(掌控AI)獲取識別後20類的 數量",bF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_TOOLTIP="獲取識別後20類的 數量",bF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_MESSAGE0="(掌控AI)獲取識別後20類的 類型",bF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",bF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_MESSAGE0="(掌控AI)獲取識別後20類的 類型數量",bF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_TOOLTIP="獲取識別後20類的 類型數量",bF.MPYTHON_ZKAI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_NUMBER_DISCERN_MESSAGE0="(掌控AI)選擇訓練模型 手寫數字",bF.MPYTHON_ZKAI2_NUMBER_DISCERN_TOOLTIP="選擇訓練模型 手寫數字",bF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",bF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_MESSAGE0="(掌控AI)調用攝像頭進行 手寫數字識別",bF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_TOOLTIP="調用攝像頭進行 手寫數字識別",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_MESSAGE0="(掌控AI)獲取識別後手寫數字的 所有參數",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_TOOLTIP="獲取識別後手寫數字的 所有參數",bF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_MESSAGE0="(掌控AI)獲取識別後手寫數字的 數字",bF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_TOOLTIP="獲取識別後手寫數字的 數字",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(掌控AI)獲取識別後手寫數字的 置信度",bF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_TOOLTIP="獲取識別後手寫數字的 置信度",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_TOOLTIP="",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_MESSAGE0="获取 识别%1",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_MESSAGE0="获取 识别 所有参数",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_MESSAGE0="人脸识别",bF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_TOOLTIP="可以放入获取识别的参数",bF.MPYTHON_ZKAI_IMAGE_20CLASS_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",bF.MPYTHON_ZKAI_IMAGE_20CLASS_TOOLTIP="可以放入获取识别的参数,可以识别20个类型,分别是飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛, 餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",bF.MPYTHON_ZKAI_LCD_SHOW_REC_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawrectanglex-y-w-h-color-thickness1-fillfalse",bF.MPYTHON_ZKAI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",bF.MPYTHON_ZKAI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",bF.MPYTHON_ZKAI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",bF.MPYTHON_ZKAI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",bF.MPYTHON_ZKAI_LCD_SHOW_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawlinex0-y0-x1-y1-color-thickness1",bF.MPYTHON_ZKAI_LCD_CLEAR_ALL_MESSAGE0="LCD 显示清空",bF.MPYTHON_ZKAI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",bF.MPYTHON_ZKAI_LCD_CLEAR_ALL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdclear",bF.MPYTHON_ZKAI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",bF.MPYTHON_ZKAI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",bF.MPYTHON_ZKAI_LCD_return_colour_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagegetpixelx-y-rgbtuple",bF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",bF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",bF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcirclex-y-radius-color-thickness1-fillfalse",bF.MPYTHON_ZKAI_LCD_TEXT_MOST_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",bF.MPYTHON_ZKAI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",bF.MPYTHON_ZKAI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",bF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",bF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",bF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcrossx-y-color-size5-thickness1",bF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",bF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",bF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawarrowx0-y0-x1-y1-color-thickness1",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-2%EF%BC%9A-%E6%98%BE%E7%A4%BA%E5%9B%BE%E7%89%87",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagetorainbowcopyfalse",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="LCD 显示热图颜色",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="可以在液晶屏上显示一张 image的热图颜色",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagesavepath-roi-quality50",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagecopyroi-copytofbfalse",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",bF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_NEGATE="數字反轉",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻轉",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="線性極",bF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="對數極",bF.MPYTHON_ZKAI_SENSOR_PATTERN_GRAYSCALE="灰度",bF.MPYTHON_ZKAI_SENSOR_PATTERN_COLOR="彩色",bF.MPYTHON_ZKAI_SENSOR_ENABLE_START="開始抓取圖像",bF.MPYTHON_ZKAI_SENSOR_ENABLE_STOP="停止抓取圖像",bF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_H="水平鏡像",bF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_V="垂直翻轉",bF.MPYTHON_ZKAI_SENSOR_SETS_CONTRAST="對比度",bF.MPYTHON_ZKAI_SENSOR_SETS_BRIGHTNESS="亮度",bF.MPYTHON_ZKAI_SENSOR_SETS_SATURATION="飽和度",bF.MPYTHON_ZKAI2_FACE_YOLO="人臉識別",bF.MPYTHON_ZKAI2_CLASS_20_YOLO="20類識別",bF.MPYTHON_ZKAI2_MNIST_NET="数字识别",bF.MPYTHON_ZKAI2_PHOTOGRAPH_FACE_YOLO="人臉",bF.MPYTHON_ZKAI2_PHOTOGRAPH_CLASS_20_YOLO="0類",bF.MPYTHON_ZKAI_TRACE_COLOR_RECTANGLE="矩形",bF.MPYTHON_ZKAI_TRACE_COLOR_CROSS="十字",bF.MPYTHON_NAME_PYTHON_ENVIRONMENT_HELPURL="",bF.MPYTHON_NAME_PYTHON_ENVIRONMENT_MESSAGE0="聲明python 運行環境",bF.MPYTHON_NAME_PYTHON_ENVIRONMENT_TOOLTIP="",bF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="I2C獲取顔色",bF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="返回列表",bF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",bF.MPYTHON_LARK_GET_COLOR_MESSAGE0="I2C獲取 %1",bF.MPYTHON_lARK_RED="紅色",bF.MPYTHON__LARK_GREEN="綠色",bF.MPYTHON__LARK_BLUE="藍色",bF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",bF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="I2C獲取HSV",bF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",bF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="i2C獲取HSV %1",bF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",bF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="I2C獲取顔色",bF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",bF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="識別 %1",bF.MPYTHON_LARK_RED="紅色",bF.MPYTHON_LARK_GREEN="綠色",bF.MPYTHON_LARK_BLUE="藍色",bF.MPYTHON_LARK_ORANGE="橙色",bF.MPYTHON_LARK_YELLOW="黃色",bF.MPYTHON_LARK_PURPLE="紫色",bF.MPYTHON_LARK_CYAN="青色",bF.MPYTHON_LARK_NONE="無色",bF.MPYTHON_LARK_NULL="無法獲取",bF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",bF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="I2C超聲波",bF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",bF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="I2C設置 %1 速度 %2",bF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",bF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="I2C獲取 %1 巡綫值",bF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="右邊",bF.mpython_LARK_GET_LINE_LEFT_ON_I2C="左邊",bF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",bF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="I2C循跡傳感器 %1 遇到黑綫",bF.MPYTHON_LARK_SEARCH_LEFT="左邊",bF.MPYTHON_LARK_SEARCH_RIGHT="右邊",bF.MPYTHON_LARK_SEARCH_LEFT2="兩邊都",bF.MPYTHON_LARK_SEARCH_RIGHT2="兩邊都無",bF.MPYTHON_LARK_SEARCH_BOTH="兩邊都",bF.MPYTHON_LARK_SEARCH_NONE="兩邊都無",bF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",bF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="千里馬獲取顔色",bF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",bF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="千里馬獲取 %1",bF.MPYTHON_lARK_CAR_RED="紅色",bF.MPYTHON__LARK_CAR_GREEN="綠色",bF.MPYTHON__LARK_CAR_BLUE="藍色",bF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",bF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="千里馬獲取HSV",bF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",bF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="千里馬HSV %1",bF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",bF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="千里馬識別顔色",bF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",bF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="千里馬識別顔色 %1",bF.MPYTHON_LARK_CAR_RED="紅色",bF.MPYTHON_LARK_CAR_GREEN="綠色",bF.MPYTHON_LARK_CAR_BLUE="藍色",bF.MPYTHON_LARK_CAR_ORANGE="橙色",bF.MPYTHON_LARK_CAR_YELLOW="黃色",bF.MPYTHON_LARK_CAR_PURPLE="紫色",bF.MPYTHON_LARK_CAR_CYAN="青色",bF.MPYTHON_LARK_CAR_NONE="無識別",bF.MPYTHON_LARK_CAR_NULL="識別錯誤",bF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",bF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="千里馬獲取超聲波",bF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",bF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="千里馬獲取 %1 循跡數值",bF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="右邊",bF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="左邊",bF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",bF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="千里馬循跡 %1 碰到黑綫",bF.MPYTHON_LARK_CAR_SEARCH_LEFT="左邊",bF.MPYTHON_LARK_CAR_SEARCH_RIGHT="右邊",bF.MPYTHON_LARK_CAR_SEARCH_LEFT2="兩邊",bF.MPYTHON_LARK_CAR_SEARCH_NONE="兩邊都沒有",bF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",bF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="電機驅動 %1 速度 %2",bF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",bF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="千里馬 %1 速度 %2",bF.MPYTHON_LARK_CAR_MOTION_LEFT="左轉",bF.MPYTHON_LARK_CAR_MOTION_RIGHT="右轉",bF.MPYTHON_LARK_CAR_MOTION_FORWARD="前進",bF.MPYTHON_LARK_CAR_MOTION_BACKWARD="後退",bF.MPYTHON_LARK_CAR_MOTION_STOP="停止",bF.MPYTHON_DEFINE_THREAD_MESSAGE0="定義線程 %1",bF.MPYTHON_RUN_THREAD_MESSAGE0="運行線程 %1",bF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) 轉換數字為bytes %1 %2 %3 %4 待轉換數字 %5",bF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) 解包bytes為數字 %1 %2 %3 %4 待轉換bytes %5",bF.LITTLE_ENDIAN="低字節序(默認)",bF.BIG_ENDIAN="高字節序",bF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[適用2.0板] 當掌控板 %1 時",bF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",bF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",bF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="向左傾斜",bF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="向右傾斜",bF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="向前傾斜",bF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="向後傾斜",bF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="正面朝上",bF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="正面朝下",bF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="被單擊",bF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="被雙擊",bF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="墜落",bF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="橫滾角",bF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="俯仰角",bF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",bF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",bF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="掌控板 %1",bF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",bF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",bF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="按鍵 %1 已經按下",bF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",bF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",bF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="按鍵 %1 曾經按下",bF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",bF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",bF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="按鍵 %1 按下過的次數",bF.MPYTHON2_BUTTON_EVENT_MESSAGE0="當按鍵 %1 被 %2 時",bF.MPYTHON2_BUTTON_EVENT_HELPURL="",bF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",bF.MPYTHON2_BUTTON_EVENT_PRESSED="按下",bF.MPYTHON2_BUTTON_EVENT_RELEASED="松開",bF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",bF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",bF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="觸摸鍵 %1 已經按下",bF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",bF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",bF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="觸摸鍵 %1 曾經按下",bF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",bF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",bF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="觸摸鍵 %1 按下過的次數",bF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",bF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",bF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="觸摸鍵 %1 值",bF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="當觸摸鍵 %1 被 %2 時",bF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",bF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",bF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="觸摸",bF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="釋放",bF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="設置觸摸鍵 %1 閥值為 %2",bF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",bF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",bF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",bF.BLE_UUID_TOOLTIP="",bF.BLE_SETUP_PERIPHERAL_HELPURL="",bF.BLE_SETUP_PERIPHERAL_TOOLTIP="",bF.BLE_SETUP_PERIPHERAL_MESSAGE0="構建 BLE 外圍設備對象 %1 顯示名稱 %2 Service UUID %3",bF.BLE_ADD_CHARACTERISTIC_HELPURL="",bF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",bF.BLE_ADD_CHARACTERISTIC_MESSAGE0="定義 BLE 屬性 %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",bF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",bF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",bF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE 外圍設備 %1",bF.BLE_START_BROADCASTING="開始廣播",bF.BLE_STOP_BROADCASTING="停止廣播",bF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",bF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",bF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="讀 BLE 設備的屬性 %1",bF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",bF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",bF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="寫 BLE 設備的屬性 %1 %2 值 %3 Notify %4",bF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",bF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",bF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE 外圍設備斷開連接",bF.BLE_PERIPHERAL_MAC_HELPURL="",bF.BLE_PERIPHERAL_MAC_TOOLTIP="",bF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE 外圍設備 MAC地址",bF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",bF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",bF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="當 BLE 與中央設備建立連接時 %1 連接句柄 %2 地址類型 %3 中央設備的MAC地址 %4",bF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",bF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",bF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="當 BLE 設備的屬性值被改寫時 %1 連接句柄 %2 被寫屬性句柄 %3 寫入的數據 %4",bF.BLE_SETUP_CENTERAL_HELPURL="",bF.BLE_SETUP_CENTERAL_TOOLTIP="",bF.BLE_SETUP_CENTERAL_MESSAGE0="構建 BLE 中央設備對象 顯示名稱 %1",bF.BLE_CENTERAL_CONNECT_HELPURL="",bF.BLE_CENTERAL_CONNECT_TOOLTIP="",bF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE 中央設備連接到 %1 %2",bF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",bF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",bF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE 外圍設備已連接 ?",bF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",bF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",bF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="設定 %1 為 已連接外圍設備 屬性對象 %2 Service UUID %3 Characteristic UUID %4",bF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",bF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",bF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="讀 已連接外圍設備的 屬性 %1 值",bF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",bF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",bF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="寫 已連接外圍設備的 屬性 %1 值 %2",bF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",bF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",bF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="當 已連接外圍設備發起 Notify 通知事件時 %1 屬性的值柄 %2 通知的屬性值 %3",bF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",bF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",bF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="已連接的外圍設備 %1",bF.BLE_CENTERAL_CLOSE_HELPURL="",bF.BLE_CENTERAL_CLOSE_TOOLTIP="",bF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE 中央設備 斷開連接",bF.BLE_INFO_NAME="藍牙名稱",bF.BLE_INFO_MAC="MAC地址",bF.BLE_INFO_RSSI="信號強度",bF.BLE_INFO_ADDRTYPE="地址類型",bF.BLE_INFO_ADVTYPE="廣播類型",bF.BLE_INFO_DATA="原始數據(元組)",bF.BLE_SETUP_UART_HELPURL="",bF.BLE_SETUP_UART_TOOLTIP="",bF.BLE_SETUP_UART_MESSAGE0="構建 BLE UART從機 顯示名稱 %1",bF.BLE_UART_IS_CONNECTED_HELPURL="",bF.BLE_UART_IS_CONNECTED_TOOLTIP="",bF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART 已連接 ?",bF.BLE_UART_ANY_HELPURL="",bF.BLE_UART_ANY_TOOLTIP="",bF.BLE_UART_ANY_MESSAGE0="BLE UART 可讀字節數量",bF.BLE_UART_IRQ_HELPURL="",bF.BLE_UART_IRQ_TOOLTIP="",bF.BLE_UART_IRQ_MESSAGE0="當 BLE UART 接收到數據時 %1 執行 %2",bF.BLE_UART_READ_HELPURL="",bF.BLE_UART_READ_TOOLTIP="從 UART 另一端發送過來的消息",bF.BLE_UART_READ_MESSAGE0="已接收數據",bF.BLE_UART_WRITE_HELPURL="",bF.BLE_UART_WRITE_TOOLTIP="",bF.BLE_UART_WRITE_MESSAGE0="BLE UART 發送字節 %1",bF.BLE_UART_CLOSE_HELPURL="",bF.BLE_UART_CLOSE_TOOLTIP="",bF.BLE_UART_CLOSE_MESSAGE0="BLE UART 斷開連接",bF.BLE_SETUP_UART_MASTER_HELPURL="",bF.BLE_SETUP_UART_MASTER_TOOLTIP="",bF.BLE_SETUP_UART_MASTER_MESSAGE0="構建 BLE UART主機 連接到 %1 %2",bF.BLE_SETUP_HID_HELPURL="",bF.BLE_SETUP_HID_TOOLTIP="",bF.BLE_SETUP_HID_MESSAGE0="構建 BLE HID %1 對象 %2 顯示名稱 %3 電池電量 %4",bF.BLE_HID_MOUSE="鼠標",bF.BLE_HID_KEYBOARD="鍵盤",bF.BLE_HID_CONSUMER="遙控器",bF.BLE_HID_ADVERTISE_HELPURL="",bF.BLE_HID_ADVERTISE_TOOLTIP="",bF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID設備 %1",bF.BLE_HID_CONNECT_EVENT_HELPURL="",bF.BLE_HID_CONNECT_EVENT_TOOLTIP="",bF.BLE_HID_CONNECT_EVENT_MESSAGE0="當 BLE HID設備 連接時",bF.BLE_HID_DISCONNECT_HELPURL="",bF.BLE_HID_DISCONNECT_TOOLTIP="",bF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID設備 斷開連接",bF.BLE_HID_BATTERY_LEVEL_HELPURL="",bF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",bF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID設備 電池電量",bF.BLE_HID_MOUSE_BUTTONS_HELPURL="",bF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",bF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="鼠標鍵 %1",bF.BLE_HID_MOUSE_CLICK_HELPURL="",bF.BLE_HID_MOUSE_CLICK_TOOLTIP="",bF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID 鼠標 點擊按鍵 %1",bF.BLE_HID_MOUSE_PRESS_HELPURL="",bF.BLE_HID_MOUSE_PRESS_TOOLTIP="",bF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID 鼠標 長按按鍵 %1",bF.BLE_HID_MOUSE_RELEASE_HELPURL="",bF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",bF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID 鼠標 釋放按鍵 %1",bF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",bF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",bF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID 鼠標 釋放所有按鍵",bF.BLE_HID_MOUSE_MOVE_HELPURL="",bF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - 光標移動量,範圍 ±127 。\nwheel - 滾輪,範圍 ±127 。",bF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID 鼠標 光標移動 %1 X軸移動量 %2 Y軸移動量 %3 滾輪 %4",bF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",bF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",bF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="鍵盤按鍵 %1",bF.BLE_HID_KEYBOARD_SEND_HELPURL="",bF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",bF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID 鍵盤 按下按鍵 %1",bF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",bF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",bF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID 鍵盤 同時按下按鍵 %1 %2 %3",bF.BLE_HID_KEYBOARD_PRESS_HELPURL="",bF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",bF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID 鍵盤 長按按鍵 %1",bF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",bF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",bF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID 鍵盤 釋放按鍵 %1",bF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",bF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",bF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID 鍵盤 釋放所有按鍵",bF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",bF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",bF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="遙控器鍵 %1",bF.BLE_HID_CONSUMER_SEND_HELPURL="",bF.BLE_HID_CONSUMER_SEND_TOOLTIP="",bF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID 遙控器點擊 %1",bF.BLE_SETUP_IBEACON_HELPURL="",bF.BLE_SETUP_IBEACON_TOOLTIP="",bF.BLE_SETUP_IBEACON_MESSAGE0="構建 BLE iBeacon設備 %1 UUID %2 major %3 minor %4",bF.BLE_IBEACON_ADVERTISE_HELPURL="",bF.BLE_IBEACON_ADVERTISE_TOOLTIP="",bF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon設備 %1",bF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",bF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="返回電量,單位mV",bF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="拓展板的電壓值(mV)",bF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",bF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="返回編碼後的紅外脈沖數據buff",bF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="拓展板 紅外脈沖任意編碼 %1 載波頻率(Hz) %2 code總數 %3 循環碼位置 %4 code列表 %5 編碼波形數據 %6",bF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",bF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="返回編碼後的紅外脈沖數據buff\n用戶碼:0~255\n命令碼:0~255",bF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="拓展板 紅外脈沖NEC編碼 %1 用戶碼 %2 命令碼 %3",bF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",bF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",bF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="拓展板 發送紅外脈沖數據 %1 %2",bF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="只發一次",bF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="持續發送",bF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",bF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="當發送重復碼後,使用此函數來停止發送。",bF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="拓展板 停止發送紅外脈沖數據",bF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",bF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="學習開始後,需等待4秒,之後返回學習結果。",bF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="拓展板 開始紅外學習",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="拓展板 紅外學習有結果 ?",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP="返回學習後的“紅外編碼數據”,須在 learn 函數後使用。",bF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="拓展板 學習到的紅外編碼數據",bF.MPYTHON_MLX90615_SET_HELPURL="",bF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 非接觸測溫傳感器 設置發射系數%1",bF.MPYTHON_MLX90615_SET_TOOLTIP="",bF.MPYTHON_MLX90615_GET_HELPURL="",bF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 非接觸測溫傳感器 獲取系數",bF.MPYTHON_MLX90615_GET_TOOLTIP="",bF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",bF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 非接觸測溫傳感器 獲取測溫",bF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",bF.MPYTHON_MQ135_INIT_HELPURL="",bF.MPYTHON_MQ135_INIT_MESSAGE0="MQ135初始化 輸出引腳%1 溫度%2 ℃ 濕度%3 %",bF.MPYTHON_MQ135_INIT_TOOLTIP="MQ135上的VCC 連接擴展板的電源口 V ,GND連接擴展板的地線口 G ,AO輸出連接擴展板的引腳 P0/P1(即選引腳)\nMQ135主要用於檢測空氣中的二氧化碳、酒精、苯、氮氧化物、氨等氣體的濃度",bF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 返回 %1",bF.MPYTHON_MQ135_OPTIONS_HELPURL="",bF.MPYTHON_MQ135_OPTIONS_TOOLTIP="返回探測到的二氧化碳的百萬分之一(假設只有空氣中的二氧化碳) ppm濃度",bF.MPYTHON_MQ135_GET_RZERO="校正傳感器電阻",bF.MPYTHON_MQ135_GET_CORRECTED_RZERO="校正傳感器電阻(校準溫度、濕度)",bF.MPYTHON_MQ135_GET_PPM="二氧化碳、酒精、苯、氮氧化物、氨等氣體ppm濃度",bF.MPYTHON_MQ135_GET_CORRECTED_PPM="二氧化碳、酒精、苯、氮氧化物、氨等氣體ppm濃度(校準溫度、濕度)",bF.mpython_gyroscope_get_HELPURL="",bF.mpython_gyroscope_get_MESSAGE0="%1 軸角速度",bF.mpython_gyroscope_get_TOOLTIP="v2.3版本以上掌控版適用",bF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",bF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",bF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",bF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",bF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",bF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",bF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",bF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",bF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",bF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="設置角速度範圍,默認為 ±256dps。僅適用於掌控板2.3及以上版本",bF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="設置角速度範圍為 %1",bF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",bF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="校準陀螺儀角速度計的3個軸(x,y,z)的角速度值偏差。\n一般情況下無需校準,只有遇到角速度偏差較大時才要校準。\n x , y , z 為調整偏差值,可修正範圍為 ±1024dps。\n註意:v2.3版本以後適用",bF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="校準角速度值 %1 X軸偏差 %2 Y軸偏差 %3 Z軸偏差 %4";const xF=bF,vF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"is number",TEXT_IS_ALPHA:"is letter",TEXT_IS_ALNUM:"is mix of numbers and letters",REDO:"Redo",UNDO:"Undo",DELETE_VARIABLE:'Delete "%1" variable',DELETE_VARIABLE_CONFIRMATION:'Delete %1 of the "%2" variable?',CONTROLS_REPEAT_FOREVER:"repeat forever",CONTROLS_REPEAT_FOREVER_TOOLTIP:"Do some statements forever times",TEXT_LIST_START:"create list [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"create tuple (",TEXT_TUPLE_END:")",TEXT_DICT_START:"create dictionary {",TEXT_DICT_END:"}",TEXT_SET_START:"create set {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",TUPLE_CREATE_EMPTY_TITLE:"create empty tuple",DICT_CREATE_EMPTY_TITLE:"create empty dictionary",SET_CREATE_EMPTY_TITLE:"create empty sets",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"tuple",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"dictionary",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"sets",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or rearrange sections to reconfigure this tuple block.",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or rearrange sections to reconfigure this dictionary block.",TUPLE_CREATE_WITH_INPUT_WITH:"create tuple with",DICT_CREATE_WITH_INPUT_WITH:"create dictionary with",SET_CREATE_WITH_INPUT_WITH:"create sets with",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the tuple.",DICT_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the dictionary.",SET_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the sets.",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"ascending",LISTS_SORT_ORDER_DESCENDING:"descending",LISTS_SORT_TITLE:"sort %1 %2 %3",LISTS_SORT_TOOLTIP:"Sort a copy of a list.",LISTS_SORT_TYPE_IGNORECASE:"by letter, ignore case",LISTS_SORT_TYPE_NUMERIC:"by number",LISTS_SORT_TYPE_TEXT:"by letter",labplus_mapping_MESSAGE0:"map %1 from %2 , %3 to %4 , %5",labplus_mapping_TOOLTIP:"Map 10 of 0~100 to 0~200 and return the mapped value",labplus_mapping_HELPURL:"",MPYTHON_OPEN:"on",MPYTHON_CLOSE:"off",MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT:"shift left",MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT:"shift right",MPYTHONBOX_RGB_IMAGE_SHIFT_UP:"shift up",MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN:"shift down",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE:"grayscale",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW:"rainbow",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE:"negate",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT:"invert",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR:"line polar",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR:"log polar",MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE:"grayscale",MPYTHON_AI_SENSOR_PATTERN_COLOR:"color",MPYTHON_AI_SENSOR_ENABLE_START:"start capturing image",MPYTHON_AI_SENSOR_ENABLE_STOP:"stop capturing image",MPYTHON_AI_SENSOR_LEVEL_MI_H:"horizontal mirror",MPYTHON_AI_SENSOR_LEVEL_MI_V:"vertical flip",MPYTHON_AI_SENSOR_SETS_CONTRAST:"contrast",MPYTHON_AI_SENSOR_SETS_BRIGHTNESS:"brightness",MPYTHON_AI_SENSOR_SETS_SATURATION:"saturation",MPYTHON_AI2_FACE_YOLO:"FACE YOLO",MPYTHON_AI2_CLASS_20_YOLO:"CLASS 20 YOLO",MPYTHON_AI_TRACE_COLOR_RECTANGLE:"rectangle",MPYTHON_AI_TRACE_COLOR_CROSS:"cross",TEXT_APPEND_TEXT_HELPURL:"",TEXT_APPEND_TEXT_TOOLTIP:"",TEXT_APPEND_TEXT_MESSAGE0:"%1 append text %2",MPYTHON_AUDIO_PLAY_chirp_MESSAGE0:"鸟叫",MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0:"钢琴黑暗旋律配乐",MPYTHON_AUDIO_PLAY_miaow_MESSAGE0:"猫叫",MPYTHON_AUDIO_PLAY_bark_MESSAGE0:"小狗吠叫",MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0:"浑厚的打击音",MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0:"紧张效果的音效",MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0:"拍照快门声",MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0:"数百只苍蝇",MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0:"蟋蟀叫声",MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0:"摇晃低音声线",MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0:"听众欢呼掌声",MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0:"邮轮汽笛",MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0:"现代电话铃声",MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0:"拔萝卜",MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0:"两只老虎",MPYTHON_AUDIO_SET_VOLUME_HELPURL:"",MPYTHON_AUDIO_SET_VOLUME_MESSAGE0:"set Audio volume as %1",MPYTHON_AUDIO_SET_VOLUME_TOOLTIP:"",MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL:"",MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0:"expansion-board speed of DC motor %1",MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP:"",MPYTHON_M1M2_LED_ON_HELPURL:"",MPYTHON_M1M2_LED_ON_MESSAGE0:"expansion-board set led at %1 brightness %2",MPYTHON_M1M2_LED_ON_TOOLTIP:"",MPYTHON_M1M2_LED_OFF_HELPURL:"",MPYTHON_M1M2_LED_OFF_MESSAGE0:"expansion-board turn off led at %1",MPYTHON_M1M2_LED_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0:"I2C RFID Read wallet data",MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP:"Read block data, length 16 bytes",MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0:"I2C RFID Write wallet data%1",MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP:"Write block data, length 16 bytes",MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0:"I2C RFID wallet%1 money%2",MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0:"Recharge",MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0:"Deduction fee",MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0:"I2C RFID Get wallet balance",MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0:"I2C RFID Get serial number",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0:"I2C RFID Initialize Wallet",MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0:"I2C RFID scanning",MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0:"I2C ultrasonic value",MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP:"",MPYTHON_BLUEBIT_ULTRASONIC_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0:"%1 on pin %2 be triggered",MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP:"",MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0:"%1 on pin %2 analog value",MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP:"",MPYTHON_BLUEBIT_READ_ANALOG_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0:"set LED on pin %2 value as %1",MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP:"",MPYTHON_BLUEBIT_SET_ANALOG_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0:"tracking sensor on pin %1 detected as black",MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP:"",MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_TRUE_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0:"turn on %1 on pin %2",MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FALSE_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0:"turn off %1 on pin %2",MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL:"http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0:"turn on recorder %1 %2 REC %3 PLAY %4",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL:"http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0:"turn off recorder %1 REC %2 PLAY %3",MPYTHON_BLUEBIT_VOICE_RECORD_PLAY:"PLAY",MPYTHON_BLUEBIT_VOICE_RECORD_REC:"REC",STOP:("STOP","STOP"),MPYTHON_BLUEBIT_IR_RECEIVE:"infrared detection",MPYTHON_BLUEBIT_SOUND:"microphone",MPYTHON_BLUEBIT_LINE_FOLLOWER:"tracking sensor",MPYTHON_BLUEBIT_VIBRATION:"vibration sensor",MPYTHON_BLUEBIT_RFID:"RF card",MPYTHON_BLUEBIT_FINGERPRINT_SCANNER:"fingerprint scanner",MPYTHON_BLUEBIT_PIR:"PIR sensor",MPYTHON_BLUEBIT_MAGNETIC:"magnetic switch",MPYTHON_BLUEBIT_BUTTON:"button",MPYTHON_BLUEBIT_RELAY:"relay",MPYTHON_BLUEBIT_LIMIT_SWITCH:"limit switch",MPYTHON_BLUEBIT_FAN:"fan",MPYTHON_BLUEBIT_LASER:"laser",MPYTHON_BLUEBIT_NTC_TEMP:"NTC temperature",MPYTHON_BLUEBIT_WATER:"water level",MPYTHON_BLUEBIT_SOIL_MOISTURE:"soil moisture",MPYTHON_BLUEBIT_ROTATE_DIMMER:"rotate dimmer",MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER:"sliding potentiometer",MPYTHON_BLUEBIT_ANALOG_LIGHT:"analog light",MPYTHON_BLUEBIT_LM35_TEMP:"LM35 temperature",MPYTHON_BLUEBIT_SMOKE:"smoke",MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE:"corotation",MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE:"reverse",MPYTHON_BLUEBIT_READ_SOIL_HELPURL:"",MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP:"New soil moisture",MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0:"soil moisture(new)%1",MPYTHON_BLUEBIT_MOTOR_ON_HELPURL:"http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP:"speed:Map -100~100 to -1023~1023",MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0:"turn on DC motor %1 speed %2 pin AIN1 %3 pin AIN2 %4",MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL:"http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0:"stop DC motor %1 pin AIN1 %2 pin AIN2 %3",MPYTHON_BLUEBIT_SET_FAN_HELPURL:"",MPYTHON_BLUEBIT_SET_FAN_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FAN_MESSAGE0:"expansion-board turn on the fan %1",MPYTHON_LEFT:"LEFT",MPYTHON_RIGHT:"RIGHT",MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL:"",MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0:"expansion-board turn off the fan %1",MPYTHON_BLUEBIT_4BUTTON_HELPURL:"http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",MPYTHON_BLUEBIT_4BUTTON_TOOLTIP:"",MPYTHON_BLUEBIT_4BUTTON_MESSAGE0:"Navigation button module pin %1 button %2 is pressed",BLUE:"A",GREEN:"B",RED:"C",YELLOW:"D",MPYTHON_BLUEBIT_JOYSTICK_HELPURL:"",MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP:"",MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0:"Thumb joystick pin A0 %1 pin A1 %2 %3 axis",MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP:"speed: 0~100",MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0:"expansion-board turn on DC motor %1 %2 speed %3",MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL:"",MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP:"speed: 0~100",MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0:"expansion-board stop DC motor",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP:"speed: -1023~1023",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0:"Coded motor mode%1 dial code%2 M1 speed%3 M2 speed%4",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP:"Stop Coding Motor Rotation",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0:"Stop Coding Motor Rotation %1",MPYTHON_BLUEBIT_INIT_MIDI_HELPURL:"",MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0:"Initialize MIDI TX pin %1",MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP:"",MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL:"",MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0:"Set MIDI volume as %1",MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP:"volume range:0~127",MIDI_PIANO:"ACOUSTIC GRAND PIANO",MIDI_BRIGHTACOUSTICPIANO:"BRIGHT ACOUSTIC PIANO",MIDI_ELECTRICGRANDPIANO:"ELECTRIC GRAND PIANO",MIDI_HARPSICHORD:"HARPSICHORD",MIDI_CELESTA:"CELESTA",MIDI_GLOCKENSPIEL:"GLOCKENSPIEL",MIDI_MUSICALBOX:"MUSICAL BOX",MIDI_MARIMBA:"MARIMBA",MIDI_XYLOPHONE:"XYLOPHONE",MIDI_TUBULARBELL:"TUBULAR BELL",MIDI_DULCIMER:"DULCIMER",MIDI_VIBRAPHONE:"VIBRAPHONE",MIDI_ORGAN:"DRAWBAR ORGAN",MIDI_ACOUSTIC_GUITAR:"ACOUSTIC GUITAR",MIDI_ELECTRIC_GUITAR:"ELECTRIC GUITAR",MIDI_ACOUSTIC_BASS:"ACOUSTIC BASS",MIDI_STRING_ENSEMBLE:"STRING ENSEMBLE",MIDI_VIOLIN:"VIOLIN",MIDI_TRUMPET:"TRUMPET",MIDI_SAX:"SAX",MIDI_STEEL_DRUMS:"STEEL DRUMS",MIDI_LEAD:"LEAD",MIDI_PAD:"PAD",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL:"",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0:"Set MIDI instrument as %1",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP:"",MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL:"",MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0:"MIDI %1 tone %2",MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0:"Set matrix`s brightness level as %1",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP:"brightness level:0~15",MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0:"Set matrix %1",MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0:"Set matrix %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0:"The setting of matrix takes effect",MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP:"",MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL:"",MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0:"Set MP3 volume as %1",MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP:"volume:0~30",MPYTHON_BLUEBIT_MP3_INIT_HELPURL:"",MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0:"Init MP3 TX pin %1",MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP:"The tx pin of the mPython board is connected to the RXI pin of the music module",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL:"",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0:"MP3 volume %1",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP:"",MPYTHON_PLUS_1:"plus 1",MPYTHON_MINUS_1:"minus 1",MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL:"",MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0:"Mp3 plays song with order %1",MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP:"",PAUSE:"PAUSE",PLAY:"GO ON",PLAYNEXT:"NEXT SONG",PLAYPREV:"LAST SONG",MPYTHON_BLUEBIT_MP3_CMD_HELPURL:"",MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0:"MP3 play %1",MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP:"",LABPLUS_USB_SWITCH_ON:"ON",LABPLUS_USB_SWITCH_OFF:"OFF",MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL:"",MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0:"MP3 single-loop mode %1",MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP:"",MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0:"Set EXT IO module`s IO %2 as %1",MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP:"IO: 0~7",LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT:"OUTPUT",LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT:"INPUT",MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0:"Value of EXT IO at IO %1",MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP:"",MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0:"Set EXT IO module`s IO %2 as %1",MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP:"",MPYTHON_LCD_OBJECT_HELPURL:"",MPYTHON_LCD_OBJECT_MESSAGE0:"initialise LCD1602",MPYTHON_LCD_OBJECT_TOOLTIP:"",MPYTHON_LCD_PRINT_HELPURL:"",MPYTHON_LCD_PRINT_MESSAGE0:"LCD1602 display %1",MPYTHON_LCD_PRINT_TOOLTIP:"",MPYTHON_LCD_HOME_HELPURL:"",MPYTHON_LCD_HOME_MESSAGE0:"LCD1602 cursor returns to the origin",MPYTHON_LCD_HOME_TOOLTIP:"",MPYTHON_LCD_CURSOR_HELPURL:"",MPYTHON_LCD_CURSOR_MESSAGE0:"LCD1602 cursor %1",MPYTHON_LCD_CURSOR_TOOLTIP:"",MPYTHON_LCD_SET_CURSOR_HELPURL:"",MPYTHON_LCD_SET_CURSOR_MESSAGE0:"LCD1602 starts with row %2 column %1",MPYTHON_LCD_SET_CURSOR_TOOLTIP:"Row and column count from 0",MPYTHON_LCD_CLEAR_HELPURL:"",MPYTHON_LCD_CLEAR_MESSAGE0:"LCD1602 clear",MPYTHON_LCD_CLEAR_TOOLTIP:"",MPYTHON_LCD_CURSOR_BLINK:"BLINK",MPYTHON_LCD_CURSOR_NO_BLINK:"NO BLINK",MPYTHON_LEFT_TO_RIGHT:"LEFT TO RIGHT",MPYTHON_RIGHT_TO_LEFT:"RIGHT TO LEFT",MPYTHON_LCD_TEXT_DIRECTION_HELPURL:"",MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0:"LCD1602 text direction %1",MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP:"",MPYTHON_LCD_MOVE_HELPURL:"",MPYTHON_LCD_MOVE_MESSAGE0:"LCD1602 scrolls a column to %1",MPYTHON_LCD_MOVE_TOOLTIP:"",MPYTHON_IR_TRANS_HELPURL:"",MPYTHON_IR_TRANS_MESSAGE0:"infrared transmission of string with one byte length %1 tx pin %2",MPYTHON_IR_TRANS_TOOLTIP:"string with one byte length: 'A', 'b', '1' and so on",OUTPUT_PIN_HELPURL:"",OUTPUT_PIN_MESSAGE0:"%1",OUTPUT_PIN_TOOLTIP:"",INPUT_PIN_HELPURL:"",INPUT_PIN_MESSAGE0:"%1",INPUT_PIN_TOOLTIP:"",READ_ANALOG_PIN_HELPURL:"",READ_ANALOG_PIN_MESSAGE0:"%1",READ_ANALOG_PIN_TOOLTIP:"",SET_DIGITAL_HELPURL:"",SET_DIGITAL_MESSAGE0:"%1",SET_DIGITAL_TOOLTIP:"",SET_ANALOG_HELPURL:"",SET_ANALOG_MESSAGE0:"%1",SET_ANALOG_TOOLTIP:"",ALL_PIN_HELPURL:"",ALL_PIN_MESSAGE0:"%1",ALL_PIN_TOOLTIP:"",PWM_PIN_HELPURL:"",PWM_PIN_MESSAGE0:"%1",PWM_PIN_TOOLTIP:"",DH11_HUM_TEM_PIN_HELPURL:"",DH11_HUM_TEM_PIN_MESSAGE0:"%1",DH11_HUM_TEM_PIN_TOOLTIP:"",UART_TX_PIN_HELPURL:"",UART_TX_PIN_MESSAGE0:"%1",UART_TX_PIN_TOOLTIP:"",UART_RX_PIN_HELPURL:"",UART_RX_PIN_MESSAGE0:"%1",UART_RX_PIN_TOOLTIP:"",I2C_PIN_HELPURL:"",I2C_PIN_MESSAGE0:"%1",I2C_PIN_TOOLTIP:"",MQTT_COMMON_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_COMMON_SETUP_MESSAGE0:"MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",MQTT_COMMON_SETUP_TOOLTIP:"",MQTT_TENCENT_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_TENCENT_SETUP_MESSAGE0:"MQTT Tencent IoT %1 Server %2 Port %3 AppId %4 Device %5 -- Output -- %6 ReportTopic %7 ControlTopic %8",MQTT_TENCENT_SETUP_TOOLTIP:"",MQTT_TENCENT_SETUPS_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_TENCENT_SETUPS_MESSAGE0:"MQTT Tencent IoT %1 Server %2 Port %3 AppId %4 Device %5 -- Output -- %6 ReportTopic %7 ControlTopic %8",MQTT_TENCENT_SETUPS_TOOLTIP:"",MQTT_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_SETUP_MESSAGE0:"MQTT-Easy IoT %1 Server %2 Client ID %5 Iot_id %3 Iot_pwd %4",MQTT_SETUP_TOOLTIP:"",MQTT_CONNECT_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_CONNECT_MESSAGE0:"connect to MQTT",MQTT_CONNECT_TOOLTIP:"",MQTT_PUBLISH_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_PUBLISH_MESSAGE0:"publish %1 to topic %2",MQTT_PUBLISH_TOOLTIP:"",MQTT_REC_FROM_TOPIC_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_REC_FROM_TOPIC_MESSAGE0:"when recieved %2 from topic %1",MQTT_REC_FROM_TOPIC_TOOLTIP:"",MQTT_RECEIVE_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_RECEIVE_MESSAGE0:"when recieved %2 from topic %1",MQTT_RECEIVE_TOOLTIP:'Parameter "topic" only accepts variable',MQTT_RECEIVED_MESSAGE0:"when recieved message from topic %1",MQTT_MESSAGE_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_MESSAGE_MESSAGE0:"message from MQTT",MQTT_MESSAGE_TOOLTIP:"",MQTT_WAIT_MSG_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_WAIT_MSG_MESSAGE0:"wait for topic message in %1 mode",MQTT_WAIT_MSG_TOOLTIP:"It is recommended to run in 'while True'",MQTT_DISCONNECT_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_DISCONNECT_MESSAGE0:"disconnect from MQTT",MQTT_DISCONNECT_TOOLTIP:"",MQTT_LAST_WILL_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",MQTT_LAST_WILL_MESSAGE0:"set MQTT topic %2 last will message as %1",MQTT_LAST_WILL_TOOLTIP:'Set the MQTT "last will" message. Should be called before connect().',MPYTHON_SIOT_CONNECT_HELPURL:"",MPYTHON_SIOT_CONNECT_TOOLTIP:"",MPYTHON_SIOT_CONNECT_MESSAGE0:"SIoT setting %1 client_id %2 server %3 user %4 password %5",MPYTHON_SIOT_ISCONNECTED_HELPURL:"",MPYTHON_SIOT_ISCONNECTED_TOOLTIP:"",MPYTHON_SIOT_ISCONNECTED_MESSAGE0:"SIoT is connected ?",MPYTHON_SIOT_SUBSCRIBE_HELPURL:"",MPYTHON_SIOT_SUBSCRIBE_TOOLTIP:"",MPYTHON_SIOT_SUBSCRIBE_MESSAGE0:"SIoT subscribe",MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE:"click the left star to subscribe SIoT topic",MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH:"subscribe SIoT Topic1",MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE:"Topic",MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP:"",MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD:"add up to 5 topics",MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP:"",MPYTHON_SIOT_DISCONNECT_HELPURL:"",MPYTHON_SIOT_DISCONNECT_TOOLTIP:"",MPYTHON_SIOT_DISCONNECT_MESSAGE0:"SIoT disconnect",MPYTHON_SIOT_MESSAGE_HELPURL:"",MPYTHON_SIOT_MESSAGE_TOOLTIP:"",MPYTHON_SIOT_MESSAGE_MESSAGE0:"SIoT message",MPYTHON_SIOT_TOPIC1:"Topic1",MPYTHON_SIOT_TOPIC2:"Topic2",MPYTHON_SIOT_TOPIC3:"Topic3",MPYTHON_SIOT_TOPIC4:"Topic4",MPYTHON_SIOT_TOPIC5:"Topic5",MPYTHON_SIOT_PUBLISH_HELPURL:"",MPYTHON_SIOT_PUBLISH_TOOLTIP:"",MPYTHON_SIOT_PUBLISH_MESSAGE0:"SIoT publish message %1 to %2",MPYTHON_SIOT_PUBLISH_TO_MESSAGE0:"SIoT publish message %1 to topic %2",MPYTHON_SIOT_RECEIVE_HELPURL:"",MPYTHON_SIOT_RECEIVE_TOOLTIP:"",MPYTHON_SIOT_RECEIVE_MESSAGE0:"when SIoT received message from %1 %2 do %3",MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0:"when SIoT received message from topic %1 %2 do %3",MPYTHON_IR_RECV_HELPURL:"",MPYTHON_IR_RECV_MESSAGE0:"infrared received int at rx pin %1",MPYTHON_IR_RECV_TOOLTIP:"The first time the receive is always empty",MPYTHON_BLUEBIT_OLED_PRINT_HELPURL:"",MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0:"bluebit OLED show %1 at x %2 y %3",MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_INIT_HELPURL:"",MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0:"bluebit OLED init at tx %1 rx %2",MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL:"",MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0:"bluebit OLED clear",MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_BMP_HELPURL:"",MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0:"bluebit OLED show image x %1 y %2 width %3 height %4 with hex image data %5",MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP:"",MICROBIT_GESTURE_SHAKE:"shake",MICROBIT_GESTURE_UP:"up",MICROBIT_GESTURE_DOWN:"down",MICROBIT_GESTURE_LEFT:"left",MICROBIT_GESTURE_RIGHT:"Right",MICROBIT_GESTURE_FACE_UP:"upward",MICROBIT_GESTURE_FACE_DOWN:"down",MICROBIT_GESTURE_FREEFAIL:"free fall",MICROBIT_IMAGE_HEART:"heart",MICROBIT_IMAGE_HEART_SMALL:"heart (small)",MICROBIT_IMAGE_HAPPY:"Happy",MICROBIT_IMAGE_SMILE:"Smile Face",MICROBIT_IMAGE_SAD:"sad",MICROBIT_IMAGE_CONFUSED:"confusion",MICROBIT_IMAGE_ANGRY:"angry",MICROBIT_IMAGE_ASLEEP:"Sleep",MICROBIT_IMAGE_SUPRISED:"surprise",MICROBIT_IMAGE_SILLY:"Stupid",MICROBIT_IMAGE_FABULOUS:"Wonderful",MICROBIT_IMAGE_MEH:"Boredom",MICROBIT_IMAGE_YES:"Yes",MICROBIT_IMAGE_NO:"No",MICROBIT_IMAGE_CLOCK12:"12 clock",MICROBIT_IMAGE_CLOCK11:"11 clock",MICROBIT_IMAGE_CLOCK10:"10 clock",MICROBIT_IMAGE_CLOCK9:"9 clock",MICROBIT_IMAGE_CLOCK8:"8 clock",MICROBIT_IMAGE_CLOCK7:"7 clock",MICROBIT_IMAGE_CLOCK6:"6 clock",MICROBIT_IMAGE_CLOCK5:"5 clock",MICROBIT_IMAGE_CLOCK4:"4 clock",MICROBIT_IMAGE_CLOCK3:"3 clock",MICROBIT_IMAGE_CLOCK2:"2 clock",MICROBIT_IMAGE_CLOCK1:"1 clock",MICROBIT_IMAGE_ARROW_N:"Arrow-North",MICROBIT_IMAGE_ARROW_NE:"Arrow-Northeast",MICROBIT_IMAGE_ARROW_E:"arrow-east",MICROBIT_IMAGE_ARROW_SE:"arrow-southeast",MICROBIT_IMAGE_ARROW_S:"Arrow-South",MICROBIT_IMAGE_ARROW_SW:"arrow-southwest",MICROBIT_IMAGE_ARROW_W:"Arrow-West",MICROBIT_IMAGE_ARROW_NW:"Arrow-Northwest",MICROBIT_IMAGE_TRIANGLE:"triangle",MICROBIT_IMAGE_TRIANGLE_LEFT:"left triangle",MICROBIT_IMAGE_CHESSBOARD:"chessboard",MICROBIT_IMAGE_DIAMOND:"diamond",MICROBIT_IMAGE_DIAMOND_SMALL:"diamond (small)",MICROBIT_IMAGE_SQUARE:"square",MICROBIT_IMAGE_SQUARE_SMALL:"Square (small)",MICROBIT_IMAGE_RABBIT:"Rabbit",MICROBIT_IMAGE_COW:"cow",MICROBIT_IMAGE_MUSIC_CROTCHET:"quarter note",MICROBIT_IMAGE_MUSIC_QUAVER:"octave",MICROBIT_IMAGE_MUSIC_QUAVERS:"tremolo",MICROBIT_IMAGE_PITCHFORK:"fork",MICROBIT_IMAGE_XMAS:"Christmas Tree",MICROBIT_IMAGE_PACMAN:"Bean Eater",MICROBIT_IMAGE_TARGET:"target",MICROBIT_IMAGE_TSHIRT:"T-shirt",MICROBIT_IMAGE_ROLLERSKATE:"Roller Skating",MICROBIT_IMAGE_DUCK:"duck",MICROBIT_IMAGE_HOUSE:"House",MICROBIT_IMAGE_TORTOISE:"tortoise",MICROBIT_IMAGE_BUTTERFLY:"Butterfly",MICROBIT_IMAGE_STICKFIGURE:"line drawing",MICROBIT_IMAGE_GHOST:"Ghost",MICROBIT_IMAGE_SWORD:"Sword",MICROBIT_IMAGE_GIRAFFE:"Giraffe",MICROBIT_IMAGE_SKULL:"Head",MICROBIT_IMAGE_UMBRELLA:"umbrella",MICROBIT_IMAGE_SNAKE:"snake",MICROBIT_IMAGE_ALL_CLOCKS:"All Clocks",MICROBIT_IMAGE_ALL_ARROWS:"All arrows",mpython_bme280_hum_tem_pre_MESSAGE0:("Meteorological %1","%1"),mpython_bme280_hum_tem_pre_TOOLTIP:("%","Air pressure unit is 'Pa', temperature unit is 'Celsius', ambient humidity unit is '%'"),mpythonbox_sound_MESSAGE0:"Sound value",mpythonbox_sound_TOOLTIP:"0~4095。",mpythonbox_sound_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",MPYTHONBOX_SLIDER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_SLIDER_MESSAGE0:"Slide bar",MPYTHONBOX_SLIDER_TOOLTIP:"0~4095。",MPYTHONBOX_5BUTTON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_5BUTTON_MESSAGE0:"Five way button%1",MPYTHONBOX_5BUTTON_TOOLTIP:"",MPYTHONBOX_MOTOR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_MOTOR_MESSAGE0:"Motor speed%1",MPYTHONBOX_MOTOR_TOOLTIP:"",MPYTHONBOX_ULTRASONIC_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",MPYTHONBOX_ULTRASONIC_MESSAGE0:"Ultrasonic",MPYTHONBOX_ULTRASONIC_TOOLTIP:"3~340CM",MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0:"Human body infrared",MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP:"",MPYTHONBOX_RGB_pixel_HELPURL:"",MPYTHONBOX_RGB_pixel_MESSAGE0:"Set column%1 line%2 R%3 G%4 B%5",MPYTHONBOX_RGB_pixel_TOOLTIP:"",MPYTHONBOX_RGB_get_pixel_HELPURL:"",MPYTHONBOX_RGB_get_pixel_MESSAGE0:"Returns the RGB color of column%1, line%2",MPYTHONBOX_RGB_get_pixel_TOOLTIP:"",MPYTHONBOX_RGB_ImageText_HELPURL:"",MPYTHONBOX_RGB_ImageText_MESSAGE0:"Scroll Display Text%1 Speed%2",MPYTHONBOX_RGB_ImageText_TOOLTIP:"",MPYTHONBOX_RGB_SetImage_HELPURL:("",""),MPYTHONBOX_RGB_SetImage_TOOLTIP:("",""),MPYTHONBOX_RGB_SetImage_MESSAGE0:("Create image %1 row1 %2 row2 %3 row3 %4 row4 %5 row5 %6","Create an image %1 The first line%2, the second line%3, the third line%4, the fourth line%5, the fifth line%6"),MPYTHONBOX_RGB_Image_HELPURL:"",MPYTHONBOX_RGB_Image_MESSAGE0:"According to the image%1",MPYTHONBOX_RGB_Image_TOOLTIP:"According to the image",MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0:"Display image/text %1",MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP:"",MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL:"",MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0:"Display image %1",MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP:"Display image。",MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL:"",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0:"Copy image %1",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP:"Copy image",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL:"",MPYTHONBOX_RGB_ImageCot_HELPURL:"",MPYTHONBOX_RGB_ImageCot_MESSAGE0:"Cut image%1 column%2 rows%3 width%4 high%5",MPYTHONBOX_RGB_ImageCot_TOOLTIP:"Cut image",MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0:"Built in image %1",MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP:"Select a built-in image.",MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL:"",MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0:"Translation image %1 %2 %3 ",MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP:"Move the image in a specific direction and return the result of the move.",MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL:"",MPYTHONBOX_RGB_clear_HELPURL:"",MPYTHONBOX_RGB_clear_MESSAGE0:"Turn off all RGB",MPYTHONBOX_RGB_clear_TOOLTIP:"",MPYTHONBOX_RGB_pixel_return_HELPURL:"",MPYTHONBOX_RGB_pixel_return_MESSAGE0:"Return %1 column %2 line colour",MPYTHONBOX_RGB_pixel_return_TOOLTIP:"Return to the number of columns, row RGB color",MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0:"%1Triaxial acceleration",MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP:"Unit g, range-2~+2g。",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0:"%1Triaxial angular velocity",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP:"range±500°/seconds",MPYTHONBOX_EULER_ANGLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_EULER_ANGLE_MESSAGE0:"%1Euler Angle",MPYTHONBOX_EULER_ANGLE_TOOLTIP:"Returns the current euler Angle(Pitch,Roll,Yaw),Unit Angle",MPYTHONBOX_QUATERNION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_QUATERNION_MESSAGE0:"%1quaternions",MPYTHONBOX_QUATERNION_TOOLTIP:"Returns the current quaternion(w,x,y,z)",MPYTHONBOX_CAMERA_LED_HELPURL:"",MPYTHONBOX_CAMERA_LED_MESSAGE0:"camear light %1",MPYTHONBOX_CAMERA_LED_TOOLTIP:"",LIST_FIRST_INDEX_HELPURL:"",LIST_FIRST_INDEX_MESSAGE0:"Location of item%1 in list%2 %3",LIST_FIRST_INDEX_TOOLTIP:"",MPYTHON_AI_LCD_INIT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",MPYTHON_AI_LCD_INIT_MESSAGE0:"Screen Initialization ",MPYTHON_AI_LCD_INIT_TOOLTIP:"",MPYTHON_AI_SENSOR_RESET_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",MPYTHON_AI_SENSOR_RESET_MESSAGE0:"Initialize the camera",MPYTHON_AI_SENSOR_RESET_TOOLTIP:"",MPYTHON_AI_SENSOR_ENABLE_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",MPYTHON_AI_SENSOR_ENABLE_MESSAGE0:"Camera%1",MPYTHON_AI_SENSOR_ENABLE_TOOLTIP:"",MPYTHON_AI_LCD_TEXT_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",MPYTHON_AI_LCD_TEXT_MESSAGE0:"Display text x %1 y %2 content %3",MPYTHON_AI_LCD_TEXT_TOOLTIP:"",MPYTHON_AI_SENSOR_SKIP_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",MPYTHON_AI_SENSOR_SKIP_MESSAGE0:"The number of frames skipped by the camera %1 Millisecond %2 ",MPYTHON_AI_SENSOR_SKIP_TOOLTIP:"",MPYTHON_AI_SENSOR_RETURN_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",MPYTHON_AI_SENSOR_RETURN_MESSAGE0:"测 摄像头 获取%1",MPYTHON_AI_SENSOR_RETURN_TOOLTIP:"",MPYTHON_AI_SENSOR_SETS_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",MPYTHON_AI_SENSOR_SETS_MESSAGE0:"Camera set %1 as %2",MPYTHON_AI_SENSOR_SETS_TOOLTIP:"",MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0:"Automatic gain of camera%1",MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP:"",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0:"Camera White Balance%1",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP:"",MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0:"Camera %1 %2",MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP:"",MPYTHON_AI_LCD_DISPLAY_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_DISPLAY_MESSAGE0:"Screen display takes effect",MPYTHON_AI_LCD_DISPLAY_TOOLTIP:"",MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0:"Image display takes effect x%1 y%2 wide%3 high%4",MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP:"",MPYTHON_AI_SENSOR_IMAGES_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",MPYTHON_AI_SENSOR_IMAGES_MESSAGE0:"Camera captures images",MPYTHON_AI_SENSOR_IMAGES_TOOLTIP:"",MPYTHON_AI_IMAGE_FACEDETECT_HELPURL:"https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0:"Face recognition",MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_REC_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_REC_MESSAGE0:"Rectangular%1 x%3 y%4 width%5 high%6 color R%7 G%8 B%9 coarsening%2",MPYTHON_AI_LCD_SHOW_REC_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0:"line x1%1 y1%2 reachx2%3 y2%4 Color isR%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_STRING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0:"Clear screen display",MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP:"",MPYTHON_AI_LCD_CLEAR_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_return_colour_MESSAGE0:"LCD Return x%1 y%2 colour",MPYTHON_AI_LCD_return_colour_TOOLTIP:"",MPYTHON_AI_LCD_return_colour_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0:"circular%1 x%2 y%3 radius%4 colour R%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_TEXT_MOST_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0:"Display text x %1 y %2 content %3 colourR%4 G%5 B%6 size%7",MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0:"Cross line x%1 y%2 colourR%3 G%4 B%5 size%6 Thickening%7",MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0:"Arrow x1%1 y1%2 x2%3 y2%4 colourR%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL:".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0:"Display image path%1",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0:"Image conversion to%1",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0:"Image from Cartesian coordinates to%1 Reprojection of coordinates %2",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0:"Image Expansion Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0:"Image Point Filtering Level%1 Wave filtering%2",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0:"Image Modal Filtering Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0:"Image Fuzzy Filtering Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0:"Image Cartoonization Level%1 Initial Pixel Difference%2 Adjacent pixel difference%3",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0:"Image 3D Rotation Up and Down%1 Rotate left and right%2 degrees%3 or so move%4 up and down move%5 zoom%6",MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0:"Save a copy of the image to the SD card image name%1 Image display area x%2 y%3 wide%4 high%5",MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0:"Create a copy of the image object to copy the image area x%1 y%2 wide%3 high%4",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP:"",MPYTHON_AI2_20CLASS_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_20CLASS_TRACKING_MESSAGE0:"20 kinds of recognition",MPYTHON_AI2_20CLASS_TRACKING_TOOLTIP:"",MPYTHON_AI2_NUMBER_DISCERN_HELPURL:("https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model","https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model"),MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0:("Handwritten Number Recognition",'set the training model to "Number ID"'),MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP:("","Select training model handwritten numerals"),MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0:"screen x%1 y%2 Display color R%3 G%4 B%5",MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP:"",MPYTHON_AI_LCD_COLOUR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",MPYTHON_AI_LCD_COLOUR_MESSAGE0:"Screen Initialization Display Color R%1 G%2 B%3",MPYTHON_AI_LCD_COLOUR_TOOLTIP:"",MPYTHON_AI_SENSOR_PATTERN_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",MPYTHON_AI_SENSOR_PATTERN_MESSAGE0:"Initialize the camera, set pixel mode as %1",MPYTHON_AI_SENSOR_PATTERN_TOOLTIP:"",MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL:("",""),MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0:("Tracking color display%1","Trace color display%1"),MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP:("",""),MPYTHON_AI2_FACE_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_FACE_TRACKING_MESSAGE0:'set the training model to "Face ID"',MPYTHON_AI2_FACE_TRACKING_TOOLTIP:"It can recognize and track faces, display face size and so on",MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0:'call the camera for "Face ID"',MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP:"It can recognize and track faces, display face size and so on",MPYTHON_AI2_RESULT_FACE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_MESSAGE0:'get the recognition result of "Face ID"',MPYTHON_AI2_RESULT_FACE_TOOLTIP:"After acquisition and identification All the parameters",MPYTHON_AI2_RESULT_FACE_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_X_MESSAGE0:'get the X coordinate of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_X_TOOLTIP:"After acquisition and identification x coordinates",MPYTHON_AI2_RESULT_FACE_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0:'get the Y coordinate of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP:"After acquisition and identification y coordinates",MPYTHON_AI2_RESULT_FACE_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_W_MESSAGE0:'get the width of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_W_TOOLTIP:"After acquisition and identification width",MPYTHON_AI2_RESULT_FACE_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_H_MESSAGE0:'get the height of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_H_TOOLTIP:"After acquisition and identification height",MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0:'get the confidence of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP:"After acquisition and identification Confidence",MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0:'get the object count of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP:"After acquisition and identification number",MPYTHON_AI2_20class_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_20class_TRACKING_MESSAGE0:'set the training model to "20 Class ID"',MPYTHON_AI2_20class_TRACKING_TOOLTIP:"Can identify 20 types, respectively are 0-19 for aircraft, bicycle, bird, boat, bottle, bus, car, cat, chair, cow, dining table, dog, house, motorcycle, person, potted plant, sheep, sofa, train, TV",MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0:'call the camera for "20 Class ID"',MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP:"",MPYTHON_AI2_RESULT_20CLASS_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_MESSAGE0:'get the recognition result of "20 Class ID"',MPYTHON_AI2_RESULT_20CLASS_TOOLTIP:"After acquisition and identification All the parameters",MPYTHON_AI2_RESULT_20CLASS_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0:'get the X coordinate of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP:"After acquisition and identification x coordinates",MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0:'get the Y coordinate of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP:"After acquisition and identification y coordinates",MPYTHON_AI2_RESULT_20CLASS_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0:'get the width of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP:"After acquisition and identification width",MPYTHON_AI2_RESULT_20CLASS_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0:'get the height of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP:"After acquisition and identification height",MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0:'get the confidence of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP:"After acquisition and identification Confidence",MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0:'get the object count of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP:"After acquisition and identification number",MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0:'get the type name of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP:"Can identify 20 types, respectively are 0-19 for aircraft, bicycle, bird, boat, bottle, bus, car, cat, chair, cow, dining table, dog, house, motorcycle, person, potted plant, sheep, sofa, train, TV",MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0:'get the type count of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP:"After acquisition and identification type number",MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0:'call the camera for "Number ID"',MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP:"Call camera identification",MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0:'get the recognition result of "Number ID"',MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP:"Handwritten digit recognition parameters",MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0:'get the digital of the "Number ID" result',MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP:"Handwritten digits recognize Numbers",MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0:'get the confidence of the "Number ID" result',MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP:"Handwritten digit recognition digital confidence",MPYTHON_AI_TRACE_COLOR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",MPYTHON_AI_TRACE_COLOR_MESSAGE0:"Trace color block LAB color %1 bounding box less than %2 pixels less than %3 filter",MPYTHON_AI_TRACE_COLOR_TOOLTIP:"Track the color piece",MPYTHON_AI_BLOB_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_ALL_MESSAGE0:"%1Color piece block all parameters",MPYTHON_AI_BLOB_ALL_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_X_MESSAGE0:"%1Color piece x coordinates",MPYTHON_AI_BLOB_X_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_Y_MESSAGE0:"%1Color piece y coordinates",MPYTHON_AI_BLOB_Y_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_W_MESSAGE0:"%1Color piece width",MPYTHON_AI_BLOB_W_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_H_MESSAGE0:"%1Color piece height",MPYTHON_AI_BLOB_H_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_NUMBER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_NUMBER_MESSAGE0:"%1Color piece number",MPYTHON_AI_BLOB_NUMBER_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_CENTER_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_CENTER_X_MESSAGE0:"%1Color piece center x coordinates",MPYTHON_AI_BLOB_CENTER_X_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_CENTER_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0:"%1Color piece center y coordinates",MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_ORTHOGON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0:"%1Color piece rectangular",MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_DRILL_WEIGHT_MESSAGE0:"Initialize training%1",MPYTHON_DRILL_WEIGHT_TOOLTIP:"",MPYTHON_DRILL_WEIGHT_HELPURL:"",MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL:"",MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0:"Instantiate the linear regression line",MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP:"",MPYTHON_DRILL_TITLE_HELPURL:"",MPYTHON_DRILL_TITLE_MESSAGE0:" title%1 size%2",MPYTHON_DRILL_TITLE_TOOLTIP:"",MPYTHON_DRILL_LABEL_HELPURL:"",MPYTHON_DRILL_LABEL_MESSAGE0:"label%1 title%2 size%3",MPYTHON_DRILL_LABEL_TOOLTIP:"",MPYTHON_DRILL_DRILL_REALITY_HELPURL:"",MPYTHON_DRILL_DRILL_REALITY_MESSAGE0:"Real data lines Sign marks%1 The color of r%2 g%3 b%4 title%5",MPYTHON_DRILL_DRILL_REALITY_TOOLTIP:"",MPYTHON_DRILL_PREDICTED_REALITY_HELPURL:"",MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0:"Predict linear regression lines Sign marks%1 The color of r%2 g%3 b%4 title%5",MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP:"",MPYTHON_DRILL_LEGEND_HELPURL:"",MPYTHON_DRILL_LEGEND_MESSAGE0:"Show legend",MPYTHON_DRILL_LEGEND_TOOLTIP:"",MPYTHON_DRILL_SHOW_HELPURL:"",MPYTHON_DRILL_SHOW_MESSAGE0:"Display images",MPYTHON_DRILL_SHOW_TOOLTIP:"",MPYTHON_DRILL_DRILL_PRINT_HELPURL:"",MPYTHON_DRILL_DRILL_PRINT_MESSAGE0:"Returns the corresponding key value%1",MPYTHON_DRILL_DRILL_PRINT_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0:"Initialize Iris dataset",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0:"flower-de-luce Principal component analysis",MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0:"flower-de-luce Factor analysis 3D",MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0:"flower-de-luce Factor analysis",MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0:"Predicting graphic flower-de-luce type%1 Render content x%3 y%4 Present species%2 color r%5 g%6 b%7 title%8 upward merge%9",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0:"Predicting graphic Render content x%1 y%2 Present species%3 color r%4 g%5 b%6 title%7",MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0:"3D Predicting graphic Render content x%1 y%2 z%3 color r%4 g%5 b%6 title%7",MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0:" title%1 size%2",MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0:"label%1 title%2 size%3",MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0:"3D title%1 size%2",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0:"3D label%1 title%2 size%3",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0:"Show legend",MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0:"Display images",MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0:"X and y coordinates of calyx and petals",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP:"There are 150 records, representing 50 Iris-setosa, Iris-versicolor and Iris-virginica respectively",MPYTHONS_FLOWER_DE_LUCE_Iris_setosa:"Iris setosa",MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor:"Iris versicolor",MPYTHONS_FLOWER_DE_LUCE_Iris_virginica:"Iris virginica",MPYTHONS_FLOWER_DE_LUCE_scatter_diagram:"scatter diagram",MPYTHONS_FLOWER_DE_LUCE_kde_diagram:"kde diagram",MPYTHONS_FLOWER_DE_LUCE_box_diagram:"box diagram",MPYTHONS_FLOWER_DE_LUCE_merge:"merge",MPYTHONS_FLOWER_DE_LUCE_not_merge:"Don it merge",MPYTHONS_FLOWER_DE_LUCE_calyx_length:"calyx length",MPYTHONS_FLOWER_DE_LUCE_calyx_width:"calyx width",MPYTHONS_FLOWER_DE_LUCE_petal_length:"petal length",MPYTHONS_FLOWER_DE_LUCE_petal_width:"petal width",MPYTHON_DRILL_DRILL_full_line:"full line",MPYTHON_DRILL_DRILL_dash_line:"dash line",MPYTHON_DRILL_DRILL_chain_line:"chain line",MPYTHON_DRILL_DRILL_imaginary_line:"imaginary line",MPYTHON_DRILL_DRILL_dot:"dot",MPYTHON_DRILL_DRILL_pixel:"pixel",MPYTHON_DRILL_DRILL_solid_rim:"solid rim",MPYTHON_DRILL_DRILL_down_triangle:"down triangle",MPYTHON_DRILL_DRILL_up_triangle:"up triangle",MPYTHON_DRILL_DRILL_right_triangle:"right triangle",MPYTHON_DRILL_DRILL_left_triangle:"left triangle",MPYTHON_DRILL_DRILL_down_flower_triangle:"down flower triangle",MPYTHON_DRILL_DRILL_up_flower_triangle:"up flower triangle",MPYTHON_DRILL_DRILL_right_flower_triangle:"right flower triangle",MPYTHON_DRILL_DRILL_left_flower_triangle:"left flower triangle",MPYTHON_DRILL_DRILL_solid_square:"solid square",MPYTHON_DRILL_DRILL_solid_pentagon:"solid pentagon",MPYTHON_DRILL_DRILL_star:"star",MPYTHON_DRILL_DRILL_vertical_hexagon:"vertical hexagon",MPYTHON_DRILL_DRILL_across_hexagon:"across hexagon",MPYTHON_DRILL_DRILL_cross:"cross",MPYTHON_DRILL_DRILL_X:"X",MPYTHON_DRILL_DRILL_rhombus:"rhombus",MPYTHON_DRILL_DRILL_thin_rhombus:"thin rhombus",MPYTHON_DRILL_DRILL_vertical_line:"vertical line",MPYTHONS_CONVERT_PICTURE_HELPURL:" ",MPYTHONS_CONVERT_PICTURE_MESSAGE0:" convert image to 28 ^ 2 binary image %1 pending image storage path %2 processed image storage path %3 format %4",MPYTHONS_CONVERT_PICTURE_TOOLTIP:"control board passes WIF to voice assistant via serial port ",MPYTHONS_NUMBER_REPERTOIRE_HELPURL:" ",MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0:" find parse handwritten numeric data store path %1",MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP:"use handwritten number library ",MPYTHONS_SHOW_NUMBER_PATH_HELPURL:" ",MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0:" handwritten digital image storage path %1",MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP:"path of handwritten digital image ",MPYTHONS_SHOW_NUMBER_HELPURL:" ",MPYTHONS_SHOW_NUMBER_MESSAGE0:" display handwritten digital image ",MPYTHONS_SHOW_NUMBER_TOOLTIP:"display handwritten digital image ",MPYTHONS_NUMBER_RECOGNITION_HELPURL:" ",MPYTHONS_NUMBER_RECOGNITION_MESSAGE0:" identify handwritten digital image storage path %1",MPYTHONS_NUMBER_RECOGNITION_TOOLTIP:"path to recognize handwritten digital image ",MPYTHONS_NUMBER_PLACEHOLDER_HELPURL:" ",MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0:" create variable %1 initialize neural network tensor variable name %2",MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP:" ",MPYTHON_DRILL_RESHAPE_MESSAGE0:"create variable %1 and convert the input photo variable %2 into neural network output tensor %3",MPYTHON_DRILL_RESHAPE_TOOLTIP:" ",MPYTHON_DRILL_RESHAPE_HELPURL:" ",MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0:"create variable %1 Shared variable name %2 initialization mode %3",MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP:" ",MPYTHON_NUMBER_CONV_WEIGHT_HELPURL:" ",MPYTHON_NUMBER_INITIALIZER_MESSAGE0:"produce truncated normal distribution random number output tensor %1 standard deviation %2",MPYTHON_NUMBER_INITIALIZER_TOOLTIP:" ",MPYTHON_NUMBER_INITIALIZER_HELPURL:" ",MPYTHON_NUMBER_CONSTANT_MESSAGE0:"create constant value %1 output tensor %2",MPYTHON_NUMBER_CONSTANT_TOOLTIP:" ",MPYTHON_NUMBER_CONSTANT_HELPURL:" ",MPYTHON_NUMBER_CONV2D_MESSAGE0:"neural network output tensor %1 Shared variable %2 step size %3 fill %4",MPYTHON_NUMBER_CONV2D_TOOLTIP:" ",MPYTHON_NUMBER_CONV2D_HELPURL:" ",MPYTHON_NUMBER_CONV_BIASES_MESSAGE0:"tensor %1",MPYTHON_NUMBER_CONV_BIASES_TOOLTIP:" ",MPYTHON_NUMBER_CONV_BIASES_HELPURL:" ",MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0:"convolution two-dimensional variable %1 %2",MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP:" ",MPYTHON_NUMBER_CONV_CONV2D_HELPURL:" ",MPYTHON_NUMBER_RELU_MESSAGE0:"create variable %1 Relu forward drive function convolution 2d layer %2",MPYTHON_NUMBER_RELU_TOOLTIP:" ",MPYTHON_NUMBER_RELU_HELPURL:" ",MPYTHON_NUMBER_MAX_POOL_MESSAGE0:"pooling 2d layer variable %1 convolution layer %2 pooling window %3 step size %4 fill %5",MPYTHON_NUMBER_MAX_POOL_TOOLTIP:" ",MPYTHON_NUMBER_MAX_POOL_HELPURL:" ",MPYTHON_NUMBER_MATMUL_MESSAGE0:"the corresponding elements of the two parameters are multiplied x%1 y%2",MPYTHON_NUMBER_MATMUL_TOOLTIP:" ",MPYTHON_NUMBER_MATMUL_HELPURL:" ",MPYTHON_NUMBER_ADD_MESSAGE0:"full connection layer variable %1 add elements of two parameters x%2 y%3",MPYTHON_NUMBER_ADD_TOOLTIP:" ",MPYTHON_NUMBER_ADD_HELPURL:" ",MPYTHON_NUMBER_SOFTMAX_MESSAGE0:"create variable %1 prediction model accuracy variable name %2",MPYTHON_NUMBER_SOFTMAX_TOOLTIP:" ",MPYTHON_NUMBER_SOFTMAX_HELPURL:" ",MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0:"create variable %1 loss function %2",MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP:" ",MPYTHON_NUMBER_REDUCE_MEAN_HELPURL:" ",MPYTHON_NUMBER_LOG_MESSAGE0:"natural logarithm %1",MPYTHON_NUMBER_LOG_TOOLTIP:" ",MPYTHON_NUMBER_LOG_HELPURL:" ",MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0:"compress sum %1 dimension %2",MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP:"because the log function is monotonically increasing, logP(Y|X) will also reach its maximum value, so maximizing P(Y|X) after adding a negative sign in front is equivalent to minimizing L.",MPYTHON_NUMBER_REDUCE_SUM_HELPURL:"https://www.cnblogs.com/guoyaohua/p/9217206.html",MPYTHON_NUMBER_TRAIN_MESSAGE0:"optimize learning rate %1",MPYTHON_NUMBER_TRAIN_TOOLTIP:" ",MPYTHON_NUMBER_TRAIN_HELPURL:" ",MPYTHON_NUMBER_MINIMIZE_MESSAGE0:"create variable %1 optimize tensor %2",MPYTHON_NUMBER_MINIMIZE_TOOLTIP:" ",MPYTHON_NUMBER_MINIMIZE_HELPURL:" ",MPYTHON_NUMBER_INIT_MESSAGE0:"initialization model complete ",MPYTHON_NUMBER_INIT_TOOLTIP:" ",MPYTHON_NUMBER_INIT_HELPURL:" ",MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0:"select handwritten number set %1 number %2",MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP:" ",MPYTHON_NUMBER_TRAIN_TEST_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN_MESSAGE0:"start data stream graph session to compute session %1 picture %2 tag %3",MPYTHON_NUMBER_SESSION_RUN_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0:"start data stream graph session to compute session %1 picture %2 tag %3",MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN2_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0:"prediction model %1 fit %2 session %3",MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN3_HELPURL:" ",MPYTHON_NUMBER_EQUAL_MESSAGE0:"Whether each dimension of two tensors is equalx%1 y%2",MPYTHON_NUMBER_EQUAL_TOOLTIP:"",MPYTHON_NUMBER_EQUAL_HELPURL:"",MPYTHON_NUMBER_ARGMAX_MESSAGE0:"tensor%1 %2Compare the index that returns the maximum value",MPYTHON_NUMBER_ARGMAX_TOOLTIP:"",MPYTHON_NUMBER_ARGMAX_HELPURL:"",MPYTHON_NUMBER_CAST_MESSAGE0:"Floating point %1",MPYTHON_NUMBER_CAST_TOOLTIP:"",MPYTHON_NUMBER_CAST_HELPURL:"",MPYTHONS_NUMBER_SAVER_SAVE_HELPURL:"",MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0:"Handwritten numeral recognition model variable name %1 store path%2",MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP:"MNIST Handwritten numeral recognition model Save the path",MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL:"",MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0:"Load model %1 store path%2",MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP:"Load model",MPYTHONS_NUMBER_SAME:"SAME",MPYTHONS_NUMBER_VALID:"VALID",MPYTHONS_NUMBER_train:"train",MPYTHONS_NUMBER_test:"test",MPYTHONS_NUMBER_row:"row",MPYTHONS_NUMBER_rank:"rank",MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL:"",MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0:"Call camera %1",MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP:"Call the built-in camera in the notebook, so the parameter is 0. If there are other cameras, the parameter can be adjusted to 1,2",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL:"",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0:"off the camera",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0:"Delete all Windows",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0:"Load model store path%1",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0:"Read the picture from the camera",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP:"Ret True if the image is read, otherwise false;The second parameter is frame, which is the image of the currently captured frame.",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0:"Grayscale image",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0:"Each time the face is detected, the image size is reduced proportionally%1",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP:"",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL:"",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0:"Face area displays rectangular box color r%1 g%2 b%3",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0:"Save the image location%1 ID%2 Serial number%3",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0:"Window to display the image filename%1",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0:"Exit via esc key",MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP:"Use only when the window is on top",MPYTHONS_FACE_RECOGNITIONR_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_MESSAGE0:"Gets the coordinate value of the face in the image face%1",MPYTHONS_FACE_RECOGNITIONR_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0:"If the image is read",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL:"",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0:"Whether to turn on the camera",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0:"Get photos and id Photo storage path%1",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0:"Initialize Training model",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0:"Start Training model",MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0:"%1Training model store path%2",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL:"",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0:"Face model training number",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FONT_HELPURL:"",MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0:"Window display Recognized name%1 Set font to%2 color r%3 g%4 b%5",MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL:"",MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0:"Window display Confidence of identification%1 Set font to%2 color r%3 g%4 b%5",MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0:"Predict human face name%1 Degree of confidence%2",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FORECAST_Write:"write",MPYTHONS_FACE_RECOGNITION_FORECAST_Read:"read",MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0:"初始化 聊天机器人",MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP:"",MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0:"选择训练器 聊天机器人",MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP:"",MPYTHONS_DIALOGUE_ROBOT_START_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0:"选择与%1 聊天",MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0:"自定义 语料库 %1[%2]",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0:"输入对话 获得响应 %1",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0:"识别响应",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0:"选择跟 %1 聊天",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP:"",Jenny:"珍妮",Jack:"杰克",Tom:"汤姆",MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0:"选择 %1 %2 模式%3 %4 喂养%5",MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP:"",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL:"",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0:"查看训练库 选择%1",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP:"",MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL:"",MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0:"生成随机数 %1",MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP:"",MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL:"",MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0:"显示窗口",MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP:"",MPYTHON_AGESTURE_IMSHOW_HELPURL:"",MPYTHON_AGESTURE_IMSHOW_MESSAGE0:"处理图像 %1",MPYTHON_AGESTURE_IMSHOW_TOOLTIP:"",MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL:"",MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0:"选择训练库 knn模型",MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_LOAD_MODEL_HELPURL:"",MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0:"载入knn模型 存储路径%1",MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL:"",MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0:"%1打开图片 存储路径%2 图片名%3",MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP:"",MPYTHON_AGESTURE_ARRAY_MESSAGE0:"选择%1 构建特征数据%2",MPYTHON_AGESTURE_ARRAY_TOOLTIP:"",MPYTHON_AGESTURE_ARRAY_HELPURL:"",MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0:"打乱排序%1 ",MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP:"",MPYTHON_GESTURE_RANDOM_RANK_HELPURL:"",MPYTHON_GESTURE_READ_LEND_MESSAGE0:" %1 图片特征",MPYTHON_GESTURE_READ_LEND_TOOLTIP:"",MPYTHON_GESTURE_READ_LEND_HELPURL:"",MPYTHON_GESTURE_START_SRAIN_HELPURL:"",MPYTHON_GESTURE_START_SRAIN_MESSAGE0:"开始训练 手势识别 期望%1 目标%2",MPYTHON_GESTURE_START_SRAIN_TOOLTIP:"",MPYTHON_GESTURE_SCORE_HELPURL:"",MPYTHON_GESTURE_SCORE_MESSAGE0:"进行评分 期望%1 目标%2",MPYTHON_GESTURE_SCORE_TOOLTIP:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0:"%1 数组降维 图片总数%2",MPYTHON_GESTURE_FORECAST_HELPURL:"",MPYTHON_GESTURE_FORECAST_TOOLTIP:"",MPYTHON_GESTURE_FORECAST_MESSAGE0:"预测结果%1",MPYTHON_AGESTURE_SAVE_MODEL_HELPURL:"",MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0:"保存模型 存储路径%1",MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL:"",MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0:"%1图片 预测图片 ",MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0:"%1 彩色图像降维",MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL:"",MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0:"选择人脸库 图片存储路径%1",MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP:"",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL:"",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0:"加载模型 存储路径%1",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0:"第%1位人脸性别结果 置信度",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0:"第%1位人脸情绪结果 置信度",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0:"第%1位人脸性别 结果",MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0:"第%1位人脸情绪 结果",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP:"",MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL:"",MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0:"选择人脸库 %1",MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0:"第%1位情绪为 %2",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0:"第%1位性别为 %2",MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0:"人脸数量",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0:"表情数量",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0:"人脸实时检测 %1",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0:"显示图片",MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP:"",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL:"",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0:"选择人脸%1 %2",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL:"",MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0:"初始化 文章聚类",MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_TITLE_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0:"标题 第%1文章",MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_CONTENT_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0:"内容 第%1文章",MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP:"",MPYTHONS_WORD_CLOUD_JIEBA_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0:"文章内容转为列表 第%1文章",MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP:"",MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL:"",MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0:"读取停词表%1",MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP:"返回的是100篇文章里的符号",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL:"",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0:"删除后的新闻",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP:"",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL:"",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0:"构造词云所用的数据",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP:"",MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL:"",MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0:"计算总数 排序前%1",MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP:"返回的是100篇文章里的文本",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL:"",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0:"文章聚类训练结果 保存为图片",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL:"",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0:"显示图片",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP:"",FIRST:"first",LAST:"last",MPYTHON_USOCKET_BLOCK:"block",MPYTHON_USOCKET_UNBLOCK:"unblock",MPYTHON_USOCKET_SETSOCKOPT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0:"set socket %1 with af %2 and type %3",MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP:"Sets the value of a given socket option. The required symbolic constants are defined in the socket module (SO_*, etc.). This value can be an integer or a class byte object representing a buffer.",MPYTHON_USOCKET_READ_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.read",MPYTHON_USOCKET_READ_MESSAGE0:"read %2 bytes from socket %1 and returns a byte object",MPYTHON_USOCKET_READ_TOOLTIP:"if no number of read is given, run in a mode similar to socket.readall ()",MPYTHON_USOCKET_SETBLOCKING_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.setblocking",MPYTHON_USOCKET_SETBLOCKING_MESSAGE0:"set socket %1 as %2 mode ",MPYTHON_USOCKET_SETBLOCKING_TOOLTIP:"",MPYTHON_USOCKET_SETTIMEOUT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.settimeout",MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0:"socket %1 sets timeout as %2 seconds",MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP:"",MPYTHON_USOCKET_SENDALL_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SENDALL_MESSAGE0:"Socket%1 sends%2 continuously and returns the number of bytes sent",MPYTHON_USOCKET_SENDALL_TOOLTIP:"Send all data to sockets. Sockets must be connected to remote sockets. Unlike send (), this method will attempt to send all data by sending blocks continuously.",MPYTHON_USOCKET_SENDS_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SENDS_MESSAGE0:"socket %1 send %2 and returns the number of bytes sent",MPYTHON_USOCKET_SENDS_TOOLTIP:"Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",MPYTHON_USOCKET_SEND_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SEND_MESSAGE0:"socket %1 send %2 and returns the number of bytes sent",MPYTHON_USOCKET_SEND_TOOLTIP:"Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",MPYTHON_LINE_BREAK_HELPURL:"",MPYTHON_LINE_BREAK_MESSAGE0:"Escape character %1",MPYTHON_LINE_BREAK_TOOLTIP:"Escape character",MPYTHON_USOCKET_SENDTO_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.sendto",MPYTHON_USOCKET_SENDTO_MESSAGE0:"socket %1 send %2 to address %3",MPYTHON_USOCKET_SENDTO_TOOLTIP:"Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",MPYTHON_USOCKET_RECV_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recv",MPYTHON_USOCKET_RECV_MESSAGE0:"socket %1 receives with maximum amount %2 and returns received data object",MPYTHON_USOCKET_RECV_TOOLTIP:"",MPYTHON_TEXT_ESC_HELPURL:"",MPYTHON_TEXT_ESC_MESSAGE0:"text ESC %1",MPYTHON_TEXT_ESC_TOOLTIP:"text ESC",MPYTHON_USOCKET_RECVFROM_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recvfrom",MPYTHON_USOCKET_RECVFROM_MESSAGE0:"socket %1 receives with maximum amount %2 and returns received data tuple",MPYTHON_USOCKET_RECVFROM_TOOLTIP:"Tuple format: (bytes, address)",MPYTHON_USOCKET_CONNECT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.connect",MPYTHON_USOCKET_CONNECT_MESSAGE0:"socket %1 connect to host %2 with port %3",MPYTHON_USOCKET_CONNECT_TOOLTIP:"",MPYTHON_USOCKET_GETADDRINFO_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.getaddrinfo",MPYTHON_USOCKET_GETADDRINFO_MESSAGE0:"parse host %1 with port %2 and return ip",MPYTHON_USOCKET_GETADDRINFO_TOOLTIP:"Internet required",MPYTHON_USOCKET_ACCEPT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",MPYTHON_USOCKET_ACCEPT_MESSAGE0:"socket %1 receive connection request and return socket tuple",MPYTHON_USOCKET_ACCEPT_TOOLTIP:"Receive connection request.Socket needs to specify an address and listen to the connection.The return value is (conn, address)\nconn: A new socket object that can be used to send and receive message\naddress: Client address connected to the server",MPYTHON_USOCKET_LISTEN_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.listen",MPYTHON_USOCKET_LISTEN_MESSAGE0:"listen to socket %1 with backlog as %2",MPYTHON_USOCKET_LISTEN_TOOLTIP:"backlog : Maximum number of accepted sockets, at least 0, default reasonable value if not specified",MPYTHON_USOCKET_BIND_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.bind",MPYTHON_USOCKET_BIND_MESSAGE0:"socket %1 bind with address %2 and port %3",MPYTHON_USOCKET_BIND_TOOLTIP:"",MPYTHON_USOCKET_CLOSE_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.close",MPYTHON_USOCKET_CLOSE_MESSAGE0:"close socket %1",MPYTHON_USOCKET_CLOSE_TOOLTIP:"",MPYTHON_USOCKET_INIT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",MPYTHON_USOCKET_INIT_MESSAGE0:"create socket %1 with af %2 and type %3",MPYTHON_USOCKET_INIT_TOOLTIP:"AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP stream\nSOCK_DGRAM:=2 — UDP datagram\nSOCK_RAW :=3 — Original socket\nSO_REUSEADDR : =4 — Socket reusable\n",MPYTHON_GET_POST_HELPURL:"",MPYTHON_GET_POST_MESSAGE0:"%1 request url %2 submit fields %3",MPYTHON_GET_POST_TOOLTIP:"",MPYTHON_UREQUESTS_GET_POST_HELPURL:"",MPYTHON_UREQUESTS_GET_POST_TOOLTIP:"",MPYTHON_UREQUESTS_GET_POST_MESSAGE0:"%1 request url %2 submit fields %3",MPYTHON_UREQUESTS_POST_FILE_HELPURL:"",MPYTHON_UREQUESTS_POST_FILE_TOOLTIP:"",MPYTHON_UREQUESTS_POST_FILE_MESSAGE0:"Post submit file %1 request url %2 file path %3 mime type %4 fields %5",MPYTHON_RESPONSE_HELPURL:"",MPYTHON_RESPONSE_MESSAGE0:"return response content as %1",MPYTHON_RESPONSE_TOOLTIP:"",STRING:"string",_BYTE:"byte",TEXT:"text",MPYTHON_RESPONSE_ATTRIBUTE_HELPURL:"",MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0:"response attribute %1",MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP:"",MPYTHON_SLEEP_MESSAGE0:"waiting for %1 %2",MPYTHON_SLEEP_TOOLTIP:"Wait for the time before proceeding to the next command.\n1 second = 1,000 milliseconds (ms)\n1 second = 1,000,000 microseconds (μs)",MPYTHON_MS:"millisecond(ms)",MPYTHON_US:"microsecond(μs)",MPYTHON_TIME_DIFFERENCE_HELPURL:"",MPYTHON_TIME_DIFFERENCE_MESSAGE0:"Return time difference from %1 to %2",MPYTHON_TIME_DIFFERENCE_TOOLTIP:"Measure the period between successive calls to ticks_ms (), ticks_us ()",MPYTHON_TYPE_HELPURL:"",MPYTHON_TYPE_MESSAGE0:"type %1",MPYTHON_TYPE_TOOLTIP:"",MPYTHON_TYPE_IS_HELPURL:"",MPYTHON_TYPE_IS_MESSAGE0:"type %1 is %2",MPYTHON_TYPE_IS_TOOLTIP:"",MPYTHON_EVAL_HELPURL:"",MPYTHON_EVAL_MESSAGE0:"eval %1",MPYTHON_EVAL_TOOLTIP:"Simulate a string expression and return the result",MPYTHON_RETURN_HELPURL:"",MPYTHON_RETURN_MESSAGE0:"return %1",MPYTHON_RETURN_TOOLTIP:"",MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL:"",MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0:"I2C digital ray",MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP:"",MPYTHON_WIFI_ALL_CONFIG_HELPURL:"",MPYTHON_WIFI_ALL_CONFIG_MESSAGE0:"Wi-Fi configuration information",MPYTHON_WIFI_ALL_CONFIG_TOOLTIP:"Returns all wifi configuration information as tuples",MPYTHON_WIFI_ISCONNECTED_HELPURL:"",MPYTHON_WIFI_ISCONNECTED_MESSAGE0:"Has connected to Wi-Fi",MPYTHON_WIFI_ISCONNECTED_TOOLTIP:"",MPYTHON_INIT_ASSISTANT_WIFI_HELPURL:"",MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0:"Wi-Fi Connect voice assistant Wi-Fi name%1 password%2",MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP:"Control board passes WIF to voice assistant through serial port",MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL:"",MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP:"Files need to be uploaded to the board on the file system first",MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0:"Read Voice Assistant Text Files %1",MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL:"",MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0:"digital tube display %1",MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP:"-999~9999",MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL:"",MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0:"clear the digital tube display",MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP:"",MPYTHON_MACHINE_RESET_HELPURL:"",MPYTHON_MACHINE_RESET_MESSAGE0:"reset",MPYTHON_MACHINE_RESET_TOOLTIP:"Same as pressing an external reset button",MPYTHON_BLUEBIT_GET_COLOR_HELPURL:"",MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0:"I2C RGB color %1",MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0:"I2C RGB color",MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP:"Returns as list",MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL:"",MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0:"I2C HSV color %1",MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP:"HSV(Hue, Saturation, Value)",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0:"I2C HSV color",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP:"HSV(Hue, Saturation, Value)",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0:"I2C force sensor Dial code %1",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0:"I2C current sensor Dial code %1",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0:"I2C voltage sensor Dial code %1",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0:"I2C magnetic sensor Dial code %1",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0:"I2C PH sensor Dial code %1",MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0:"I2C TDS sensor Dial code %1",MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0:"I2C Pressure sensor Dial code %1",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0:"I2C Photogate Timer sensor Dial code %1",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_RED:"red",MPYTHON_GREEN:"green",MPYTHON_BLUE:"blue",MPYTHON_MUSIC_PIN_P6:"default",MPYTHON_MUSIC_PIN_P6_HELPURL:"",MPYTHON_MUSIC_PIN_P6_MESSAGE0:"%1",MPYTHON_MUSIC_PIN_P6_TOOLTIP:"",MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0:"play music %1 wait %2 loop %3 Pin %4",MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP:"Play the built-in music, you can set the standby mode and loop playback.",MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",MICROBIT_MUSIC_PITCH_MESSAGE0:"play tone %1 %2 delay %3 millisecond(s) at Pin %4",MICROBIT_MUSIC_PITCH_TOOLTIP:"Plays the tone for the set length of time.",MICROBIT_MUSIC_PITCH_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0:"at Pin %5 play note list %1 wait %2 %3 loop %4",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP:"Play a list of notes, such as C4:4, G4:8, etc., the notes are in string form, the default pin is P6 of the mPython board",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",MICROBIT_MUSIC_RESET_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",MICROBIT_MUSIC_RESET_MESSAGE0:"restore music settings",MICROBIT_MUSIC_RESET_TOOLTIP:"Restore all music settings (current beats, scales, and periods) to their default values.",MICROBIT_MUSIC_STOP_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",MICROBIT_MUSIC_STOP_MESSAGE0:"stop playing music at Pin %1",MICROBIT_MUSIC_STOP_TOOLTIP:"The default pin is P6 of the mPython board",MICROBIT_MUSIC_SET_TEMPO_MESSAGE0:"set each beat equal to %1 notes, the number of beats per minute is %2",MICROBIT_MUSIC_SET_TEMPO_TOOLTIP:"Set the playback speed (beat). A certain number of tick represents a beat, the number of beats per minute per beat (BPM beats per minute).",MICROBIT_MUSIC_SET_TEMPO_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0:"set the playback speed to %1 times",MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP:"The 4th note is 1 beat, and the number of beats per minute is 120 by default, which is 1 times the playback speed.",MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",MICROBIT_MUSIC_GET_TEMPO_MESSAGE0:"current beats",MICROBIT_MUSIC_GET_TEMPO_TOOLTIP:"Get current beats: Taps per beat, beats per minute (BPM).",MICROBIT_MUSIC_GET_TEMPO_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",MPYTHON_BLUEBIT_HUM_TEM_HELPURL:"",MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP:"",MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0:"I2C %1",MPYTHON_BLUEBIT_TEMPERATURE:"temperature",MPYTHON_BLUEBIT_HUMIDITY:"humidity",MPYTHON_UART_INIT_HELPURL:"",MPYTHON_UART_INIT_MESSAGE0:"initialize serial port %4 as baudrate %1 tx %2 rx %3",MPYTHON_UART_INIT_TOOLTIP:"mPython board supports 3 sets of serial ports. 0 for repl, remaining 1, 2 sets of serial ports available. All pins can be used as the input of serial port rx, except P2, p3, p4, p10 can only be used as input, and all the other pins can be used as output tx. in theory.",MPYTHON_UART_DEINIT_HELPURL:"",MPYTHON_UART_DEINIT_MESSAGE0:"close serial port %1",MPYTHON_UART_DEINIT_TOOLTIP:"Turn off the UART bus",MPYTHON_UART_WRITE_STR_HELPURL:"",MPYTHON_UART_WRITE_STR_MESSAGE0:"serial port %1 write string %2 %3",MPYTHON_UART_WRITE_STR_TOOLTIP:"Write a text to the bus. \nReturn value: The number of bytes to write or None to time out.",MPYTHON_UART_WRITE_HEX_HELPURL:"",MPYTHON_UART_WRITE_HEX_MESSAGE0:"serial port %1 write hex string %2 %3",MPYTHON_UART_WRITE_HEX_TOOLTIP:"",MPYTHON_UART_HAS_DATA_HELPURL:"",MPYTHON_UART_HAS_DATA_MESSAGE0:"serial port %1 has readable data",MPYTHON_UART_HAS_DATA_TOOLTIP:"Returns an integer that counts the number of characters that can be read without blocking. \n If there are no characters available, it will return 0, if there are characters, it will return a positive number. \n This method can return 1 even if there are multiple readable characters.",MPYTHON_UART_READLINE_HELPURL:"",MPYTHON_UART_READLINE_MESSAGE0:"serial port %1 read a line of data",MPYTHON_UART_READLINE_TOOLTIP:"Read a line and end with a newline character.\nReturn value: Read row or None timeout.",MPYTHON_UART_READ_HELPURL:"",MPYTHON_UART_READ_MESSAGE0:"serial port %1 read data",MPYTHON_UART_READ_TOOLTIP:"Read as much serial data as possible.\n Return value: A list of bytes containing the bytes read. Returns None if the read times out.",MPYTHON_UART_READ_LENGTH_HELPURL:"",MPYTHON_UART_READ_LENGTH_MESSAGE0:"serial port %1 read data with length as %2",MPYTHON_UART_READ_LENGTH_TOOLTIP:"Read the specified length bytes data.\n Return value: A list of bytes containing the bytes read. Returns None if the read times out.",MPYTHON_UART_WRITE_BYTE_HELPURL:"",MPYTHON_UART_WRITE_BYTE_MESSAGE0:"serial port %1 write a byte %2",MPYTHON_UART_WRITE_BYTE_TOOLTIP:"The parameter is a integer as 0~255\nWrite a byte to the bus. \nReturn value: The number of bytes to write or None to time out.",MPYTHON_UART_WRITE_BYTES_HELPURL:"",MPYTHON_UART_WRITE_BYTES_MESSAGE0:"serial port %1 write bytes %2",MPYTHON_UART_WRITE_BYTES_TOOLTIP:"Write some bytes to the bus. \nReturn value: The number of bytes to write or None to time out.",TEXT_FORMAT_MESSAGE0:"format string %1 % %2",TEXT_FORMAT_TOOLTIP:"",TEXT_FORMAT_HELPURL:"",TEXT_FORMAT2_MESSAGE0:"format string %1 with %2",TEXT_FORMAT2_TOOLTIP:"",TEXT_FORMAT2_HELPURL:"",MPYTHON_BAUDRATE_HELPURL:"",MPYTHON_BAUDRATE_MESSAGE0:"%1",MPYTHON_BAUDRATE_TOOLTIP:"",MPYTHON_HIGH_LOW_HELPURL:"",MPYTHON_HIGH_LOW_MESSAGE0:"%1",MPYTHON_HIGH_LOW_TOOLTIP:"",MPYTHON_TEN_CONVERT_TO_HELPURL:"",MPYTHON_TEN_CONVERT_TO_MESSAGE0:"decimal int num %1 converted to %2 string",MPYTHON_TEN_CONVERT_TO_TOOLTIP:"",MPYTHON_BIN:"BIN",MPYTHON_OCT:"OCT",MPYTHON_HEX:"HEX",MPYTHON_CONVERT_TO_TEN_HELPURL:"",MPYTHON_CONVERT_TO_TEN_MESSAGE0:"%1 string %2 converted to decimal int num",MPYTHON_CONVERT_TO_TEN_TOOLTIP:"",MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL:"",MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0:"decimal int num %2 converted to %1 bytes",MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP:"",MPYTHON_INT_TO_CHR_HELPURL:"",MPYTHON_INT_TO_CHR_MESSAGE0:"shaping number %1 converted to character in ASCII",MPYTHON_INT_TO_CHR_TOOLTIP:"ASCII is a computer coding system based on the Latin alphabet, mainly used to display modern English and other Western European languages",MPYTHON_STR_TO_HEX_HELPURL:"",MPYTHON_STR_TO_HEX_MESSAGE0:"string %1 converted to hex bytes",MPYTHON_STR_TO_HEX_TOOLTIP:"Returns two hexadecimal numbers separated by spaces in the result",MPYTHON_CHR_TO_INT_HELPURL:"",MPYTHON_CHR_TO_INT_MESSAGE0:"character in ASCII %1 converted to shaping number",MPYTHON_CHR_TO_INT_TOOLTIP:"ASCII is a computer coding system based on the Latin alphabet, mainly used to display modern English and other Western European languages",MPYTHON_HEX_TO_BIN_STR_HELPURL:"",MPYTHON_HEX_TO_BIN_STR_MESSAGE0:"hex string %1 converted to bin bytes",MPYTHON_HEX_TO_BIN_STR_TOOLTIP:"",MPYTHON_DATA_TO_BASE64_HELPURL:"",MPYTHON_DATA_TO_BASE64_MESSAGE0:"encoding data %1 in base64 and return byte object",MPYTHON_DATA_TO_BASE64_TOOLTIP:"Base64 encoding is a process from binary to character",MPYTHON_BASE64_TO_DATA_HELPURL:"",MPYTHON_BASE64_TO_DATA_MESSAGE0:"decoding base64 data %1 and return byte object",MPYTHON_BASE64_TO_DATA_TOOLTIP:"Base64 encoding is a process from binary to character",MPYTHON_UJSON_DUMPS_HELPURL:"",MPYTHON_UJSON_DUMPS_MESSAGE0:"%1 converted to json string",MPYTHON_UJSON_DUMPS_TOOLTIP:"Key in json format must be a string, and value can be a legitimate json data type (string, number, object, array, Boolean, or none",MPYTHON_UJSON_LOADS_HELPURL:"",MPYTHON_UJSON_LOADS_MESSAGE0:"parse json string %1 and return the object",MPYTHON_UJSON_LOADS_TOOLTIP:"Key in json format must be a string, and value can be a legitimate json data type (string, number, object, array, Boolean, or none",MPYTHON_SETS_PIN_MODE_HELPURL:"https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",MPYTHON_SETS_PIN_MODE_TOOLTIP:"Right-click help to view the pin declaration",MPYTHON_SETS_PIN_MODE_MESSAGE0:"set pin %1 as %2 mode %3 and set the value to %4",MPYTHON_SET_PIN_IN:"input",MPYTHON_SET_PIN_PUSH_PULL_OUT:"Push-pull output",MPYTHON_SET_PIN_LEAKY_OUT:"Leaky output",MPYTHON_SET_PIN_NO_PULL:"no pull",MPYTHON_SET_PIN_DOWN_PULL:"pull down",MPYTHON_SET_PIN_UP_PULL:"pull up",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL:"",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0:"thread lock object %1 requests lock",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP:"",MPYTHON_START_NEW_THREAD_HELPURL:"",MPYTHON_START_NEW_THREAD_MESSAGE0:"thread %1",MPYTHON_START_NEW_THREAD_TOOLTIP:"",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL:"",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0:"custom terminal widget on virtual pin V %1",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP:"",MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL:"",MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0:"synchronizing the status of virtual pin V %1",MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP:"",MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL:"",MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0:"when Blynk disconnected",MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP:"",MPYTHON_BLYNK_ON_CONNECTED_HELPURL:"",MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0:"when Blynk connected",MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP:"",MPYTHON_BLYNKTIMER_RUN_HELPURL:"",MPYTHON_BLYNKTIMER_RUN_MESSAGE0:"run the BlynkTimer processes",MPYTHON_BLYNKTIMER_RUN_TOOLTIP:"It is recommended to put this block in 'repeat forever' block",MPYTHON_BLYNK_RUN_HELPURL:"",MPYTHON_BLYNK_RUN_MESSAGE0:"run the Blynk processes",MPYTHON_BLYNK_RUN_TOOLTIP:"It is recommended to put this block in 'repeat forever' block",MPYTHON_BLYNK_APP_NOTIFY_HELPURL:"",MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0:"Blynk APP notifies %1",MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP:"",MPYTHON_BLYNKTIMER_HELPURL:"",MPYTHON_BLYNKTIMER_MESSAGE0:"BlynkTimer number %1 mode %2 period %3 seconds",MPYTHON_BLYNKTIMER_TOOLTIP:'Note:\nthe serial number of the timer is automatically obtained, from top to bottom, starting from 0 and continuous, don`t do this"timer 0, timer 2", the exposed serial number parameter is convenient to view here!\nParameter:\nno_timers_err=False - disable exception raise if all all timers were stopped',MPYTHON_BLYNK_STOP_TIMERS_HELPURL:"",MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0:"stop Blynk timer %1",MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP:'Note:\nthe serial number of the timer is automatically obtained, from top to bottom, starting from 0 and continuous, don`t do this"timer 0, timer 2", the exposed serial number parameter is convenient to view here!\nParameter:\nno_timers_err=False - disable exception raise if all all timers were stopped',MPYTHON_UART_INPUT_HELPURL:"",MPYTHON_UART_INPUT_MESSAGE0:"get input text from serial port, title %1",MPYTHON_UART_INPUT_TOOLTIP:"",MPYTHON_BLYNK_SET_PROPERTY_HELPURL:"",MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0:"set property %1 and value %2 to virtual pin",MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP:"Placed in a read or write event, the virtual pin is determined by the event,the component bound to the pin will have the added property",MPYTHON_BLYNK_EMAIL_HELPURL:"",MPYTHON_BLYNK_EMAIL_MESSAGE0:"email to pre-set email address with %1 subject %2 body %3",MPYTHON_BLYNK_EMAIL_TOOLTIP:"",MPYTHON_BLYNK_GET_TIMERS_HELPURL:"",MPYTHON_BLYNK_GET_TIMERS_MESSAGE0:"available Blynk timers",MPYTHON_BLYNK_GET_TIMERS_TOOLTIP:"",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL:"",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0:"send data %1 to Blynk APP's virtual pin V %2",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP:"virtual pin: V0 ~ V255",MPYTHON_BLYNK_APP_DATA_HELPURL:"",MPYTHON_BLYNK_APP_DATA_MESSAGE0:"when received value %2 of virtual pin V %1 from Blynk",MPYTHON_BLYNK_APP_DATA_TOOLTIP:"Virtual pin: V0 ~ V255",MPYTHON_BLYNK_RECEIVED_MESSAGE0:"when received value of virtual pin V %1 from Blynk",MPYTHON_BLYNK_VALUE_MESSAGE0:"value from Blynk",MPYTHON_BLYNK_VALUE_TOOLTIP:"",MPYTHON_BLYNK_VALUE_HELPURL:"",MPYTHON_BLYNK_SETUP_HELPURL:"",MPYTHON_BLYNK_SETUP_MESSAGE0:"Blynk Settings %1 server %2 port %3 authorization code %4",MPYTHON_BLYNK_SETUP_TOOLTIP:'The server can be set to "blynk-cloud.com" or "blynk.mpython.cn"\n The default port is 8080\n Note: The mobile APP access port is 9443.',INT_TO_CHR_HELPURL:"",INT_TO_CHR_MESSAGE0:"int %1 to ASCII single character",INT_TO_CHR_TOOLTIP:"",a123_HELPURL:"",a123_MESSAGE0:"新 %1",a123_TOOLTIP:"",MPYTHON_ONENET_DISCONNECT_MESSAGE0:"disconnect from OneNET",MPYTHON_ONENET_DISCONNECT_TOOLTIP:"",MPYTHON_ONENET_DISCONNECT_HELPURL:"",MPYTHON_ONENET_MSG_MESSAGE0:"message from OneNET",MPYTHON_ONENET_MSG_TOOLTIP:"",MPYTHON_ONENET_MSG_HELPURL:"",MPYTHON_ONENET_RECV_MESSAGE0:"when received message %1 from OneNET",MPYTHON3_ONENET_RECV_MESSAGE0:"when received message from OneNET",MPYTHON_ONENET_RECV_TOOLTIP:"",MPYTHON_ONENET_RECV_HELPURL:"",MPYTHON_ONENET_RECV_MSG_MESSAGE0:"when received specific message %1 from OneNET",MPYTHON_ONENET_RECV_MSG_TOOLTIP:"",MPYTHON_ONENET_RECV_MSG_HELPURL:"",MPYTHON_ONENET_PUB_VALUE_MESSAGE0:"publish data to OneNET, name %1 value %2",MPYTHON_ONENET_PUB_VALUE_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE_HELPURL:"",MPYTHON_ONENET_PUB_DICT_MESSAGE0:"publish data to OneNET %1",MPYTHON_ONENET_PUB_DICT_TOOLTIP:"",MPYTHON_ONENET_PUB_DICT_HELPURL:"",MPYTHON_HCSR04_DISTANCE_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_DISTANCE_MESSAGE0:"%1 hcsr04 untrasonic distance, unit %2",MPYTHON_HCSR04_DISTANCE_TOOLTIP:"",MPYTHON_HCSR04_DISTANCE_MM_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0:"%1 hcsr04 untrasonic(mm)",MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP:"",MPYTHON_HCSR04_OBJ_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_OBJ_MESSAGE0:"Hcsr04 ultrasonic initialize name %1 trigger %2 echo %3",MPYTHON_HCSR04_OBJ_TOOLTIP:"",MPYTHON_PM2_5_LitresAir_HELPURL:"",MPYTHON_PM2_5_LitresAir_MESSAGE0:"RX pin %1 Number of particles with diameter of %2 in 0.1 liter air",MPYTHON_PM2_5_LitresAir_TOOLTIP:"",MPYTHON_PM2_5_MIC_HELPURL:"",MPYTHON_PM2_5_MIC_MESSAGE0:"RX pin %1 PM value concentration %2",MPYTHON_PM2_5_MIC_TOOLTIP:"",MPYTHON3_IR_REMOTE_RECV_MESSAGE0:"when infrared receiver %1 received message %2 do %3",MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0:"callback address",MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0:"received message",MPYTHON_IR_REMOTE_RECV_MESSAGE0:"infrared receive %1 callback address %2 callback command %3",MPYTHON_IR_REMOTE_RECV_HELPURL:"",MPYTHON_IR_REMOTE_RECV_TOOLTIP:"",MPYTHON_IR_REMOTE_SEND_MESSAGE0:"infrared send %1 address %2 command %3",MPYTHON_IR_REMOTE_SEND_HELPURL:"",MPYTHON_IR_REMOTE_SEND_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE2_MESSAGE0:"publish data to Wechat app, name %1 value %2",MPYTHON_ONENET_PUB_VALUE2_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE2_HELPURL:"",MPYTHON_ONENET_ACCEPT_MESSAGE:"If received message",MPYTHON_ONENET:"OneNET settings",MPYTHON_ONENET_WECHAT_APP:"Wechat app settings",MPYTHON_ONENET_OPTION_BOARDS:"optional mPython boards",MPYTHON_ONENET_TITLE:"OneNET",MPYTHON_SERVER:"server",MPYTHON_DEVICE_ID:"device_id",MPYTHON_PRODUCT_ID:"product_id",MPYTHON_API_KEY:"product_APIKey",MPYTHON_TOPIC:"topic",MPYTHON_ONENET_CALLBACK:"Callback function",MPYTHON_ONENET_CALLBACK_TITLE:"OneNET callback",MPYTHON_ONENET_OPTION_BOARDS_HELPURL:"",MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0:"choose mPython App %1 in WeChat App",MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP:"",TEXT_TO_BYTE_MESSAGE0:"convert %1 to bytes",TEXT_TO_BYTE_TOOLTIP:"Supported data type as string",TEXT_TO_BYTE_HELPURL:"",OTHER_TO_BYTE_MESSAGE0:"convert Non-text %1 to bytes",OTHER_TO_BYTE_TOOLTIP:"",OTHER_TO_BYTE_HELPURL:"",MPYTHON_BYTES_DECODE_HELPURL:"",MPYTHON_BYTES_DECODE_MESSAGE0:"convert bytes %1 to string",MPYTHON_BYTES_DECODE_TOOLTIP:"",MPYTHON_ONENET_TOOLTIP:"Create a OneNET connection",MPYTHON_ONENET_INIT_WIFI_MESSAGE0:"IoT make sure to connect to Wi-Fi with SSID %1 & Password %2",MPYTHON_ONENET_INIT_WIFI_TOOLTIP:"Let the board access the Wi-Fi environment",MPYTHON_ONENET_INIT_WIFI_HELPURL:"",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL:"",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0:"when receives %1 and %2 from WeChat App",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP:"",MPYTHON_MAC_ADDRESS_HELPURL:"",MPYTHON_MAC_ADDRESS_MESSAGE0:"MAC Address",MPYTHON_MAC_ADDRESS_TOOLTIP:"",MPYTHON_RADIO_REC_HELPURL:"",MPYTHON_RADIO_REC_MESSAGE0:"radio received",MPYTHON_RADIO_REC_TOOLTIP:"received data is bytes",MPYTHON_RADIO_SEND_HELPURL:"",MPYTHON_RADIO_SEND_MESSAGE0:"radio sends %1",MPYTHON_RADIO_SEND_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_CHANNEL_HELPURL:"",MPYTHON_RADIO_CHANNEL_MESSAGE0:"set radio channel %1",MPYTHON_RADIO_CHANNEL_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_ON_OFF_HELPURL:"",MPYTHON_RADIO_ON_OFF_MESSAGE0:"%1 radio",MPYTHON_RADIO_ON_OFF_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_MSG_MESSAGE0:"message from Radio",MPYTHON_RADIO_MSG_TOOLTIP:"",MPYTHON_RADIO_MSG_HELPURL:"",MPYTHON3_RADIO_RECV_MESSAGE0:"when receiving broadcast message from Radio %1 do %2",MPYTHON_RADIO_RECV_MESSAGE0:"when receiving broadcast message %1 from Radio",MPYTHON_RADIO_RECV_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_RECV_HELPURL:"",MPYTHON_RADIO_RECV_MSG_MESSAGE0:"when receiving specific broadcast message %1 from Radio %2 do %3",MPYTHON_RADIO_RECV_MSG_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_RECV_MSG_HELPURL:"",MPYTHON_UDP_INIT_HELPURL:"",MPYTHON_UDP_INIT_MESSAGE0:"connect to UDP",MPYTHON_UDP_INIT_TOOLTIP:"base on Wi-Fi",MPYTHON_UDP_SEND_HELPURL:"",MPYTHON_UDP_SEND_MESSAGE0:"UDP send message %1 to all",MPYTHON_UDP_SEND_TOOLTIP:"",MPYTHON_UDP_SENDTO_HELPURL:"",MPYTHON_UDP_SENDTO_MESSAGE0:"UDP send message %1 to %2 port %3",MPYTHON_UDP_SENDTO_TOOLTIP:"",MPYTHON_UDP_RECV_HELPURL:"",MPYTHON_UDP_RECV_MESSAGE0:"UDP receive message",MPYTHON_UDP_RECV_TOOLTIP:"",MPYTHON_UDP_RECV_EVENT_HELPURL:"",MPYTHON_UDP_RECV_EVENT_MESSAGE0:"when received message from UDP %1 do %2",MPYTHON_UDP_RECV_EVENT_TOOLTIP:"",MPYTHON_UDP_RECV_MSG_MESSAGE0:"message from UDP",MPYTHON_UDP_RECV_MSG_TOOLTIP:"",MPYTHON_UDP_RECV_MSG_HELPURL:"",MPYTHON_DISPCHAR_MODE_1:"normal",MPYTHON_DISPCHAR_MODE_2:"rev",MPYTHON_DISPCHAR_MODE_3:"trans",MPYTHON_AUDIO_XUNFEI_TTS_HELPURL:"",MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0:"TTS play text %1",MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP:'The "Online Speech Synthesis" service needs to be enabled on the "Xunfei Open Platform" www.xfyun.cn',MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL:"https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0:"TTS config APPID %1 APIKey %2",MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP:'Enter the APPID and APIKey obtained on the "Xunfei Open Platform" www.xfyun.cn\nNote: To set the IP whitelist',MPYTHON_AUDIO_PLAY_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",MPYTHON_AUDIO_PLAY_MESSAGE0:"Audio play %1",MPYTHON_AUDIO_PLAY_TOOLTIP:"Need active speakers\nP8 left channel\nP9 right channel\nGND ground\nparameter: \n the url of the network mp3, or the mp3 that has been uploaded to the mPython board, e.g 'music_1.mp3'",MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0:"Audio play %1",MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP:"Need active speakers\nP8 left channel\nP9 right channel\nGND ground\nparameter: \n the url of the network mp3, or the mp3 that has been uploaded to the mPython board, e.g 'music_1.mp3'",MPYTHON_AUDIO_DEINIT_HELPURL:"",MPYTHON_AUDIO_DEINIT_MESSAGE0:"deinit Audio",MPYTHON_AUDIO_DEINIT_TOOLTIP:"Create a cache for controlling the audio decoding",MPYTHON_AUDIO_CMD_HELPURL:"",MPYTHON_AUDIO_CMD_MESSAGE0:"Audio %1",MPYTHON_AUDIO_CMD_TOOLTIP:"",MPYTHON_AUDIO_INIT_HELPURL:"",MPYTHON_AUDIO_INIT_MESSAGE0:"initialize Audio",MPYTHON_AUDIO_INIT_TOOLTIP:"Create a cache for controlling the audio decoding",MPYTHON_AUDIO_START_RECORDING_HELPURL:"",MPYTHON_AUDIO_START_RECORDING_MESSAGE0:"Start the recording The recording time %1 seconds",MPYTHON_AUDIO_START_RECORDING_TOOLTIP:"Need mPython board v1.1 or above hardware version.The recording should not be longer than 5 seconds",MPYTHON_AUDIO_RECORDING_RESULT_HELPURL:"",MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0:"Recording the results",MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL:"",MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0:"For %1 Discern",MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL:"",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0:"Discern Recording the results",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_RECORD_INIT_HELPURL:"",MPYTHON_RECORD_INIT_MESSAGE0:"initialize Recording",MPYTHON_RECORD_INIT_TOOLTIP:"Recording initialization.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_RECORD_DEINIT_HELPURL:"",MPYTHON_RECORD_DEINIT_MESSAGE0:"Trelease cache of Recording",MPYTHON_RECORD_DEINIT_TOOLTIP:"Release the cache after the recording ends.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_RECORD_WAV_HELPURL:"",MPYTHON_RECORD_WAV_MESSAGE0:"record audio with storage path %1 and duration %2 second(s)",MPYTHON_RECORD_WAV_TOOLTIP:"Record audio and store it in *.wav format.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_ASR_HELPURL:"",MPYTHON_ASR_MESSAGE0:"get voice command within %1 seconds",MPYTHON_ASR_TOOLTIP:"Can recognize voice command within 3 seconds.\nNeed mPython board v1.1 or above hardware version.",mpython_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_button_A:"P5 (button A)",mpython_button_B:"P11 (button B)",mpython_PIN7_RGB:"P7 (Onboard RGB)",MPYTHON_PWM_PIN_P7:"P7 (mPython board)",MPYTHON_PWM_PIN_P9:"P9 (mPython box)",mpython_tem:"temperature",mpython_hum:"humidity",mpython_pre:"air pressure",mpython_left_right:"left-right",mpython_front_back:"front-back",mpython_vertical:("vertical","vertical"),mpython_horizontal:("horizontal","horizontal"),mpython_run_in_back:"background",mpython_run_in_front:"foreground",mpython_draw:"draw",mpython_clear:"clear",mpython_s:"second",mpython_ms:"millisecond",mpython_us:"microsecond",mpython_year:"year",mpython_month:"month",mpython_date:"day",mpython_hour:"hour",mpython_minute:"minute",mpython_week:"week number",mpython_days:"days number",MPYTHON_ORDER:"#",MPYTHON_REVERSE_ORDER:"countdown #",MATH_RANDOM_RANDRANGE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MATH_RANDOM_RANDRANGE_TOOLTIP:"Returns a random number in the specified incremental cardinality set, the base value defaults to 1",MATH_RANDOM_RANDRANGE_MESSAGE0:"random number increments from increment interval [%1 , %2) by step %3",MATH_KEEP_DECIMAL_HELPURL:"",MATH_KEEP_DECIMAL_TOOLTIP:"",MATH_KEEP_DECIMAL_MESSAGE0:"%1 keep %2 decimal places",MPYTHON_MIN:"min value",MPYTHON_MAX:"max value",MPYTHON_LENTH:"length",TUPLE_MIN_MAX_LEN_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_MIN_MAX_LEN_TOOLTIP:"",TUPLE_MIN_MAX_LEN_MESSAGE0:"tuple %1 %2",TUPLE_ITEM_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_ITEM_EXIST_TOOLTIP:"",TUPLE_ITEM_EXIST_MESSAGE0:"tuple %1 include %2",LIST_ITEM_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_ITEM_EXIST_TOOLTIP:"",LIST_ITEM_EXIST_MESSAGE0:"list %1 include %2",PARTS_OF_TUPLE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_TUPLE_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",PARTS_OF_TUPLE_MESSAGE0:"return tuple %1 from the %2 to the last item",PARTS_OF_TUPLE2_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_TUPLE2_TOOLTIP:"Incremental order fetching \n Example: \n reciprocal number 5 to reciprocal number 2; \n 0th to 5th",PARTS_OF_TUPLE2_MESSAGE0:"return tuple %1 takes %2 %3 items to %4 %5 items",PARTS_OF_LIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_LIST_TOOLTIP:"Incremental order fetching \n Example: \n reciprocal number 5 to reciprocal number 2; \n 0th to 5th",PARTS_OF_LIST_MESSAGE0:"return list %1 takes %2 %3 items to %4 %5 items",LIST_TO_TUPLE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_TO_TUPLE_TOOLTIP:"",LIST_TO_TUPLE_MESSAGE0:"list %1 conversion to tuple",tuple_create_with_MESSAGE0:"define tuple %1 = %2 ",tuple_create_with_TOOLTIP:"When you only have one element, you need to add a comma after the element",tuple_create_with_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",tuple_order_item_MESSAGE0:"tuple %1 %2 %3 item",tuple_order_item_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",tuple_order_item_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_ORDER_ITEM_MESSAGE0:"list %1 %2 %3 item",LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_LIST_ORDER_ITEM_MESSAGE0:"set list %1 %2 %3 item as %4",SET_LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",INSERT_LIST_ORDER_ITEM_MESSAGE0:"insert list %1 %2 %3 item as %4",INSERT_LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",INSERT_LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_TUPLE_ORDER_ITEM_MESSAGE0:"set tuple %1 %2 %3 item as %4",SET_TUPLE_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_TUPLE_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_TOOLTIP:"",DICT_CREATE_WITH_MESSAGE0:"define dictionary %1 = %2",SET_CREATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_CREATE_WITH_TOOLTIP:"",SET_CREATE_WITH_MESSAGE0:"define set %1 = %2",SET_UPDATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_UPDATE_WITH_TOOLTIP:"Add parameters as strings, lists, tuples, sets, dictionaries (add only key). For existing elements, do not do anything",SET_UPDATE_WITH_MESSAGE0:"update set %1 with %2",INTERSECTION_OF_SETS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",INTERSECTION_OF_SETS_TOOLTIP:"",INTERSECTION_OF_SETS_MESSAGE0:"%1 of set %2 and set %3",MPYTHON_INTERSECTION:"intersection",MPYTHON_UNION:"union",MPYTHON_DIFFERENCE:"difference",SETS_UPDATE_WAYS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SETS_UPDATE_WAYS_TOOLTIP:"",SETS_UPDATE_WAYS_MESSAGE0:"update set %1 as the %3 with set %2",SUBSET_SUPERSET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SUBSET_SUPERSET_TOOLTIP:"",SUBSET_SUPERSET_MESSAGE0:"set %1 is %3 of set %2",MPYTHON_SUBSET:"subset",MPYTHON_SUPERSET:"superset",GET_SETS_POP_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",GET_SETS_POP_TOOLTIP:"",GET_SETS_POP_MESSAGE0:"return a random item from the set %1, and remove it",LEN_OF_SETS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LEN_OF_SETS_TOOLTIP:"",LEN_OF_SETS_MESSAGE0:"length of set %1",CREATE_EMPTY_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",CREATE_EMPTY_SET_TOOLTIP:"",CREATE_EMPTY_SET_MESSAGE0:"create empty sets %1",BIT_INVERSION_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",BIT_INVERSION_TOOLTIP:"Reverse each binary bit of data",BIT_INVERSION_MESSAGE0:"invert each binary bit of the data %1",TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"Items can be strings, assigned variables, tuples",DICT_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"",DICT_KEY_VALUE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_VALUE_TOOLTIP:"",DICT_KEY_VALUE_MESSAGE0:"value of the key %2 in dictionary %1",ADD_DICT_KEY_VALUE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",ADD_DICT_KEY_VALUE_TOOLTIP:"Update the key if the key already exists",ADD_DICT_KEY_VALUE_MESSAGE0:"add key %2 & value %3 to dictionary %1",DICT_LENGTH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_LENGTH_TOOLTIP:"",DICT_LENGTH_MESSAGE0:"length of dictionary %1",DICT_KEY_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_EXIST_TOOLTIP:"",DICT_KEY_EXIST_MESSAGE0:"dictionary %1 include key %2",DICT_KEY_OR_VAL_LIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_OR_VAL_LIST_TOOLTIP:"",DICT_KEY_OR_VAL_LIST_MESSAGE0:"list of %2 in dictionary %1",DICT_KEYS:"KEY",DICT_VALUES:"VALUE",mpython_lists_append_MESSAGE0:"add item %2 at the end of list %1",mpython_lists_append_TOOLTIP:"",mpython_lists_append_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_lists_extend_MESSAGE0:"list %1 append list %2",mpython_lists_extend_TOOLTIP:"",mpython_lists_extend_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_lists_clear_MESSAGE0:"clear list %1",mpython_lists_clear_TOOLTIP:"",mpython_lists_clear_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MPYTHON_REMOVE_REPETITION_MESSAGE0:"list%1 remove repetition",MPYTHON_REMOVE_REPETITION_TOOLTIP:"",MPYTHON_REMOVE_REPETITION_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_Timer_value_MESSAGE0:"timer %1 count value",mpython_Timer_value_TOOLTIP:"Get and return the current count value of the timer",mpython_Timer_deinit_MESSAGE0:"clear timer / event %1",mpython_Timer_deinit_TOOLTIP:"Cancel the initialization of the timer. Stop timer and disable timer peripherals",mpython_Interrupt_AB_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",mpython_Interrupt_AB_TOOLTIP:"",mpython_Interrupt_AB_MESSAGE0:"when the button %1 is %2",mpython_Interrupt_pin_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",mpython_Interrupt_pin_TOOLTIP:"Rising edge trigger: from low level to high level; falling edge trigger: from high level to low level",mpython_Interrupt_pin_MESSAGE0:"when pin %1 level is from %2",mpython_Interrupt_pin_IRQ_FALLING:"↘ high to low",mpython_Interrupt_pin_IRQ_RISING:"↗ low to high",mpython_IRQ_FALLING:"pressed",mpython_IRQ_RISING:"released",mpython_PERIODIC:"repeated mode",mpython_ONE_SHOT:"delayed mode",MPYTHON_IS_SHAKED_MESSAGE0:"the board %1",MPYTHON_IS_SHAKED_HELPURL:"",MPYTHON_IS_SHAKED_TOOLTIP:"",MPYTHON_IS_SHAKED:"was shaked",MPYTHON_IS_THROWN:"was thrown",MPYTHON_SHAKE_DETECTOR_MESSAGE0:"when the board %1",MPYTHON_SHAKE_DETECTOR_HELPURL:"",MPYTHON_SHAKE_DETECTOR_TOOLTIP:"",MPYTHON_IS_TILTED_MESSAGE0:"the board is %1",MPYTHON_IS_TILTED_HELPURL:"",MPYTHON_IS_TILTED_TOOLTIP:"",MPYTHON_TILT_DETECTOR_MESSAGE0:"when the board is %1",MPYTHON_TILT_DETECTOR_HELPURL:"",MPYTHON_TILT_DETECTOR_TOOLTIP:"",MPYTHON_DIRECTION_FORWARD:"tilt forward",MPYTHON_DIRECTION_BACK:"tilt back",MPYTHON_DIRECTION_RIGHT:"tilt right",MPYTHON_DIRECTION_LEFT:"tilt left",MPYTHON_DIRECTION_NONE:"flat",MPYTHON_TOUCH_EVENT_MESSAGE0:"when the touchpad %1 is %2",MPYTHON_TOUCH_EVENT_HELPURL:"",MPYTHON_TOUCH_EVENT_TOOLTIP:"",MPYTHON_TOUCH_EVENT_PRESSED:"pressed",MPYTHON_TOUCH_EVENT_UNPRESSED:"unpressed",MPYTHON_CUSTOM_EVENT_MESSAGE0:"event %1 : when %2",MPYTHON_CUSTOM_EVENT_HELPURL:"",MPYTHON_CUSTOM_EVENT_TOOLTIP:"Custom events use port 1/2/4/7/8/9/10, shared with Timers, cannot access one port at the same time.\nMax up to 4 events/timers at the same time.\nIf there is conflict, try changing the number.",mpython_music_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_music_range_pitch_TOOLTIP:"duration is the length of a single frequency",mpython_music_range_pitch_MESSAGE0:"play tone from %1 to %2 step %3 duration %4 ms Pin %5",mpython_neopixel_init_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_neopixel_init_TOOLTIP:"",mpython_neopixel_init_MESSAGE0:"initialize light strip with Name %1 Pin %2 Quantity %3",MPYTHON_NEOPIXEL_RAINBOW_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP:"",MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0:"define rainbow effect of light strip with Name %1 Quantity %2 bright %3 offset %4",MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP:"Adjust the brightness range of 0 to 100",MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0:"light strip %1 set brightness as %2",mpython_neopixel_single_TOOLTIP:"",mpython_neopixel_single_MESSAGE0:"light strip %1 # %2 R %3 G %4 B %5",mpython_neopixel_single_gui_MESSAGE0:"light strip %1 # %2 color as %3",mpython_neopixel_single_gui_TOOLTIP:"",mpython_neopixel_show_TOOLTIP:"",mpython_neopixel_show_MESSAGE0:"light strip %1 setting take effect",mpython_neopixel_off_TOOLTIP:"",mpython_neopixel_off_MESSAGE0:"light strip %1 off",mpython_neopixel_all_TOOLTIP:"",mpython_neopixel_all_MESSAGE0:"light strip %1 full bright R %2 G %3 B %4",mpython_neopixel_all_gui_TOOLTIP:"",mpython_neopixel_all_gui_MESSAGE0:"light strip %1 full bright with color %2",mpython_time_localtime_MESSAGE0:"local time %1",mpython_time_localtime_TOOLTIP:"Week number: return 0 to 6, Monday is 0, Sunday is 6\nDays number: return the position of the day in the year\nIt is recommended to connect wifi and get network time first.",mpython_WiFi_config_MESSAGE0:"Wi-Fi configuration information %1",mpython_WiFi_config_TOOLTIP:"",mpython_time_ticks_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_time_ticks_MESSAGE0:"run time %1",mpython_time_ticks_TOOLTIP:"",MPYTHON_TIMER_DEF_MESSAGE0:"define timer %1",MPYTHON_TIMER_INIT_MESSAGE0:"init timer %1 %2 , cycle %3 millisecond(s)",mpython_Timer_MESSAGE0:"set timer %1 %2 , cycle %3 millisecond(s)",mpython_Timer_TOOLTIP:"Create timer n, n=1-14.\nMax up to 4 timers at the same time.\nIf there is conflict, try changing the number.\n3 for internal program,\n5/6 for servo system and ADC,\n11 is used for shaked event,\n12 is used for touchpad event,\n13 is used for Radio or DHT11/DHT22 timing value,\n14 is used for OneNET or tilt detection,\nothers ports are shared with custom events.",mpython_Timer_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",mpython_init_bluetooth_MESSAGE0:"Initialize Bluetooth Name %1",mpython_init_bluetooth_TOOLTIP:"Initialize Bluetooth Name",mpython_OnOff_bluetooth_MESSAGE0:"Bluetooth device %1 broadcasting",mpython_OnOff_bluetooth_TOOLTIP:"Bluetooth devices turn on or off broadcasting",mpython_HID_consumer_bluetooth_MESSAGE0:"HID Consumption Equipment%1 Status%2",mpython_HID_consumer_bluetooth_TOOLTIP:"Controllers that simulate HID consumer devices, such as Bluetooth remote controls",mpython_HID_mouse_bluetooth_MESSAGE0:"HID Mouse button%1",mpython_HID_mouse_bluetooth_TOOLTIP:"HID Mouse button",mpython_HID_mouse_pointer_bluetooth_MESSAGE0:"Mouse pointer movement x%2 y%1",mpython_HID_mouse_pointer_bluetooth_TOOLTIP:"Relative Displacement of Mouse Pointer Coordinates X and Y,Range -1023 ~ 1023",mpython_HID_release_mouse_bluetooth_MESSAGE0:"Mouse Release Key",mpython_HID_release_mouse_bluetooth_TOOLTIP:"Mouse device",mpython_HID_keyboard_bluetooth_MESSAGE0:"HID Keyboard device keys%1",mpython_HID_keyboard_bluetooth_TOOLTIP:"HID keyboard equipment",mpython_HID_keyboard_group_bluetooth_MESSAGE0:"HID device keys%1 combination keys%2",mpython_HID_keyboard_group_bluetooth_TOOLTIP:'If you want to use multiple keystrokes to combine instructions, you can use "|" or arithmetic',mpython_HID_keyboard_part_bluetooth_MESSAGE0:"HID Device combination key%1",mpython_HID_keyboard_part_bluetooth_TOOLTIP:'If you want to use multiple key combinations of instructions, you can use "|" or operation',mpython_HID_release_keyboard_bluetooth_MESSAGE0:"Keyboard Release Key",mpython_HID_release_keyboard_bluetooth_TOOLTIP:"Keyboard equipment",mpython_init_wifi_MESSAGE0:"connect to Wi-Fi with SSID %1 & Password %2",mpython_init_wifi_TOOLTIP:"Let the board access the Wi-Fi environment",MPYTHON_WIFI_IFCONFIG_MESSAGE0:"Wi-Fi set static IP %1 IP address %2 netmask %3 gateway %4 DNS %5",MPYTHON_WIFI_IFCONFIG_TOOLTIP:"",MPYTHON_WIFI_IFCONFIG_HELPURL:"",mpython_dis_WiFi_MESSAGE0:"disconnect Wi-Fi connection",mpython_dis_WiFi_TOOLTIP:"",MPYTHON_ENABLE_APWIFI_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",MPYTHON_ENABLE_APWIFI_TOOLTIP:"The password can be empty or alphanumeric with more than 8 digits.\nAP mode is only used for communication between the control boards. It cannot be used as a hotspot to make other devices access the Internet.",MPYTHON_ENABLE_APWIFI_MESSAGE0:"open AP mode with SSID %1 & Password %2 Channel %3",mpython_disable_APWiFi_MESSAGE0:"close AP mode",mpython_disable_APWiFi_TOOLTIP:"",mpython_ntptime_settime_MESSAGE0:"synchronize network time, timezone %1 & timing server %2",mpython_ntptime_settime_TOOLTIP:"NTP time synchronization is a time synchronization network technology",mpython_wifi_get_date_MESSAGE0:"get the current date string",mpython_wifi_get_date_TOOLTIP:"",mpython_wifi_get_time_MESSAGE0:"get the current time string",mpython_wifi_get_time_TOOLTIP:"",mpython_ntptime_timezone_E1:"UTC+1",mpython_ntptime_timezone_E2:"UTC+2",mpython_ntptime_timezone_E3:"UTC+3",mpython_ntptime_timezone_E4:"UTC+4",mpython_ntptime_timezone_E5:"UTC+5",mpython_ntptime_timezone_E6:"UTC+6",mpython_ntptime_timezone_E7:"UTC+7",mpython_ntptime_timezone_E8:"UTC+8",mpython_ntptime_timezone_E9:"UTC+9",mpython_ntptime_timezone_E10:"UTC+10",mpython_ntptime_timezone_E11:"UTC+11",mpython_ntptime_timezone_E12:"UTC+12",mpython_ntptime_timezone_0:"UTC",mpython_ntptime_timezone_W1:"UTC-1",mpython_ntptime_timezone_W2:"UTC-2",mpython_ntptime_timezone_W3:"UTC-3",mpython_ntptime_timezone_W4:"UTC-4",mpython_ntptime_timezone_W5:"UTC-5",mpython_ntptime_timezone_W6:"UTC-6",mpython_ntptime_timezone_W7:"UTC-7",mpython_ntptime_timezone_W8:"UTC-8",mpython_ntptime_timezone_W9:"UTC-9",mpython_ntptime_timezone_W10:"UTC-10",mpython_ntptime_timezone_W11:"UTC-11",mpython_ntptime_timezone_W12:"UTC-12",FILE_TO_LIST_HELPURL:"",FILE_TO_LIST_TOOLTIP:"Read the text file content of the specified path (only in UTF-8 format) and converts it to a list format, separated by the selected separator.",FILE_TO_LIST_MESSAGE0:"convert the text file %1 to a list separated by %2",FILE_TO_BIN_HELPURL:"",FILE_TO_BIN_TOOLTIP:"Reads the contents of the file in the specified path in binary format.",FILE_TO_BIN_MESSAGE0:"read the binary content of file %1",MPYTHON_INIT_FILE_HELPURL:"",MPYTHON_INIT_FILE_TOOLTIP:"Initializes a text file, creates a file if it does not exist, and clears the content if it exists.",MPYTHON_INIT_FILE_MESSAGE0:"initialize text file %1",MPYTHON_WRITE_FILE_HELPURL:"",MPYTHON_WRITE_FILE_TOOLTIP:"Writes content to a text file of the specified path, and creates a file if the file does not exist.",MPYTHON_WRITE_FILE_MESSAGE0:"write content %2 to the text file %1 separated by %3",MPYTHON_SDCARD_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",MPYTHON_SDCARD_INIT_TOOLTIP:"sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\nMake sure that the pins of the SPI bus are connected to the micro SD card which is formatted by using the FAT or FAT32 file system.",MPYTHON_SDCARD_INIT_MESSAGE0:"initialize SD card",MPYTHON_SDCARD_MOUNT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",MPYTHON_SDCARD_MOUNT_TOOLTIP:"Mount the SD card to the specified path.",MPYTHON_SDCARD_MOUNT_MESSAGE0:"mount SD card to path %1",MPYTHON_ENTER:"enter",MPYTHON_COMMA:"comma",MPYTHON_SEMICOLON:"semicolon",MPYTHON_SPACE:"space",mpython_def_clock_MESSAGE0:"initialize clock %1 x %2 y %3 radius %4",mpython_def_clock_TOOLTIP:"",mpython_settime_clock_MESSAGE0:"clock %1 read time",mpython_settime_clock_TOOLTIP:"",mpython_draw_clear_clock_MESSAGE0:"%1 clock %2",mpython_draw_clear_clock_TOOLTIP:"",mpython_tinywebio_start_MESSAGE0:"start TinyWebIO service, run in %1",mpython_tinywebio_start_TOOLTIP:"Wi-Fi is required to start the service, and the TinyWebIO service provides a remote control interface for the App Inventor application.",mpython_tinywebio_client_setup_HELPURL:"",mpython_tinywebio_client_setup_TOOLTIP:"Items send to the server (separated by comma)\nbuttona/b Button status\ntouchpadp/y/t/h/o/n Touch button value \nlight Light value\nsound Sound value\naccelerometer Triaxial acceleration value\nid the board identification \ntime timestamp \npind digital IO pin \npina analog IO pin\n----------\nItems read from the server (separated by comma)\nrgb0/ 1/2 RGB lamp bead \noled OLED display \nmusic music \nservo steering gear \npind digital IO pin \npina analog IO pin",mpython_tinywebio_client_setup_MESSAGE0:"setup TinyWebIO client params %1 TinyWebDB server address %2 items send to the server %3 items read from the server %4 access server time interval(ms) %5",mpython_tinywebio_client_action_HELPURL:"",mpython_tinywebio_client_action_TOOLTIP:"",mpython_tinywebio_client_action_MESSAGE0:"%1 TinyWebIO client",mpython_tinywebio_client_action_start:"start",mpython_tinywebio_client_action_stop:"stop",MPYTHON_CUSTOM_CODE_HELPURL:"",MPYTHON_CUSTOM_CODE_TOOLTIP:"",MPYTHON_CUSTOM_CODE_MESSAGE0:"%1 custom code %2 %3",MPYTHON_CUSTOM_TYPE_IMPORT:"topping",MPYTHON_CUSTOM_TYPE_NORMAL:"normal",MPYTHON_CUSTOM_VALUE_MESSAGE0:"custom value %1",mpython_servo_angle0_MESSAGE0:"set the servo %1 angle as %2",mpython_servo_angle_MESSAGE0:"set the servo %1 angle as %2 pulse width from %3 us to %4 us actuation range as %5",mpython_servo_angle_TOOLTIP:"power cable Vcc (red) connected to expansion-board power port V, ground line GND (brown) connected to expansion-board ground port G, control signal line (orange) connected to selected expansion-board pins",mpython_dh11_hum_tem_MESSAGE0:"DHT11 %1 %2",mpython_dh11_hum_tem_TOOLTIP:'"+" on the DHT11 connects the power port of the expansion-board V, "-" connects the ground port of the expansion-board G, "out" connects the pin0 of the expansion-board',MPYTHON_DH22_HUM_TEM_MESSAGE0:"DHT22 %1 %2",MPYTHON_DH22_HUM_TEM_TOOLTIP:"",MPYTHON_DH22_HUM_TEM_HELPURL:"https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",mpython_music_note_MESSAGE0:"note %1 %2 : %3",mpython_music_note_TOOLTIP:"Note, such as C4:4",mpython_return_list_MESSAGE0:"define list %1 = %2",mpython_return_list_TOOLTIP:"",mpython_display_Show_MESSAGE0:"OLED setting take effect",mpython_display_Show_TOOLTIP:"",mpython_display_DispChar_MESSAGE0:"display text %3 at x %1 y %2 text mode %4 %5",mpython_display_DispChar_TOOLTIP:"OLED resolution 128x64",mpython_display_DispChar_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",mpython_display_DispChar_5lines_MESSAGE0:"OLED line %1 shows %2 text mode %3 %4",mpython_display_DispChar_5lines_TOOLTIP:"OLED resolution 128x64",mpython_line1:"1",mpython_line2:"2",mpython_line3:"3",mpython_line4:"4",mpython_line5:"5",MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0:"OLED clear line %1",MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP:"OLED resolution 128x64",MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL:"",mpython_display_fill_0:"clear",mpython_display_fill_1:"full bright",mpython_display_invert_0:"black background",mpython_display_invert_1:"white background",mpython_display_show:"show",mpython_display_fill_MESSAGE0:"OLED display %1",mpython_display_fill_TOOLTIP:"",mpython_display_pixel_0:"dark",mpython_display_pixel_1:"bright",mpython_display_pixel_MESSAGE0:"draw a point x %1 y %2 as %3",mpython_display_pixel_TOOLTIP:"",mpython_display_hline_0:"erase",mpython_display_hline_1:"draw",mpython_display_hline_MESSAGE0:"%1 horizontal line %2 x %3 y %4 length %5",mpython_display_hline_TOOLTIP:"",mpython_ProgressBar_MESSAGE0:"progress bar %1 x %2 y %3 width %4 height %5 progress %6",mpython_ProgressBar_TOOLTIP:"",mpython_stripBar_MESSAGE0:"column bar %1 x %2 y %3 width %4 height %5 progress %6",mpython_stripBar_TOOLTIP:"",MPYTHON_QR_CODE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",MPYTHON_QR_CODE_TOOLTIP:"",MPYTHON_QR_CODE_MESSAGE0:"display QR code %3 at x %1 y %2 with size %4",MPYTHON_DISPLAY_MODE_0:"erase",MPYTHON_DISPLAY_MODE_1:"draw",MPYTHON_DISPLAY_HOLLOW:"hollow",MPYTHON_DISPLAY_SOLID:"solid",MPYTHON_DISPLAY_HVLINE_MESSAGE0:"%1 %2 line %3 x %4 y %5 length %6",MPYTHON_DISPLAY_HVLINE_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0:"%1 %2 rectangle %3 x %4 y %5 width %6 height %7",MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0:"%1 %2 circle %3 x %4 y %5 radius %6",MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0:"%1 %2 triangle %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP:"",MPYTHON_RGB_0:"0 #",MPYTHON_RGB_1:"1 #",MPYTHON_RGB_2:"2 #",MPYTHON_RGB_ALL:"all",MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0:"set %1 RGB light(s) color to %2",MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP:"1/30 of the original brightness can better display the color difference",MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0:"set %1 RGB light(s) color to R%2 G%3 B%4",MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP:"1/30 of the original brightness can better display the color difference",MPYTHON_OFF_RGB_LIST_MESSAGE0:"turn off %1 RGB light(s)",MPYTHON_OFF_RGB_LIST_TOOLTIP:"",MPYTHON_MUSIC_PLAY_MESSAGE0:"play music %1 Pin %2",MPYTHON_MUSIC_PLAY_TOOLTIP:"Play the built-in music",MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0:"play music %1 until end, Pin %2",MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP:"Play the built-in music",MPYTHON_MUSIC_GE_CHANG_ZU_GUO:"GE_CHANG_ZU_GUO",MPYTHON_MUSIC_DONG_FANG_HONG:"DONG_FANG_HONG",MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE:"CAI_YUN_ZHUI_YUE",MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI:"ZOU_JIN_XIN_SHI_DAI",MPYTHON_MUSIC_MO_LI_HUA:"MO_LI_HUA",MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO:"YI_MENG_SHAN_XIAO_DIAO",mpython_display_vline_MESSAGE0:"%1 vertical line %2 x %3 y %4 length %5",mpython_display_vline_TOOLTIP:"",mpython_display_line_MESSAGE0:"%1 line %2 x1 %3 y1 %4 to x2 %5 y2 %6",mpython_display_line_TOOLTIP:"",mpython_display_rect_MESSAGE0:"%1 border %2 x %3 y %4 width %5 height %6",mpython_display_rect_TOOLTIP:"",mpython_display_RoundRect_MESSAGE0:"%1 arc border %2 x %3 y %4 width %5 height %6 radius %7",mpython_display_RoundRect_TOOLTIP:"",mpython_display_fill_rect_MESSAGE0:"%1 rectangle %2 x %3 y %4 width %5 height %6",mpython_display_fill_rect_TOOLTIP:"",mpython_display_fill_circle_MESSAGE0:"%1 solid circle %2 x %3 y %4 radius %5",mpython_display_fill_circle_TOOLTIP:"",mpython_display_circle_MESSAGE0:"%1 hollow circle %2 x %3 y %4 radius %5",mpython_display_circle_TOOLTIP:"",mpython_display_triangle_MESSAGE0:"%1 hollow triangle %2 x %3 y %4 x2 %5 y2 %6 x3 %7 y3 %8",mpython_display_triangle_TOOLTIP:"",mpython_display_fill_triangle_MESSAGE0:"%1 solid triangle %2 x %3 y %4 x2 %5 y2 %6 x3 %7 y3 %8",mpython_display_fill_triangle_TOOLTIP:"",mpython_display_Bitmap_MESSAGE0:"%1 pattern x %2 y %3 width %4 height %5 with hex image data %6",mpython_display_Bitmap_TOOLTIP:"Display hex image data at a specified position on the OLED screen",MPYTHON_GET_PBM_DATA_MESSAGE0:"get inner image %1 Pattern %2",MPYTHON_GET_PBM_DATA_TOOLTIP:"Supports * .PBM or * .PBM format monochrome image files, retrieves image file data of specified path, and returns a tuple object",MPYTHON_GET_PBM_DATA_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0:"Get custom image%1 mode%2",MPYTHON_DISPLAY_PBM_DATA_MESSAGE0:"display image at x %1 y %2 with data %3",MPYTHON_DISPLAY_PBM_DATA_TOOLTIP:"Monochromatic image files supporting * .PBM or * .PBM formats",MPYTHON_DISPLAY_PBM_DATA_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",MPYTHON_BITMAP_FROM_FILE_MESSAGE0:"display image at x %1 y %2 with data %5 width %3 height %4",MPYTHON_BITMAP_FROM_FILE_TOOLTIP:"",MPYTHON_BITMAP_FROM_FILE_HELPURL:"",mpython_front:"front",mpython_reverse:"reverse",MPYTHON_FONT_DIGIFACE_11:"Digiface 11px",MPYTHON_FONT_DIGIFACE_16:"Digiface 16px",MPYTHON_FONT_DIGIFACE_21:"Digiface 21px",MPYTHON_FONT_DIGIFACE_30:"Digiface 30px",MPYTHON_FONT_DIGIFACE_44:"Digiface 44px",MPYTHON_FONT_DIGIFACE_IT_30:"Digiface Italic 30px",MPYTHON_FONT_DIGIFACE_IT_42:"Digiface Italic 42px",MPYTHON_FONT_DVSM_12:"DejaVu Sans Mono 12px",MPYTHON_FONT_DVSM_16:"DejaVu Sans Mono 16px",MPYTHON_FONT_DVSM_21:"DejaVu Sans Mono 21px",MPYTHON_FONT_DVSMB_12:"DejaVu Sans Mono Bold 12px",MPYTHON_FONT_DVSMB_16:"DejaVu Sans Mono Bold 16px",MPYTHON_FONT_DVSMB_21:"DejaVu Sans Mono Bold 21px",MPYTHON_FONT_WRAP:"auto wrap",MPYTHON_FONT_NO_WRAP:"no wrap",MPYTHON_FACE_1:"Heart",MPYTHON_FACE_2:"Small heart",MPYTHON_FACE_3:"Happy",MPYTHON_FACE_4:"Smile",MPYTHON_FACE_5:"Sad",MPYTHON_FACE_6:"Confused",MPYTHON_FACE_7:"Angry",MPYTHON_FACE_8:"Sleep",MPYTHON_FACE_9:"Surprise",MPYTHON_FACE_10:"Silly",MPYTHON_FACE_11:"Wonderful",MPYTHON_FACE_12:"Bored",MPYTHON_FACE_ROCK:"Rock",MPYTHON_FACE_PAPER:"Paper",MPYTHON_FACE_SCISSORS:"Scissors",MPYTHON_FACE_ROCK_S:"Small rock",MPYTHON_FACE_PAPER_S:"Small paper",MPYTHON_FACE_SCISSORS_S:"Small scissors",MPYTHON_DISPLAY_FONT_MESSAGE0:"display text %3 at x %1 y %2, using %4 font with %5",MPYTHON_DISPLAY_FONT_TOOLTIP:"",MPYTHON_DISPLAY_FONT_HELPURL:"",mpython_button_is_pressed_MESSAGE0:"button %1 is pressed",mpython_button_is_pressed_TOOLTIP:"",mpython_touchPad_value_MESSAGE0:"button %1 is touched",mpython_touchPad_value_TOOLTIP:"",mpython_touchPad_value_num_MESSAGE0:"button %1 touch value",mpython_touchPad_value_num_TOOLTIP:"",mpython_read_digital_MESSAGE0:"pin %1 digital value",mpython_read_digital_TOOLTIP:"",mpython_read_DS18B20_MESSAGE0:"DS18B20 waterproof temperature sensor at pin %1",mpython_read_DS18B20_TOOLTIP:"",mpython_read_DS18B20_HELPURL:"http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",mpython_set_digital_MESSAGE0:"set pin %2 digital value to %1",mpython_set_digital_TOOLTIP:"",mpython_read_analog_MESSAGE0:"pin %1 analog value",mpython_read_analog_TOOLTIP:"",mpython_set_analog_MESSAGE0:"set pin %2 analog value (PWM) to %1",mpython_set_analog_TOOLTIP:"The analog output is a pulse width modulated signal output through the IO pin, which outputs a specified voltage value, referred to as PWM.",mpython_set_RGB_MESSAGE0:"set %1 RGB light color to R %2 G %3 B %4",mpython_set_RGB_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_color_MESSAGE0:"set %1 RGB light color to %2",mpython_set_RGB_color_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_all_MESSAGE0:"set all RGB lights color to R %1 G %2 B %3",mpython_set_RGB_all_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_color_all_MESSAGE0:"set all RGB lights color to %1",mpython_set_RGB_color_all_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_fresh_RGB_MESSAGE0:"RGB lights settings take effect",mpython_fresh_RGB_TOOLTIP:"",mpython_off_RGB_MESSAGE0:"turn off all RGB lights",mpython_off_RGB_TOOLTIP:"",mpython_buzz_state_MESSAGE0:"stop playing music",mpython_buzz_state_TOOLTIP:"",mpython_buzz_freq_MESSAGE0:"play continuous tone %1 at Pin %2",mpython_buzz_freq_TOOLTIP:"",mpython_buzz_tone_MESSAGE0:"play tone %1",mpython_buzz_tone_TOOLTIP:"",MPYTHON_MUSIC_TONE_TEMPO_HELPURL:"",MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP:"The default pin is P6 of the mPython board",MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0:"play musical note %1 at Pin %2",MPYTHON_MUSIC_TONE_HELPURL:"",MPYTHON_MUSIC_TONE_TOOLTIP:"",MPYTHON_MUSIC_TONE_MESSAGE0:"tone %1",MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL:"",MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP:"",MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0:"note %1 beat %2",MPYTHON_MUSIC_TICK_HELPURL:"",MPYTHON_MUSIC_TICK_TOOLTIP:"",MPYTHON_MUSIC_TICK_MESSAGE0:"beat %1",MPYTHON_4_LINES_HELPURL:"",MPYTHON_4_LINES_TOOLTIP:"",MPYTHON_4_LINES_MESSAGE0:"%1",NUMBER_1:"1",NUMBER_1_2:"1/2",NUMBER_1_4:"1/4",NUMBER_2:"2",NUMBER_4:"4",mpython_read_sound_MESSAGE0:"sound value",mpython_read_sound_TOOLTIP:"",mpython_read_light_MESSAGE0:"light value",mpython_read_light_TOOLTIP:"",mpython_accelerometer_get_MESSAGE0:"%1 axis acceleration",mpython_accelerometer_get_TOOLTIP:"",MPYTHON_ACCELEROMETER_RANGE_2G:"±2g",MPYTHON_ACCELEROMETER_RANGE_4G:"±4g",MPYTHON_ACCELEROMETER_RANGE_8G:"±8g",MPYTHON_ACCELEROMETER_RANGE_16G:"±16g",MPYTHON_ACCELEROMETER_RES_10_BIT:"10bits",MPYTHON_ACCELEROMETER_RES_12_BIT:"12bits",MPYTHON_ACCELEROMETER_RES_14_BIT:"14bits",MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP:"Set the acceleration range, the default is ±2g。",MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0:"set acceleration range to %1",MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP:"Set the acceleration resolution, the default is 10bits。",MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0:"set acceleration resolution to %1",MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP:"Calibrate the acceleration value deviation of the three axes (x, y, z) of the accelerometer.\nIn general, calibration is not required, and calibration is only required when the acceleration deviation is large.\nx , y , z are the adjustment deviation values, and the correction range is ±1g.\nNote: Calibration data will not be saved after power off.",MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0:"calibration acceleration value with %1 X axis deviation %2 Y axis deviation %3 Z axis deviation %4",MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0:"magnetic force of %1 axis",MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0:"get magnetic heading",MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0:"magnetic calibrate",MPYTHON_MAGNETIC_PEELING_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_PEELING_MESSAGE0:"magnetic peeling",MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0:"get magnetic field strength",MPYTHON_TILT_ANGLE_HELPURL:"",MPYTHON_TILT_ANGLE_TOOLTIP:"",MPYTHON_TILT_ANGLE_MESSAGE0:"%1 axis tilt angle",mpython_random_choice_MESSAGE0:"random item %1",mpython_random_choice_TOOLTIP:"Return a random item in a list or string in String format",MACHINE_TIME_PULSE_US_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",MACHINE_TIME_PULSE_US_MESSAGE0:"duration(us) of external %2 pulse level at %1",MACHINE_TIME_PULSE_US_TOOLTIP:"",BYTES:"bytes",MPYTHON_I2C_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",MPYTHON_I2C_INIT_MESSAGE0:"init i2c with baudrate %1",MPYTHON_I2C_INIT_TOOLTIP:"",MPYTHON_I2C_DEV_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",MPYTHON_I2C_DEV_INIT_MESSAGE0:"init %1 SCL %2 SDA %3 baudrate %4",MPYTHON_I2C_DEV_INIT_TOOLTIP:"",MPYTHON_I2C_SCAN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",MPYTHON_I2C_SCAN_MESSAGE0:"%1 scan result",MPYTHON_I2C_SCAN_TOOLTIP:"Return an array object",MPYTHON_I2C_DEINIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",MPYTHON_I2C_DEINIT_MESSAGE0:"deinit %1",MPYTHON_I2C_DEINIT_TOOLTIP:"",MPYTHON_I2C_WRITETO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_WRITETO_MESSAGE0:"write to %1 %5 address %2 data %3 stop bit %4",MPYTHON_I2C_WRITETO_TOOLTIP:"Address: Number\nData: Number, String",MPYTHON_I2C_READFROM_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_READFROM_MESSAGE0:"read from %1 %5 address %2 bytes num %3 stop bit %4",MPYTHON_I2C_READFROM_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MPYTHON_I2C_READFROM_INTO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_READFROM_INTO_MESSAGE0:"read from %1 %6 address %2 into %3 bytes num %4 stop bit %5",MPYTHON_I2C_READFROM_INTO_TOOLTIP:"",MPYTHON_I2C_WRITETO_MEN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_WRITETO_MEN_MESSAGE0:"write to %1 %5 address %2 mem %4 data %3",MPYTHON_I2C_WRITETO_MEN_TOOLTIP:"Address: Number\nData: Number, String",MPYTHON_I2C_READFROM_MEN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_READFROM_MEN_MESSAGE0:"read from %1 %5 address %2 mem %4 bytes num %3",MPYTHON_I2C_READFROM_MEN_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MPYTHON_I2C_READFROM_MEN_INTO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0:"read from %1 %6 address %2 mem %5 into %3 bytes num %4",MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MICROBIT_CONVERT_BYTEARRAY_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/i2c.html",MICROBIT_CONVERT_BYTEARRAY_TOOLTIP:"",MICROBIT_CONVERT_BYTEARRAY_MESSAGE0:"bytearray %1",AUTH:"Please authorize this app to enable your work to be saved and to allow it to be shared by you.",CHAT:"Chat with your collaborator by typing in this box!",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"remove %2 item in list %1",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"Conversion data type",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"the integer part of the quotient %1 ÷ %2",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"Bitwise operations on numbers",ME:"Me",MPYTHON_PRINT_TO_CHART_TOOLTIP:"",MPYTHON_PRINT_TO_CHART_EMPTY_TITLE:"print data to chart",MPYTHON_PRINT_TO_CHART_INPUT_WITH:"print data to chart",MPYTHON_PRINT_TO_CHART_ITEM_TITLE:"data",MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP:"",MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD:"data content",MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP:"",MPYTHON_INIT_CHART_TOOLTIP:"",MPYTHON_INIT_CHART_EMPTY_TITLE:"init chart column headers",MPYTHON_INIT_CHART_INPUT_WITH:"init chart column headers",MPYTHON_INIT_CHART_ITEM_TITLE:"header",MPYTHON_INIT_CHART_ITEM_TOOLTIP:"",MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD:"column header",MPYTHON_INIT_CHART_CONTAINER_TOOLTIP:"",MICROBIT_IMAGE_CREATE1_MESSAGE0:"create image %1 line 1 %2 line 2 %3 line 3 %4 line 4 %5 line 5 %6",MICROBIT_IMAGE_CREATE1_TOOLTIP:"Create new image.",MICROBIT_IMAGE_CREATE1_HELPURL:"",ADD_COMMENT:"Add Comment",CHANGE_VALUE_TITLE:"Change value:",COLLAPSE_ALL:"Collapse Blocks",COLLAPSE_BLOCK:"Collapse Block",COLOUR_BLEND_COLOUR1:"colour 1",COLOUR_BLEND_COLOUR2:"colour 2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"ratio",COLOUR_BLEND_TITLE:"blend",COLOUR_BLEND_TOOLTIP:"Blends two colours together with a given ratio (0.0 - 1.0).",COLOUR_PICKER_HELPURL:"https://en.wikipedia.org/wiki/Color",COLOUR_PICKER_TOOLTIP:"Choose a colour from the palette.",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"random colour",COLOUR_RANDOM_TOOLTIP:"Choose a colour at random.",COLOUR_RGB_BLUE:"blue",COLOUR_RGB_GREEN:"green",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"red",COLOUR_RGB_TITLE:"colour with",COLOUR_RGB_TOOLTIP:"Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"break out of loop",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"continue with next iteration of loop",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"Break out of the containing loop.",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"Skip the rest of this loop, and continue with the next iteration.",CONTROLS_FLOW_STATEMENTS_WARNING:"Warning: This block may only be used within a loop.",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"for each item %1 in list %2",CONTROLS_FOREACH_TOOLTIP:"For each item in a list, set the variable '%1' to the item, and then do some statements.",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"count with %1 from %2 to %3 by %4",CONTROLS_FOR_TOOLTIP:"Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.",CONTROLS_IF_ELSEIF_TOOLTIP:"Add a condition to the if block.",CONTROLS_IF_ELSE_TOOLTIP:"Add a final, catch-all condition to the if block.",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",CONTROLS_IF_IF_TOOLTIP:"Add, remove, or reorder sections to reconfigure this if block.",CONTROLS_IF_MSG_ELSE:"else",CONTROLS_IF_MSG_ELSEIF:"else if",CONTROLS_IF_MSG_IF:"if",CONTROLS_IF_TOOLTIP_1:"If a value is true, then do some statements.",CONTROLS_IF_TOOLTIP_2:"If a value is true, then do the first block of statements. Otherwise, do the second block of statements.",CONTROLS_IF_TOOLTIP_3:"If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.",CONTROLS_IF_TOOLTIP_4:"If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.",CONTROLS_REPEAT_HELPURL:"https://en.wikipedia.org/wiki/For_loop",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"repeat %1 times",CONTROLS_REPEAT_TOOLTIP:"Do some statements several times.",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"repeat until",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"repeat while",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"While a value is false, then do some statements.",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"While a value is true, then do some statements.",DELETE_BLOCK:"Delete Block",DELETE_X_BLOCKS:"Delete %1 Blocks",DISABLE_BLOCK:"Disable Block",DUPLICATE_BLOCK:"Duplicate",ENABLE_BLOCK:"Enable Block",EXPAND_ALL:"Expand Blocks",EXPAND_BLOCK:"Expand Block",EXTERNAL_INPUTS:"External Inputs",HELP:"Help",INLINE_INPUTS:"Inline Inputs",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"create empty list",LISTS_CREATE_EMPTY_TOOLTIP:"Returns a list, of length 0, containing no data records",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"list",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or reorder sections to reconfigure this list block.",SET_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or reorder sections to reconfigure this set block.",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"create list with",LISTS_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the list.",LISTS_CREATE_WITH_TOOLTIP:"Create a list with any number of items.",LISTS_GET_INDEX_FIRST:"first",LISTS_GET_INDEX_FROM_END:"# from end",LISTS_GET_INDEX_FROM_START:"#",LISTS_GET_INDEX_GET:"get",LISTS_GET_INDEX_GET_REMOVE:"get and remove",LISTS_GET_INDEX_LAST:"last",LISTS_GET_INDEX_RANDOM:"random",LISTS_GET_INDEX_REMOVE:"remove",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"Returns the first item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_FROM_END:"Returns the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_GET_FROM_START:"Returns the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"Returns the last item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"Returns a random item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"Removes and returns the first item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_END:"Removes and returns the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_START:"Removes and returns the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"Removes and returns the last item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"Removes and returns a random item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"Removes the first item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_END:"Removes the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_START:"Removes the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"Removes the last item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"Removes a random item in a list.",LISTS_GET_SUBLIST_END_FROM_END:"to # from end",LISTS_GET_SUBLIST_END_FROM_START:"to #",LISTS_GET_SUBLIST_END_LAST:"to last",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"get sub-list from first",LISTS_GET_SUBLIST_START_FROM_END:"get sub-list from # from end",LISTS_GET_SUBLIST_START_FROM_START:"get sub-list from #",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"Creates a copy of the specified portion of a list.",LISTS_INDEX_OF_FIRST:"find first occurrence of item",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"find last occurrence of item",LISTS_INDEX_OF_TOOLTIP:"Returns the index of the first/last occurrence of the item in the list. Returns 0 if text is not found.",LISTS_INLIST:"in list",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1 is empty",LISTS_ISEMPTY_TOOLTIP:"Returns true if the list is empty.",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"length of %1",LISTS_LENGTH_TOOLTIP:"Returns the length of a list.",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"create list with item %1 repeated %2 times",LISTS_REPEAT_TOOLTIP:"Creates a list consisting of the given value repeated the specified number of times.",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"as",LISTS_SET_INDEX_INSERT:"insert at",LISTS_SET_INDEX_SET:"set",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"Inserts the item at the start of a list.",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_END:"Inserts the item at the specified position in a list. #1 is the last item.",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_START:"Inserts the item at the specified position in a list. #1 is the first item.",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"Append the item to the end of a list.",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"Inserts the item randomly in a list.",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"Sets the first item in a list.",LISTS_SET_INDEX_TOOLTIP_SET_FROM_END:"Sets the item at the specified position in a list. #1 is the last item.",LISTS_SET_INDEX_TOOLTIP_SET_FROM_START:"Sets the item at the specified position in a list. #1 is the first item.",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"Sets the last item in a list.",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"Sets a random item in a list.",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"make list from text",LISTS_SPLIT_TEXT_FROM_LIST:"make text from list",LISTS_SPLIT_TOOLTIP_JOIN:"Join a list of texts into one text, separated by a delimiter.",LISTS_SPLIT_TOOLTIP_SPLIT:"Split text into a list of texts, breaking at each delimiter.",LISTS_SPLIT_WITH_DELIMITER:"with delimiter",LOGIC_BOOLEAN_FALSE:"false",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"Returns either true or false.",LOGIC_BOOLEAN_TRUE:"true",LOGIC_COMPARE_HELPURL:"https://en.wikipedia.org/wiki/Inequality_(mathematics)",LOGIC_COMPARE_TOOLTIP_EQ:"Return true if both inputs equal each other.",LOGIC_COMPARE_TOOLTIP_GT:"Return true if the first input is greater than the second input.",LOGIC_COMPARE_TOOLTIP_GTE:"Return true if the first input is greater than or equal to the second input.",LOGIC_COMPARE_TOOLTIP_LT:"Return true if the first input is smaller than the second input.",LOGIC_COMPARE_TOOLTIP_LTE:"Return true if the first input is smaller than or equal to the second input.",LOGIC_COMPARE_TOOLTIP_NEQ:"Return true if both inputs are not equal to each other.",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"not %1",LOGIC_NEGATE_TOOLTIP:"Returns true if the input is false. Returns false if the input is true.",LOGIC_NULL:"null",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"Returns null.",LOGIC_OPERATION_AND:"and",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"or",LOGIC_OPERATION_TOOLTIP_AND:"Return true if both inputs are true.",LOGIC_OPERATION_TOOLTIP_OR:"Return true if at least one of the inputs is true.",LOGIC_TERNARY_CONDITION:"test",LOGIC_TERNARY_HELPURL:"https://en.wikipedia.org/wiki/%3F:",LOGIC_TERNARY_IF_FALSE:"if false",LOGIC_TERNARY_IF_TRUE:"if true",LOGIC_TERNARY_TOOLTIP:"Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://en.wikipedia.org/wiki/Arithmetic",MATH_ARITHMETIC_TOOLTIP_ADD:"Return the sum of the two numbers.",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"Return the quotient of the two numbers.",MATH_ARITHMETIC_TOOLTIP_MINUS:"Return the difference of the two numbers.",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"Return the product of the two numbers.",MATH_ARITHMETIC_TOOLTIP_POWER:"Return the first number raised to the power of the second number.",MATH_CHANGE_HELPURL:"https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",MATH_CHANGE_TITLE:"change %1 by %2",MATH_CHANGE_TOOLTIP:"Add a number to variable '%1'.",MATH_CONSTANT_HELPURL:"https://en.wikipedia.org/wiki/Mathematical_constant",MATH_CONSTANT_TOOLTIP:"Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"constrain %1 low %2 high %3",MATH_CONSTRAIN_TOOLTIP:"Constrain a number to be between the specified limits (inclusive).",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"is divisible by",MATH_IS_EVEN:"is even",MATH_IS_NEGATIVE:"is negative",MATH_IS_ODD:"is odd",MATH_IS_POSITIVE:"is positive",MATH_IS_PRIME:"is prime",MATH_IS_TOOLTIP:"Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",MATH_IS_WHOLE:"is whole",MATH_MODULO_HELPURL:"https://en.wikipedia.org/wiki/Modulo_operation",MATH_MODULO_TITLE:"remainder of %1 ÷ %2",MATH_MODULO_TOOLTIP:"Return the remainder from dividing the two numbers.",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_HELPURL:"https://en.wikipedia.org/wiki/Number",MATH_NUMBER_TOOLTIP:"A number.",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"average of list",MATH_ONLIST_OPERATOR_MAX:"max of list",MATH_ONLIST_OPERATOR_MEDIAN:"median of list",MATH_ONLIST_OPERATOR_MIN:"min of list",MATH_ONLIST_OPERATOR_MODE:"modes of list",MATH_ONLIST_OPERATOR_RANDOM:"random item of list",MATH_ONLIST_OPERATOR_STD_DEV:"standard deviation of list",MATH_ONLIST_OPERATOR_SUM:"sum of list",MATH_ONLIST_TOOLTIP_AVERAGE:"Return the average (arithmetic mean) of the numeric values in the list.",MATH_ONLIST_TOOLTIP_MAX:"Return the largest number in the list.",MATH_ONLIST_TOOLTIP_MEDIAN:"Return the median number in the list.",MATH_ONLIST_TOOLTIP_MIN:"Return the smallest number in the list.",MATH_ONLIST_TOOLTIP_MODE:"Return a list of the most common item(s) in the list.",MATH_ONLIST_TOOLTIP_RANDOM:"Return a random element from the list.",MATH_ONLIST_TOOLTIP_STD_DEV:"Return the standard deviation of the list.",MATH_ONLIST_TOOLTIP_SUM:"Return the sum of all the numbers in the list.",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://en.wikipedia.org/wiki/Random_number_generation",MATH_RANDOM_FLOAT_TITLE_RANDOM:"random fraction",MATH_RANDOM_FLOAT_TOOLTIP:"Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).",MATH_RANDOM_INT_HELPURL:"https://en.wikipedia.org/wiki/Random_number_generation",MATH_RANDOM_INT_TITLE:"random integer from %1 to %2",MATH_RANDOM_INT_TOOLTIP:"Return a random integer between the two specified limits, inclusive.",MATH_ROUND_HELPURL:"https://en.wikipedia.org/wiki/Rounding",MATH_ROUND_OPERATOR_ROUND:"round",MATH_ROUND_OPERATOR_ROUNDDOWN:"round down",MATH_ROUND_OPERATOR_ROUNDUP:"round up",MATH_ROUND_TOOLTIP:"Round a number up or down.",MATH_SINGLE_HELPURL:"https://en.wikipedia.org/wiki/Square_root",MATH_SINGLE_OP_ABSOLUTE:"absolute",MATH_SINGLE_OP_ROOT:"square root",MATH_SINGLE_TOOLTIP_ABS:"Return the absolute value of a number.",MATH_SINGLE_TOOLTIP_EXP:"Return e to the power of a number.",MATH_SINGLE_TOOLTIP_LN:"Return the natural logarithm of a number.",MATH_SINGLE_TOOLTIP_LOG10:"Return the base 10 logarithm of a number.",MATH_SINGLE_TOOLTIP_NEG:"Return the negation of a number.",MATH_SINGLE_TOOLTIP_POW10:"Return 10 to the power of a number.",MATH_SINGLE_TOOLTIP_ROOT:"Return the square root of a number.",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://en.wikipedia.org/wiki/Trigonometric_functions",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"Return the arccosine of a number.",MATH_TRIG_TOOLTIP_ASIN:"Return the arcsine of a number.",MATH_TRIG_TOOLTIP_ATAN:"Return the arctangent of a number.",MATH_TRIG_TOOLTIP_COS:"Return the cosine of a degree (not radian).",MATH_TRIG_TOOLTIP_SIN:"Return the sine of a degree (not radian).",MATH_TRIG_TOOLTIP_TAN:"Return the tangent of a degree (not radian).",NEW_VARIABLE:"New variable...",NEW_VARIABLE_TITLE:"New variable name:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"allow statements",PROCEDURES_BEFORE_PARAMS:"with:",PROCEDURES_CALLNORETURN_CALL:"",PROCEDURES_CALLNORETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_CALLNORETURN_TOOLTIP:"Run the user-defined function '%1'.",PROCEDURES_CALLRETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_CALLRETURN_TOOLTIP:"Run the user-defined function '%1' and use its output.",PROCEDURES_CALL_BEFORE_PARAMS:"with:",PROCEDURES_CREATE_DO:"Create '%1'",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"to",PROCEDURES_DEFNORETURN_TOOLTIP:"Creates a function with no output.",PROCEDURES_DEFRETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_DEFRETURN_RETURN:"return",PROCEDURES_DEFRETURN_TOOLTIP:"Creates a function with an output.",PROCEDURES_DEF_DUPLICATE_WARNING:"Warning: This function has duplicate parameters.",PROCEDURES_HIGHLIGHT_DEF:"Highlight function definition",PROCEDURES_IFRETURN_TOOLTIP:"If a value is true, then return a second value.",PROCEDURES_IFRETURN_WARNING:"Warning: This block may be used only within a function definition.",PROCEDURES_MUTATORARG_TITLE:"input name:",PROCEDURES_MUTATORARG_TOOLTIP:"Add an input to the function.",PROCEDURES_MUTATORCONTAINER_TITLE:"inputs",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"Add, remove, or reorder inputs to this function.",REMOVE_COMMENT:"Remove Comment",RENAME_VARIABLE:"Rename variable...",RENAME_VARIABLE_TITLE:"Rename all '%1' variables to:",TEXT_APPEND_APPENDTEXT:"append text",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"to",TEXT_APPEND_TOOLTIP:"Append some text to variable '%1'.",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"to lower case",TEXT_CHANGECASE_OPERATOR_TITLECASE:"to Title Case",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"to UPPER CASE",TEXT_CHANGECASE_TOOLTIP:"Return a copy of the text in a different case.",TEXT_CHARAT_FIRST:"get first letter",TEXT_CHARAT_FROM_END:"get letter # from end",TEXT_CHARAT_FROM_START:"get letter #",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"in text",TEXT_CHARAT_LAST:"get last letter",TEXT_CHARAT_RANDOM:"get random letter",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"Returns the letter at the specified position.",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"Add an item to the text.",TEXT_CREATE_JOIN_TITLE_JOIN:"join",TEXT_CREATE_JOIN_TOOLTIP:"Add, remove, or reorder sections to reconfigure this text block.",TEXT_GET_SUBSTRING_END_FROM_END:"to letter # from end",TEXT_GET_SUBSTRING_END_FROM_START:"to letter #",TEXT_GET_SUBSTRING_END_LAST:"to last letter",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"in text",TEXT_GET_SUBSTRING_START_FIRST:"get substring from first letter",TEXT_GET_SUBSTRING_START_FROM_END:"get substring from letter # from end",TEXT_GET_SUBSTRING_START_FROM_START:"get substring from letter #",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"Returns a specified portion of the text.",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"in text",TEXT_INDEXOF_OPERATOR_FIRST:"find first occurrence of text",TEXT_INDEXOF_OPERATOR_LAST:"find last occurrence of text",TEXT_INDEXOF_TAIL:"",TEXT_INDEXOF_TOOLTIP:"Returns the index of the first/last occurrence of first text in the second text. Returns 0 if text is not found.",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1 is empty",TEXT_ISEMPTY_TOOLTIP:"Returns true if the provided text is empty.",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"create text with",TEXT_JOIN_TOOLTIP:"Create a piece of text by joining together any number of items.",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"length of %1",TEXT_LENGTH_TOOLTIP:"Returns the number of letters (including spaces) in the provided text.",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"print %1",TEXT_PRINT_TOOLTIP:"Print the specified text, number or other value.",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"Prompt for user for a number.",TEXT_PROMPT_TOOLTIP_TEXT:"Prompt for user for some text.",TEXT_PROMPT_TYPE_NUMBER:"prompt for number with message",TEXT_PROMPT_TYPE_TEXT:"prompt for text with message",TEXT_TEXT_HELPURL:"https://en.wikipedia.org/wiki/String_(computer_science)",TEXT_TEXT_TOOLTIP:"A letter, word, or line of text.",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"trim spaces from both sides of",TEXT_TRIM_OPERATOR_LEFT:"trim spaces from left side of",TEXT_TRIM_OPERATOR_RIGHT:"trim spaces from right side of",TEXT_TRIM_TOOLTIP:"Return a copy of the text with spaces removed from one or both ends.",TODAY:"Today",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"Create 'set %1'",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"Returns the value of this variable.",VARIABLES_SET:"set %1 to %2",VARIABLES_SET_CREATE_GET:"Create 'get %1'",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"Sets this variable to be equal to the input."};vF.PROCEDURES_DEFRETURN_TITLE=vF.PROCEDURES_DEFNORETURN_TITLE,vF.CONTROLS_IF_IF_TITLE_IF=vF.CONTROLS_IF_MSG_IF,vF.CONTROLS_WHILEUNTIL_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.CONTROLS_IF_MSG_THEN=vF.CONTROLS_REPEAT_INPUT_DO,vF.PROCEDURES_DEFRETURN_PROCEDURE=vF.PROCEDURES_DEFNORETURN_PROCEDURE,vF.CONTROLS_IF_ELSE_TITLE_ELSE=vF.CONTROLS_IF_MSG_ELSE,vF.PROCEDURES_CALLRETURN_CALL=vF.PROCEDURES_CALLNORETURN_CALL,vF.LISTS_GET_SUBLIST_INPUT_IN_LIST=vF.LISTS_INLIST,vF.LISTS_GET_INDEX_INPUT_IN_LIST=vF.LISTS_INLIST,vF.MATH_CHANGE_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.PROCEDURES_DEFRETURN_DO=vF.PROCEDURES_DEFNORETURN_DO,vF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=vF.CONTROLS_IF_MSG_ELSEIF,vF.LISTS_GET_INDEX_HELPURL=vF.LISTS_INDEX_OF_HELPURL,vF.CONTROLS_FOREACH_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.CONTROLS_FOR_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.LISTS_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_APPEND_VARIABLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.LISTS_INDEX_OF_INPUT_IN_LIST=vF.LISTS_INLIST,vF.LISTS_SET_INDEX_INPUT_IN_LIST=vF.LISTS_INLIST,vF.LISTS_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.TUPLE_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.DICT_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.SET_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_APPEND_VARIABLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.MATH_CHANGE_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.LABPLUS_USB_SWITCH_ON="turn on",vF.LABPLUS_USB_SWITCH_OFF="turn off",vF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="toggle",vF.XUNFEI_SPEECH_TTS_HELPURL="",vF.XUNFEI_SPEECH_TTS_TOOLTIP='The synthesized audio file format can only be "*.pcm"',vF.XUNFEI_SPEECH_TTS_MESSAGE0="[iFLYTEK] synthetic audio %1 APPID %2 APISecret %3 APIKey %4 text %5 transfer to audio file %6",vF.XUNFEI_SPEECH_IAT_HELPURL="",vF.XUNFEI_SPEECH_IAT_TOOLTIP='The audio formats that can be recognized are "*.pcm" and "*.wav"',vF.XUNFEI_SPEECH_IAT_MESSAGE0="[iFLYTEK] identify audio %1 APPID %2 APISecret %3 APIKey %4 audio file to be identified %5",vF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",vF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",vF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[iFLYTEK] identify result",vF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="LARK I2C RGB color",vF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="Returns as list",vF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",vF.MPYTHON_LARK_GET_COLOR_MESSAGE0="LARK I2C RGB color %1",vF.MPYTHON_lARK_RED="RED",vF.MPYTHON__LARK_GREEN="GREEN",vF.MPYTHON__LARK_BLUE="BLUE",vF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="LARK I2C HSV color",vF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="LARK I2C HSV color %1",vF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",vF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="LARK GET COLOR",vF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",vF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="LARK GET COLOR %1",vF.MPYTHON_LARK_RED="RED",vF.MPYTHON_LARK_GREEN="GREEN",vF.MPYTHON_LARK_BLUE="BLUE",vF.MPYTHON_LARK_ORANGE="ORANGE",vF.MPYTHON_LARK_YELLOW="YELLOW",vF.MPYTHON_LARK_PURPLE="PURPLE",vF.MPYTHON_LARK_CYAN="CYAN",vF.MPYTHON_LARK_NONE="NO COLOR",vF.MPYTHON_LARK_NULL="FAIL THE COLOR",vF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",vF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="LARK I2C ultrasonic value",vF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="LARK I2C SET MOTOR %1 SPEED %2",vF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="SWIFT HORSE %1 速度 %2",vF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="LARK I2C GET %1 VALUE",vF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="RIGHT",vF.mpython_LARK_GET_LINE_LEFT_ON_I2C="LEFT",vF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="LARK I2C SEARCH TOUCH LINE %1",vF.MPYTHON_LARK_SEARCH_LEFT="LEFT",vF.MPYTHON_LARK_SEARCH_RIGHT="RIGHT",vF.MPYTHON_LARK_SEARCH_LEFT2="ALL",vF.MPYTHON_LARK_SEARCH_RIGHT2="NOT",vF.MPYTHON_LARK_SEARCH_BOTH="ALL",vF.MPYTHON_LARK_SEARCH_NONE="NOT",vF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",vF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="HORSE GET COLOR",vF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",vF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="HORSE GET COLOR %1",vF.MPYTHON_lARK_CAR_RED="RED",vF.MPYTHON__LARK_CAR_GREEN="GREEN",vF.MPYTHON__LARK_CAR_BLUE="BLUE",vF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="HORSE I2C HSV color",vF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="HORSE I2C HSV %1",vF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",vF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="HORSE GET COLOR",vF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",vF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="HORSE GET %1",vF.MPYTHON_LARK_CAR_RED="RED",vF.MPYTHON_LARK_CAR_GREEN="Green",vF.MPYTHON_LARK_CAR_BLUE="Blue",vF.MPYTHON_LARK_CAR_ORANGE="Orange",vF.MPYTHON_LARK_CAR_YELLOW="Yellow",vF.MPYTHON_LARK_CAR_PURPLE="Purple",vF.MPYTHON_LARK_CAR_CYAN="Cyan",vF.MPYTHON_LARK_CAR_NONE="None",vF.MPYTHON_LARK_CAR_NULL="Null",vF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",vF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="Horse Get Ultrasoinc",vF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="HORSE GET %1 LINE VALUE",vF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="RIGHT",vF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="LEFT",vF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="HORSE I2C SEARCH TOUCH LINE %1",vF.MPYTHON_LARK_CAR_SEARCH_LEFT="LEFT TOUCHED",vF.MPYTHON_LARK_CAR_SEARCH_RIGHT="RIGHT TOUCHED",vF.MPYTHON_LARK_CAR_SEARCH_LEFT2="BOTH TOUCHED",vF.MPYTHON_LARK_CAR_SEARCH_NONE="NOT TOUCHED",vF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="HOSRE MOTION %1 SPEED %2",vF.MPYTHON_LARK_CAR_MOTION_LEFT="Trun Left",vF.MPYTHON_LARK_CAR_MOTION_RIGHT="Trun Right",vF.MPYTHON_LARK_CAR_MOTION_FORWARD="forward",vF.MPYTHON_LARK_CAR_MOTION_BACKWARD="Backward",vF.MPYTHON_LARK_CAR_MOTION_STOP="Stop",vF.MPYTHON_DEFINE_THREAD_MESSAGE0="define thread %1",vF.MPYTHON_RUN_THREAD_MESSAGE0="run thread %1",vF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) convert number to bytes %1 %2 %3 %4 source number %5",vF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) unpack bytes to number %1 %2 %3 %4 source bytes %5",vF.LITTLE_ENDIAN="Little-Endian (Default)",vF.BIG_ENDIAN="Big-Endian",vF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[mPython 2.x] When board is %1",vF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",vF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="tilt left",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="tilt right",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="tilt up",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="tilt down",vF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="face up",vF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="face down",vF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="single click",vF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="double click",vF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="freefall",vF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="roll angle",vF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="pitch angle",vF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",vF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",vF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="Get %1",vF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",vF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",vF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="Button %1 is pressed",vF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",vF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",vF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="Button %1 was pressed",vF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",vF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",vF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="Get number of presses for button %1",vF.MPYTHON2_BUTTON_EVENT_MESSAGE0="When button %1 is %2",vF.MPYTHON2_BUTTON_EVENT_HELPURL="",vF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",vF.MPYTHON2_BUTTON_EVENT_PRESSED="pressed",vF.MPYTHON2_BUTTON_EVENT_RELEASED="released",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="Touchpad %1 is pressed",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="Touchpad %1 was pressed",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="Get number of presses for touchpad %1",vF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",vF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="Touchpad %1 value",vF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="When touchpad %1 is %2",vF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",vF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="pressed",vF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="released",vF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="Set threshold for touchpad %1 as %2",vF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",vF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",vF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",vF.BLE_UUID_TOOLTIP="",vF.BLE_SETUP_PERIPHERAL_HELPURL="",vF.BLE_SETUP_PERIPHERAL_TOOLTIP="",vF.BLE_SETUP_PERIPHERAL_MESSAGE0="make BLE Peripheral object with %1 name %2 Service UUID %3",vF.BLE_ADD_CHARACTERISTIC_HELPURL="",vF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",vF.BLE_ADD_CHARACTERISTIC_MESSAGE0="add BLE Characteristic %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",vF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",vF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",vF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE Peripheral %1",vF.BLE_START_BROADCASTING="start broadcasting",vF.BLE_STOP_BROADCASTING="stop broadcasting",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="read BLE Peripheral Characteristic %1",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="write BLE Peripheral Characteristic %1 %2 value %3 Notify %4",vF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",vF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",vF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE Peripheral disconnect",vF.BLE_PERIPHERAL_MAC_HELPURL="",vF.BLE_PERIPHERAL_MAC_TOOLTIP="",vF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE Peripheral MAC address",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="when BLE Peripheral connect to Centeral %1 connect handle %2 address type %3 Centeral MAC %4",vF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",vF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",vF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="when BLE Characteristic is overwritten %1 connect handle %2 attrubute handle %3 written data %4",vF.BLE_SETUP_CENTERAL_HELPURL="",vF.BLE_SETUP_CENTERAL_TOOLTIP="",vF.BLE_SETUP_CENTERAL_MESSAGE0="make BLE Centeral object with name %1",vF.BLE_CENTERAL_CONNECT_HELPURL="",vF.BLE_CENTERAL_CONNECT_TOOLTIP="",vF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE Centeral connect to %1 %2",vF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",vF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",vF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE Centeral is connected ?",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="set %1 as connected Peripheral Characteristic object %2 Service UUID %3 Characteristic UUID %4",vF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",vF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",vF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="read connected Peripheral Characteristic %1 value",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="write connected Peripheral Characteristic %1 value as %2",vF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",vF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",vF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="when received Notify data %1 value handle %2 notify data %3",vF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",vF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",vF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="connected Peripheral info %1",vF.BLE_CENTERAL_CLOSE_HELPURL="",vF.BLE_CENTERAL_CLOSE_TOOLTIP="",vF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE Centeral disconnect",vF.BLE_INFO_NAME="name",vF.BLE_INFO_MAC="mac",vF.BLE_INFO_RSSI="rssi",vF.BLE_INFO_ADDRTYPE="addr_type",vF.BLE_INFO_ADVTYPE="adv_type",vF.BLE_INFO_DATA="data(tuple)",vF.BLE_SETUP_UART_HELPURL="",vF.BLE_SETUP_UART_TOOLTIP="",vF.BLE_SETUP_UART_MESSAGE0="make BLE UART slave with name %1",vF.BLE_UART_IS_CONNECTED_HELPURL="",vF.BLE_UART_IS_CONNECTED_TOOLTIP="",vF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART is connected ?",vF.BLE_UART_ANY_HELPURL="",vF.BLE_UART_ANY_TOOLTIP="",vF.BLE_UART_ANY_MESSAGE0="BLE UART readable bytes",vF.BLE_UART_IRQ_HELPURL="",vF.BLE_UART_IRQ_TOOLTIP="",vF.BLE_UART_IRQ_MESSAGE0="when BLE UART received data %1 do %2",vF.BLE_UART_READ_HELPURL="",vF.BLE_UART_READ_TOOLTIP="message from UART",vF.BLE_UART_READ_MESSAGE0="received data",vF.BLE_UART_WRITE_HELPURL="",vF.BLE_UART_WRITE_TOOLTIP="",vF.BLE_UART_WRITE_MESSAGE0="BLE UART send %1",vF.BLE_UART_CLOSE_HELPURL="",vF.BLE_UART_CLOSE_TOOLTIP="",vF.BLE_UART_CLOSE_MESSAGE0="BLE UART disconnect",vF.BLE_SETUP_UART_MASTER_HELPURL="",vF.BLE_SETUP_UART_MASTER_TOOLTIP="",vF.BLE_SETUP_UART_MASTER_MESSAGE0="make BLE UART master, connect to %1 %2",vF.BLE_SETUP_HID_HELPURL="",vF.BLE_SETUP_HID_TOOLTIP="",vF.BLE_SETUP_HID_MESSAGE0="make BLE HID %1 object %2 name %3 battery %4",vF.BLE_HID_MOUSE="mouse",vF.BLE_HID_KEYBOARD="keyboard",vF.BLE_HID_CONSUMER="consumer",vF.BLE_HID_ADVERTISE_HELPURL="",vF.BLE_HID_ADVERTISE_TOOLTIP="",vF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID %1",vF.BLE_HID_CONNECT_EVENT_HELPURL="",vF.BLE_HID_CONNECT_EVENT_TOOLTIP="",vF.BLE_HID_CONNECT_EVENT_MESSAGE0="when BLE HID connected",vF.BLE_HID_DISCONNECT_HELPURL="",vF.BLE_HID_DISCONNECT_TOOLTIP="",vF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID disconnect",vF.BLE_HID_BATTERY_LEVEL_HELPURL="",vF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",vF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID battery level",vF.BLE_HID_MOUSE_BUTTONS_HELPURL="",vF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",vF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="mouse button %1",vF.BLE_HID_MOUSE_CLICK_HELPURL="",vF.BLE_HID_MOUSE_CLICK_TOOLTIP="",vF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID mouse click %1",vF.BLE_HID_MOUSE_PRESS_HELPURL="",vF.BLE_HID_MOUSE_PRESS_TOOLTIP="",vF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID mouse press %1",vF.BLE_HID_MOUSE_RELEASE_HELPURL="",vF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",vF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID mouse release %1",vF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",vF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",vF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID mouse release all",vF.BLE_HID_MOUSE_MOVE_HELPURL="",vF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - cursor movement, range ±127 .\nwheel - wheel movement, range ±127 .",vF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID mouse cursor move %1 x %2 y %3 wheel %4",vF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",vF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",vF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="keyboard button %1",vF.BLE_HID_KEYBOARD_SEND_HELPURL="",vF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",vF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID keyboard send %1",vF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",vF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",vF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID keyboard send multiple %1 %2 %3",vF.BLE_HID_KEYBOARD_PRESS_HELPURL="",vF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",vF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID keyboard press %1",vF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",vF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",vF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID keyboard release %1",vF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",vF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",vF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID keyboard release all",vF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",vF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",vF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="remote control button %1",vF.BLE_HID_CONSUMER_SEND_HELPURL="",vF.BLE_HID_CONSUMER_SEND_TOOLTIP="",vF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID remote control send %1",vF.BLE_SETUP_IBEACON_HELPURL="",vF.BLE_SETUP_IBEACON_TOOLTIP="",vF.BLE_SETUP_IBEACON_MESSAGE0="make BLE iBeacon object with %1 UUID %2 major %3 minor %4",vF.BLE_IBEACON_ADVERTISE_HELPURL="",vF.BLE_IBEACON_ADVERTISE_TOOLTIP="",vF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon %1",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="Return power in mV",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="Voltage(mV) of expansion-board",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="Return the encoded infrared pulse data buff",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="Expansion-board generating RAW coding %1 carry_freq(Hz) %2 len %3 repeat_pos %4 code %5 data %6",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="Return the encoded infrared pulse data buff\nUser code: 0~255\nCommand code: 0~255",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="Expansion-board generating NEC coding %1 User code %2 Command code %3",vF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",vF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",vF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="Expansion-board sending infrared pulse data %1 %2",vF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="send once",vF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="keep sending",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="Expansion-board stop sending infrared pulse data",vF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",vF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="The learning result will be returned after 4 seconds.",vF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="Expansion-board do infrared learning",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="Is there any result for the infrared learning ?",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP='Return the learned "infrared coded data", which must be used after the "learn()" function.',vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="Expansion-board learned infrared coding data",vF.MPYTHON_MAIN_HELPURL="",vF.MPYTHON_MAIN_TOOLTIP="This block does not have to be used, it just makes the program structure more regular.",vF.MPYTHON_MAIN_MESSAGE0="Main program",vF.MPYTHON_MLX90615_SET_HELPURL="",vF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 set sensor emissivity %1",vF.MPYTHON_MLX90615_SET_TOOLTIP="",vF.MPYTHON_MLX90615_GET_HELPURL="",vF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 get sensor emissivity",vF.MPYTHON_MLX90615_GET_TOOLTIP="",vF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",vF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 measured temperature",vF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",vF.MPYTHON_MQ135_INIT_HELPURL="",vF.MPYTHON_MQ135_INIT_MESSAGE0="initialize MQ135 at output pin %1 temperature %2 ℃ humidity%3 %",vF.MPYTHON_MQ135_INIT_TOOLTIP="V(VCC) is connected to the power port of the expansion board, G(GND) is connected to the ground port of the expansion board, and AO is connected to the pin of the expansion board\nMQ135 is used to detect the concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases in the air.",vF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 return %1",vF.MPYTHON_MQ135_OPTIONS_HELPURL="",vF.MPYTHON_MQ135_OPTIONS_TOOLTIP="",vF.MPYTHON_MQ135_GET_RZERO="correction of sensor resistance",vF.MPYTHON_MQ135_GET_CORRECTED_RZERO="calibrate sensor resistance (calibrate temperature and humidity)",vF.MPYTHON_MQ135_GET_PPM="the ppm concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases",vF.MPYTHON_MQ135_GET_CORRECTED_PPM="the ppm concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases",vF.mpython_gyroscope_get_HELPURL="",vF.mpython_gyroscope_get_MESSAGE0="%1 axis angular velocity",vF.mpython_gyroscope_get_TOOLTIP="Only applicable to the mPython board version above v2.3",vF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",vF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",vF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",vF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",vF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",vF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",vF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",vF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",vF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",vF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="Default is ±256dps. Only applicable to the mPython board version above v2.3",vF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="set angular velocity range to %1",vF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",vF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="Only applicable to the mPython board version above v2.3",vF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="calibration angular velocity value %1 X axis deviation %2 Y axis deviation %3 Z axis deviation %4";const XF=vF;Object.assign(a_.Variables,L_),Object.assign(a_.Procedures,xi),a_.Python=eO,a_.generator=eO,p_.Profile.default={},Object.assign(p_.Profile,OG),Object.assign(p_.Profile.default,OG["ESP32 Generic"]),Object.assign(a_.Lang.ZhHans,fF),Object.assign(a_.Lang.ZhHant,xF),Object.assign(a_.Lang.En,XF),Object.assign(a_.Blocks,t,e,i,T,E,n,o,s,O,I,a,p,M,y,k,V,g,f,w,D,X,v,x,b,Y,H,c,G,B,F,U,O_),Object.assign(a_.Python.forBlock,L,R,r,S,l,A,P,N,d,u,h,m,C,__,o_,n_,J,t_,s_,z,E_,T_,i_,e_,Z,K,W,j,q,$,Q,I_)})(); \ No newline at end of file +class R_{constructor(_,t){if(this.variablePrefix_=t||"",this.reservedDict_=Object.create(null),_)for(var e=_.split(","),i=0;i0;T--)t.getInputTargetBlock("IF"+T)&&t.getInputTargetBlock("IF"+T).previousConnection?e[T]=t.getInputTargetBlock("IF"+T).previousConnection:e[T]=null,this.removeInput("IF"+T),t.getInputTargetBlock("DO"+T)&&t.getInputTargetBlock("DO"+T).previousConnection?i[T]=t.getInputTargetBlock("DO"+T).previousConnection:i[T]=null,this.removeInput("DO"+T);this.elseifCount_=parseInt(_.getAttribute("elseif"),10),this.elseCount_=parseInt(_.getAttribute("else"),10);for(T=1;T<=this.elseifCount_;T++)this.appendValueInput("IF"+T).setCheck([Boolean,Number]).appendField(a_.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+T).appendField(a_.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.CONTROLS_IF_MSG_ELSE);for(T=e.length-2;T>0;T--)e[T]&&e[T].reconnect(this,"IF"+T);for(T=i.length-2;T>0;T--)i[T]&&i[T].reconnect(this,"DO"+T)},decompose:function(_){var t=_.newBlock("controls_if_if");t.initSvg();for(var e=t.getInput("STACK").connection,i=1;i<=this.elseifCount_;i++){var T=_.newBlock("controls_if_elseif");T.initSvg(),e.connect(T.previousConnection),e=T.nextConnection}if(this.elseCount_){var E=_.newBlock("controls_if_else");E.initSvg(),e.connect(E.previousConnection)}return t},compose:function(_){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var t=this.elseifCount_;t>0;t--)this.removeInput("IF"+t),this.removeInput("DO"+t);this.elseifCount_=0;for(var e=_.getInputTargetBlock("STACK"),i=[null],T=[null],E=null;e;){switch(e.type){case"controls_if_elseif":this.elseifCount_++,i.push(e.valueConnection_),T.push(e.statementConnection_);break;case"controls_if_else":this.elseCount_++,E=e.statementConnection_;break;default:throw Error("Unknown block type: "+e.type)}e=e.nextConnection&&e.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(i,T,E)},saveConnections:function(_){for(var t=_.getInputTargetBlock("STACK"),e=1;t;){switch(t.type){case"controls_if_elseif":var i=this.getInput("IF"+e),T=this.getInput("DO"+e);t.valueConnection_=i&&i.connection.targetConnection,t.statementConnection_=T&&T.connection.targetConnection,e++;break;case"controls_if_else":T=this.getInput("ELSE");t.statementConnection_=T&&T.connection.targetConnection;break;default:throw"Unknown block type."}t=t.nextConnection&&t.nextConnection.targetBlock()}},rebuildShape_:function(){var _=[null],t=[null],e=null;this.getInput("ELSE")&&(e=this.getInput("ELSE").connection.targetConnection);for(var i=1;this.getInput("IF"+i);){var T=this.getInput("IF"+i),E=this.getInput("DO"+i);console.log(T.connection.targetConnection),_.push(T.connection.targetConnection),t.push(E.connection.targetConnection),i++}this.updateShape_(),this.reconnectChildBlocks_(_,t,e)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var _=1;this.getInput("IF"+_);)this.removeInput("IF"+_),this.removeInput("DO"+_),_++;for(_=1;_<=this.elseifCount_;_++)this.appendValueInput("IF"+_).setCheck([Number,Boolean]).appendField(a_.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+_).appendField(a_.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(_,t,e){for(var i=1;i<=this.elseifCount_;i++)_[i]&&_[i].reconnect(this,"IF"+i),t[i]&&t[i].reconnect(this,"DO"+i);e&&e.reconnect(this,"ELSE")}},Y_={init:function(){this.setColour(h_),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PYTHON_RANGE).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},U_={init:function(){this.setColour(h_),this.appendValueInput("LIST").setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(a_.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return a_.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},g_={init:function(){this.setColour(h_),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new a_.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(a_.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return{WHILE:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:a_.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[t]}))}},B_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new a_.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var _=document.createElement("mutation");return this.elseifCount_&&_.setAttribute("elseif",this.elseifCount_),this.elseCount_&&_.setAttribute("else",1),_},domToMutation:function(_){var t=this,e=[],i=[];this.elseCount_&&this.removeInput("ELSE");for(var T=this.elseifCount_;T>0;T--)t.getInputTargetBlock("IF"+T)&&t.getInputTargetBlock("IF"+T).previousConnection?e[T]=t.getInputTargetBlock("IF"+T).previousConnection:e[T]=null,this.removeInput("IF"+T),t.getInputTargetBlock("DO"+T)&&t.getInputTargetBlock("DO"+T).previousConnection?i[T]=t.getInputTargetBlock("DO"+T).previousConnection:i[T]=null,this.removeInput("DO"+T);this.elseifCount_=parseInt(_.getAttribute("elseif"),10),this.elseCount_=parseInt(_.getAttribute("else"),10);for(T=1;T<=this.elseifCount_;T++)this.appendValueInput("IF"+T).setCheck([Boolean,Number]).appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+T).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.MIXLY_PYTHON_FINALLY);for(T=e.length-2;T>0;T--)e[T]&&e[T].reconnect(this,"IF"+T);for(T=i.length-2;T>0;T--)i[T]&&i[T].reconnect(this,"DO"+T)},decompose:function(_){var t=_.newBlock("controls_try");t.initSvg();for(var e=t.getInput("STACK").connection,i=1;i<=this.elseifCount_;i++){var T=_.newBlock("controls_except");T.initSvg(),e.connect(T.previousConnection),e=T.nextConnection}if(this.elseCount_){var E=_.newBlock("controls_finally");E.initSvg(),e.connect(E.previousConnection)}return t},compose:function(_){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var t=this.elseifCount_;t>0;t--)this.removeInput("IF"+t),this.removeInput("DO"+t);this.elseifCount_=0;for(var e=_.getInputTargetBlock("STACK"),i=[null],T=[null],E=null;e;){switch(e.type){case"controls_except":this.elseifCount_++,i.push(e.valueConnection_),T.push(e.statementConnection_);break;case"controls_finally":this.elseCount_++,E=e.statementConnection_;break;default:throw Error("Unknown block type: "+e.type)}e=e.nextConnection&&e.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(i,T,E)},saveConnections:function(_){for(var t=_.getInputTargetBlock("STACK"),e=1;t;){switch(t.type){case"controls_except":var i=this.getInput("IF"+e),T=this.getInput("DO"+e);t.valueConnection_=i&&i.connection.targetConnection,t.statementConnection_=T&&T.connection.targetConnection,e++;break;case"controls_finally":T=this.getInput("ELSE");t.statementConnection_=T&&T.connection.targetConnection;break;default:throw"Unknown block type."}t=t.nextConnection&&t.nextConnection.targetBlock()}},rebuildShape_:function(){var _=[null],t=[null],e=null;this.getInput("ELSE")&&(e=this.getInput("ELSE").connection.targetConnection);for(var i=1;this.getInput("IF"+i);){var T=this.getInput("IF"+i),E=this.getInput("DO"+i);console.log(T.connection.targetConnection),_.push(T.connection.targetConnection),t.push(E.connection.targetConnection),i++}this.updateShape_(),this.reconnectChildBlocks_(_,t,e)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var _=1;this.getInput("IF"+_);)this.removeInput("IF"+_),this.removeInput("DO"+_),_++;for(_=1;_<=this.elseifCount_;_++)this.appendValueInput("IF"+_).setCheck([Number,Boolean]).appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+_).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(a_.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(_,t,e){for(var i=1;i<=this.elseifCount_;i++)_[i]&&_[i].reconnect(this,"IF"+i),t[i]&&t[i].reconnect(this,"DO"+i);e&&e.reconnect(this,"ELSE")}},G_={init:function(){this.setColour(h_);var _=new a_.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(_,"FLOW").appendField(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var t=this;this.setTooltip((function(){var _=t.getFieldValue("FLOW");return{BREAK:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:a_.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[_]}))},onchange:function(){if(this.workspace){var _=!1,t=this;do{if("controls_repeat"==t.type||"controls_for"==t.type||"controls_forEach"==t.type||"controls_repeat_ext"==t.type||"controls_whileUntil"==t.type||"do_while"==t.type){_=!0;break}t=t.getSurroundParent()}while(t);_?this.setWarningText(null):this.setWarningText(a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},F_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new a_.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){return a_.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",_.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},y_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new a_.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){return a_.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",_.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}};g_.OPERATORS=[[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],G_.OPERATORS=[[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[a_.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const f_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},b_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},x_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(a_.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},v_={init:function(){this.setColour(h_),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},X_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},V_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(a_.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},k_={init:function(){this.jsonInit({message0:a_.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:h_,tooltip:a_.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:a_.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},w_={init:function(){this.setColour(h_),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_STAT),this.setOutput(!0)}},W_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},K_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},z_={init:function(){this.appendDummyInput().appendField(a_.Msg.CONTROLS_REPEAT_TITLE_REPEAT+a_.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(a_.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new a_.FieldDropdown([[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[a_.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(h_),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Z_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Q_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},J_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},q_={init:function(){this.setColour(h_),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_GET_UNIQUE_IDEN)}},j_=230;a_.FieldTextInput.math_number_validator=function(_){return String(_)},a_.FieldTextInput.math_number_validator_include_blank=function(_){if(""===_)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(_)?String(_):null};const $_={init:function(){this.setColour(j_),this.appendDummyInput().appendField(new a_.FieldTextInput("0",a_.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MATH_NUMBER_TOOLTIP)}},_t={init:function(){this.setColour(j_);this.appendDummyInput("").appendField(a_.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new a_.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var _=this;this.setTooltip((function(){var t=_.getFieldValue("CONSTANT");return{pi:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[t]}))}},tt={init:function(){this.setColour(j_);this.appendDummyInput("").appendField(a_.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new a_.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var _=this;this.setTooltip((function(){var t=_.getFieldValue("CONSTANT");return{pi:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:a_.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[t]}))}},et={init:function(){this.setColour(j_),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{ADD:a_.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:a_.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:a_.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[t]}))}},it={init:function(){this.setColour(j_),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{ADD:a_.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:a_.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:a_.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:a_.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:a_.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[t]}))}},Tt={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new a_.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},Et={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new a_.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var _=this;this.setTooltip((function(){var t=_.getFieldValue("OP");return{SIN:a_.Msg.MATH_TRIG_TOOLTIP_SIN,COS:a_.Msg.MATH_TRIG_TOOLTIP_COS,TAN:a_.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:a_.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:a_.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:a_.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:a_.Msg.MATH_SINGLE_TOOLTIP_LN}[t]}))}},nt={init:function(){var _=[[a_.Msg.MATH_BIN,"bin"],[a_.Msg.MATH_OCT,"oct"],[a_.Msg.MATH_HEX,"hex"]];this.setColour(j_),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new a_.FieldDropdown(_),"OP");var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{bin:a_.Msg.MATH_DEC_TOOLTIP_BIN,oct:a_.Msg.MATH_DEC_TOOLTIP_OCT,hex:a_.Msg.MATH_DEC_TOOLTIP_HEX}[_]}))}},ot={init:function(){var _=[[a_.Msg.LANG_MATH_TO_ROUND,"round"],[a_.Msg.LANG_MATH_TO_CEIL,"ceil"],[a_.Msg.LANG_MATH_TO_FLOOR,"floor"],[a_.Msg.MATH_ABS,"fabs"],[a_.Msg.MATH_SQRT,"sqrt"]];this.setColour(j_),this.appendValueInput("A").setCheck(Number).appendField(new a_.FieldDropdown(_),"OP"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{sqrt:a_.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:a_.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:a_.Msg.MATH_SINGLE_TOOLTIP_SQ,round:a_.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:a_.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:a_.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[_]}))}},st={init:function(){var _=[[a_.Msg.MIXLY_MAX,"max"],[a_.Msg.MIXLY_MIN,"min"]];this.setColour(j_),this.appendValueInput("A").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown(_),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(a_.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{max:a_.Msg.MIXLY_TOOLTIP_MATH_MAX,min:a_.Msg.MIXLY_TOOLTIP_MATH_MIN}[_]}))}},Ot={init:function(){var _=[[a_.Msg.MATH_TWO,"two"],[a_.Msg.MATH_EIGHT,"eight"],[a_.Msg.MATH_TEN,"ten"],[a_.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(j_),this.appendDummyInput("").appendField(a_.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new a_.FieldDropdown(_),"OP").appendField(a_.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MATH_ZHW).appendField(new a_.FieldDropdown(_),"OP2").appendField(a_.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP"),e={two:a_.Msg.MATH_Before_two,eight:a_.Msg.MATH_Before_eight,ten:a_.Msg.MATH_Before_ten,sixteen:a_.Msg.MATH_Before_sixteen},i=t.getFieldValue("OP2"),T={two:a_.Msg.MATH_Behind_two,eight:a_.Msg.MATH_Behind_eight,ten:a_.Msg.MATH_Behind_ten,sixteen:a_.Msg.MATH_Behind_sixteen};return e[_]+T[i]}))}},It={init:function(){var _=[[a_.Msg.LANG_MATH_INT,"int"],[a_.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(j_),this.setOutput(!0,Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_RANDOM).appendField(new a_.FieldDropdown(_),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(a_.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TYPE"),e={int:a_.Msg.LANG_MATH_INT,float:a_.Msg.LANG_MATH_FLOAT_RANDOM};return a_.Msg.MATH_RANDOM_INT_TOOLTIP+e[_]}))}},at={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(a_.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(a_.Msg.MATH_CONSTRAIN_TOOLTIP)}},pt={init:function(){this.setColour(j_),this.appendValueInput("NUM",Number).appendField(a_.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(a_.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(a_.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Mt={init:function(){this.setColour(j_),this.appendDummyInput().appendField(new a_.FieldTextInput("0",a_.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(a_.Msg.MATH_NUMBER_TOOLTIP)}},Lt={init:function(){this.setColour(j_),this.appendValueInput("NUM").setCheck(Number).appendField(a_.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Rt={init:function(){this.setColour(j_),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MATH_ROUND).appendField(a_.Msg.TEXT_KEEP),this.appendDummyInput().appendField(a_.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(a_.Msg.MATH_ROUND_NEW_TOOLTIP)}},rt={init:function(){var _=[[a_.Msg.MIXLY_TO_INT,"int"],[a_.Msg.MIXLY_TO_FLOAT,"float"],[a_.Msg.MIXLY_TO_BITES,"b"]];this.setColour(j_),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{int:a_.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:a_.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:a_.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[_]}))}},St={init:function(){var _=[[a_.Msg.MIXLY_TO_INT,"int"],[a_.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(j_),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{int:a_.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:a_.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[_]}))}},lt=pt,At=160,Pt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(a_.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(_){if(_==this.RTL)var t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new a_.FieldImage(t,12,12,'"')}},Nt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(a_.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(_){if(_==this.RTL)var t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new a_.FieldImage(t,12,12,'"')}};a_.FieldTextInput.char_validator=function(_){if(_.length>1&&"\\"===_.charAt(0)){var t=_.charAt(1);if("0"===t||"b"===t||"f"===t||"n"===t||"r"===t||"t"===t||"\\"===t||"'"===t)return String(_).substring(0,2);if("x"===t&&"0"===_.charAt(2)&&"B"===_.charAt(3))return String(_).substring(0,4)}return String(_).substring(0,1)};const dt={init:function(){this.setColour(At),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new a_.FieldTextInput("",a_.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(a_.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(_){if(1==_)var t="../../media/quote2.png";else t="../../media/quote3.png";return new a_.FieldImage(t,7,12,'"')}},ut={init:function(){this.setColour(At),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(a_.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ht={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},mt={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(String).appendField(a_.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Ct={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},ct={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Ht={init:function(){this.WHERE_OPTIONS=[[a_.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[a_.Msg.TEXT_GET_INDEX_RANDOM+1+a_.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.LISTS_GET_INDEX_GET,"MODE"),a_.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(a_.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=_.getFieldValue("WHERE"),i="";switch(t+" "+e){case"GET FROM_START":case"GET FROM_END":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":i=a_.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=e&&"FROM_END"!=e||(i+=" "+a_.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",a_.Msg.ONE_BASED_INDEXING?"#1":"#0")),i}));var t=this;this.setTooltip((function(){var _=t.getFieldValue("WHERE"),e={FROM_START:a_.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:a_.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:a_.Msg.TEXT_GET_INDEX_RANDOM};return a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+e[_]+"n"+a_.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var _=document.createElement("mutation");_.setAttribute("statement",!this.outputConnection);var t=this.getInput("AT").type==a_.INPUT_VALUE;return _.setAttribute("at",t),_},domToMutation:function(_){var t="true"==_.getAttribute("statement");this.updateStatement_(t),_="false"!=_.getAttribute("at"),this.updateAt_(_)},updateStatement_:function(_){_!=!this.outputConnection&&(this.unplug(!0,!0),_?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(_){this.removeInput("AT"),this.removeInput("ORDINAL",!0),_?(this.appendValueInput("AT").setCheck(Number),a_.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(a_.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var t=new a_.FieldDropdown(this.WHERE_OPTIONS,(function(t){var e="FROM_START"==t||"FROM_END"==t;if(e!=_){var i=this.sourceBlock_;return i.updateAt_(e),i.setFieldValue(t,"WHERE"),null}}));this.getInput("AT").appendField(t,"WHERE"),a_.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Dt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(a_.Msg.LISTS_GET_INDEX_GET+" "+a_.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(a_.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+a_.Msg.LISTS_GET_INDEX_FROM_START+"n"+a_.Msg.TEXT_CHARAT2)}},Yt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(a_.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(a_.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Ut={init:function(){this.WHERE_OPTIONS_1=[[a_.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[a_.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[a_.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[a_.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[a_.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(a_.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation"),t=this.getInput("AT1").type==a_.INPUT_VALUE;_.setAttribute("at1",t);var e=this.getInput("AT2").type==a_.INPUT_VALUE;return _.setAttribute("at2",e),_},domToMutation:function(_){var t="true"==_.getAttribute("at1"),e="true"==_.getAttribute("at2");this.updateAt_(1,t),this.updateAt_(2,e)},updateAt_:function(_,t){this.removeInput("AT"+_),this.removeInput("ORDINAL"+_,!0),t?(this.appendValueInput("AT"+_).setCheck(Number),a_.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+_).appendField(a_.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+_);var e=new a_.FieldDropdown(this["WHERE_OPTIONS_"+_],(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var T=this.sourceBlock_;return T.updateAt_(_,i),T.setFieldValue(e,"WHERE"+_),null}}));this.getInput("AT"+_).appendField(e,"WHERE"+_),1==_&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},gt={init:function(){this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(a_.Msg.LISTS_GET_INDEX_GET+" "+a_.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(a_.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(a_.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(a_.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Bt={init:function(){var _=[[a_.Msg.MIXLY_EQUALS,"==="],[a_.Msg.MIXLY_STARTSWITH,"startswith"],[a_.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(At),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new a_.FieldDropdown(_),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Gt={init:function(){this.setColour(At),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(a_.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_COMPARETO_HELP)}},Ft={init:function(){var _=[[a_.Msg.TEXT_UPPER,"upper"],[a_.Msg.TEXT_TITLE,"title"],[a_.Msg.TEXT_CAPITALIZE,"capitalize"],[a_.Msg.TEXT_SWAPCASE,"swapcase"],[a_.Msg.TEXT_LOWER,"lower"]];this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new a_.FieldDropdown(_),"CAPITAL").setCheck(String),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var _=t.getFieldValue("CAPITAL");return{upper:a_.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:a_.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:a_.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:a_.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:a_.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[_]}))}},yt={init:function(){var _=[[a_.Msg.TEXT_LJUST,"ljust"],[a_.Msg.TEXT_CENTER,"center"],[a_.Msg.TEXT_RJUST,"rjust"]];this.setColour(At),this.appendValueInput("VAR").appendField(new a_.FieldDropdown(_),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(a_.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(a_.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ft={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(a_.Msg.MIXLY_MID+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(a_.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},bt={init:function(){this.setColour(At),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},xt={init:function(){this.setColour(At),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(a_.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(a_.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},vt={init:function(){this.setColour(At),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(a_.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(a_.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Xt={init:function(){var _=[[a_.Msg.TEXT_TRIM_BOTH,"strip"],[a_.Msg.TEXT_TRIM_LEFT,"lstrip"],[a_.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(At),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(a_.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new a_.FieldDropdown(_),"TOWHAT"),this.appendDummyInput("").appendField(a_.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("TOWHAT");return{strip:a_.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:a_.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:a_.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[_]}))}},Vt={init:function(){this.setColour(At),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new a_.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new a_.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("text_create_with_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;it?_[t]:0==t?'"key"':'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},be={init:function(){this.setColour(ye),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},xe={init:function(){this.setColour(ye),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},ve={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_KEYS),this.setTooltip(a_.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Xe={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(a_.Msg.DICTS_GET_TOOLTIP)}},Ve={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(a_.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(a_.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},ke={init:function(){this.setColour(ye),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(a_.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},we={init:function(){this.setColour(ye),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(a_.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_DELETE_TOOLTIP)}},We={init:function(){this.setColour(ye),this.appendValueInput("DICT2").setCheck("Dict").appendField(a_.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(a_.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MID),this.setTooltip(a_.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ke={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_CLEAR),this.setTooltip(a_.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ze={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_ITEMS),this.setTooltip(a_.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Ze={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_VALUES),this.setTooltip(a_.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},Qe={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_LENGTH),this.setTooltip(a_.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},Je={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.DICT_DELDICT),this.setTooltip(a_.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qe={init:function(){this.MODE=[[a_.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[a_.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(a_.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(a_.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t="";switch(_.getFieldValue("WHERE")){case"INSERT":t=a_.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":t=a_.Msg.DICTS_DELETE_TOOLTIP}return t}))},mutationToDom:function(){var _=document.createElement("mutation"),t=this.getInput("AT2").type==a_.INPUT_VALUE;return _.setAttribute("at2",t),_},domToMutation:function(_){var t="true"==_.getAttribute("at2");this.updateAt_(t)},updateAt_:function(_){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),_?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var t=new a_.FieldDropdown(this.MODE,(function(t){var e="INSERT"==t;if(e!=_){var i=this.sourceBlock_;return i.updateAt_(e),i.setFieldValue(t,"WHERE"),null}}));this.getInput("AT2").appendField(t,"WHERE")}},je={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(a_.Msg.DICTS_ADD_VALUE),this.setTooltip(a_.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},$e={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(a_.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(a_.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_SETDEFAULT_TOOLTIP)}},_i={init:function(){this.setColour(ye),this.appendDummyInput("").appendField(new a_.FieldLabel(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new a_.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("dicts_create_with_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;it?_[t]:0==t?'"key"':'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},ti={init:function(){this.setColour(ye),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},ei={init:function(){this.setColour(ye),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TO_JSON),this.setTooltip(a_.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ii={init:function(){this.setColour(ye),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(a_.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},Ti=210,Ei={init:function(){var _=a_.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{EQ:a_.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:a_.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:a_.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:a_.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:a_.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:a_.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[_]})),this.prevBlocks_=[null,null]}},ni={init:function(){var _=a_.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],t=a_.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"OP1"),this.appendValueInput("C").appendField(new a_.FieldDropdown(t),"OP2"),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},oi={init:function(){var _=[[a_.Msg.LOGIC_OPERATION_AND,"AND"],[a_.Msg.LOGIC_OPERATION_OR,"OR"],[a_.Msg.LOGIC_OPERATION_NOR,"NOR"],[a_.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new a_.FieldDropdown(_),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var _=t.getFieldValue("OP");return{AND:a_.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:a_.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:a_.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:a_.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[_]}))}},si={init:function(){this.setColour(Ti),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(a_.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(a_.Msg.LOGIC_NEGATE_TOOLTIP)}},Oi={init:function(){var _=[[a_.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[a_.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(Ti),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new a_.FieldDropdown(_),"BOOL"),this.setTooltip(a_.Msg.LOGIC_BOOLEAN_TOOLTIP)}},Ii={init:function(){this.setColour(Ti),this.setOutput(!0),this.appendDummyInput().appendField(a_.Msg.LOGIC_NULL),this.setTooltip(a_.Msg.LOGIC_NULL_TOOLTIP)}},ai={init:function(){this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").appendField(a_.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(a_.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},pi={init:function(){var _=[[a_.Msg.TEXT_APPEND_TO,"in"],[a_.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new a_.FieldDropdown(_),"BOOL"),this.appendDummyInput("").appendField(a_.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.IN)}},Mi={init:function(){var _=[[a_.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[a_.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(Ti),this.appendValueInput("A"),this.appendValueInput("B").appendField(new a_.FieldDropdown(_),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},Li={init:function(){this.setColour(Ti),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Ri={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(a_.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},ri={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},Si={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG,n=a_.Msg.PY_STORAGE_FILE_OBJECT;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T+n}))}},li={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(a_.Msg.MIXPY_TEXT_ENCODE).appendField(new a_.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_USE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,E=a_.Msg.MIXLY_BELONG,n=a_.Msg.PY_STORAGE_FILE_OBJECT;return e+{r:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[t]+E+i+T+n}))}},Ai={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+a_.Msg.MIXLY_MICROBIT_TYPE_STRING+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Pi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Ni={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return e+{read:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[t]+"x"+i}))}},di={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(a_.Msg.MICROBIT_PYTHON_TYPE)}},ui={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.HTML_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},hi={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},mi={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Ci={init:function(){this.setColour(0),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const ci={init:function(){this.setColour(0),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Hi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Di={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Yi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,i=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,T=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return e+" "+{start:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[t]+T+"x"+i}))}},Ui={init:function(){this.setColour(0),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},gi={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return a_.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+a_.Msg.MIXLY_ESP32_SET+{mkdir:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[t]}))}},Bi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(a_.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Gi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Fi={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.HTML_FILE,"isfile"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let _=this;this.setTooltip((function(){var t=_.getFieldValue("MODE");return a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+a_.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[t]}))}},yi={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(a_.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},fi={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(a_.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},bi={};bi.NAME_TYPE=a_.PROCEDURE_CATEGORY_NAME,bi.allProcedures=function(_){for(var t=_.getAllBlocks(!1),e=[],i=[],T=0;T"),this.appendValueInput("style").appendField(a_.Msg.MIXLY_AIP_ATTR).setAlign(a_.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},BT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},GT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_FORM_CONTENT).appendField(new a_.FieldDropdown([[a_.Msg.HTML_TEXT,"text"],[a_.Msg.HTML_EMAIL,"email"],[a_.Msg.HTML_NUMBER,"number"],[a_.Msg.HTML_PASSWORD,"password"],[a_.Msg.HTML_CHECKBOX,"checkbox"],[a_.Msg.HTML_RADIOBUTTON,"radiobutton"],[a_.Msg.HTML_BUTTON,"button"],[a_.Msg.HTML_COLOUR,"colour"],[a_.Msg.HTML_DATE,"date"],[a_.Msg.HTML_LOCALTIME,"local time"],[a_.Msg.HTML_FILE,"file"],[a_.Msg.HTML_HIDDEN,"hidden"],[a_.Msg.HTML_IMAGE,"image"],[a_.Msg.HTML_MONTH,"month"],[a_.Msg.HTML_RANGE,"range"],[a_.Msg.HTML_RESET,"reset"],[a_.Msg.HTML_SEARCH,"search"],[a_.Msg.HTML_SUBMIT,"submit"],[a_.Msg.HTML_TELEPHONENUMBER,"telephone number"],[a_.Msg.HTML_TIME,"time"],[a_.Msg.HTML_URL,"url"],[a_.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(a_.Msg.HTML_NAME).appendField(new a_.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(a_.Msg.HTML_VALUE).appendField(new a_.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(a_.Msg.MIXLY_AIP_ATTR).setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},FT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(new a_.FieldTextInput("property"),"KEY").appendField(":").appendField(new a_.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},yT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(new a_.FieldTextInput("property"),"KEY").appendField(":").appendField(new a_.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fT={init:function(){this.setColour(cT),this.appendDummyInput().appendField(a_.Msg.HTML_TEXT).appendField(new a_.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bT=160,xT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new a_.FieldTable(""),"TEXT")}},vT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new a_.FieldMultilineInput(""),"TEXT")}},XT={init:function(){this.setColour(bT),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new a_.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},VT={init:function(){this.setColour(bT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},kT={init:function(){this.setColour(bT),this.appendDummyInput().appendTitle("Comment:").appendTitle(new a_.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},wT={init:function(){this.setColour(bT),this.appendValueInput("VALUE").appendField(a_.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},WT={init:function(){this.setColour(bT),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new a_.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(a_.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=a_.Block.obtain(_,"text_print_multiple_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;i= stop:"," yield start"," start -= abs(step)"])};if(_=function(_,t,e){return"("+_+" <= "+t+") and "+s()+"("+_+", "+t+", "+e+") or "+O()+"("+_+", "+t+", "+e+")"},a_.isNumber(i)&&a_.isNumber(T)&&a_.isNumber(E))i=parseFloat(i),T=parseFloat(T),E=Math.abs(parseFloat(E)),0==i%1&&0==T%1&&0==E%1?(i<=T?(T++,_=0==i&&1==E?T:i+", "+T,1!=E&&(_+=", "+E)):_=i+", "+--T+", -"+E,_="range("+_+")"):(_=i",GTE:">="};const Yo=function(_,t){var e=this.getFieldValue("OP"),i="&&"==e?t.ORDER_LOGICAL_AND:t.ORDER_LOGICAL_OR,T=t.valueToCode(this,"A",i)||"False",E=t.valueToCode(this,"B",i)||"False";if("AND"==e)var n=T+" and "+E;else if("OR"==e)n=T+" or "+E;else if("NOR"==e)n="not("+T+"^"+E+")";else n=T+"^"+E;return[n,i]},Uo=function(_,t){var e=t.ORDER_UNARY_PREFIX;return["not "+(t.valueToCode(this,"BOOL",e)||"False"),e]},go=function(_,t){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",t.ORDER_ATOMIC]},Bo=function(_,t){return["None",t.ORDER_ATOMIC]},Go=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"False";return["("+(t.valueToCode(this,"B",t.ORDER_ATOMIC)||"False")+" if "+e+" else "+(t.valueToCode(this,"C",t.ORDER_ATOMIC)||"False")+")",t.ORDER_ATOMIC]},Fo=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"''",i=t.valueToCode(this,"B",t.ORDER_ATOMIC)||"''";return[e+" "+this.getFieldValue("BOOL")+" "+i,t.ORDER_ATOMIC]},yo=function(_,t){var e=t.valueToCode(this,"A",t.ORDER_ATOMIC)||"''",i=t.valueToCode(this,"B",t.ORDER_ATOMIC)||"''";return[e+" "+this.getFieldValue("BOOL")+" "+i,t.ORDER_ATOMIC]},fo=function(_,t){return["bool("+(t.valueToCode(this,"VAR",t.ORDER_ATOMIC)||"0")+")",t.ORDER_ATOMIC]},bo=function(_,t){return t.definitions_.import_os="import os","os.startfile("+t.valueToCode(this,"fn",t.ORDER_ATOMIC)+")\n"},xo=function(_,t){return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+" = open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},vo=function(_,t){return["open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",t.ORDER_ATOMIC]},Xo=function(_,t){return["open("+t.valueToCode(this,"FILENAME",t.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',t.ORDER_ATOMIC]},Vo=function(_,t){var e=t.valueToCode(this,"data",t.ORDER_ATOMIC);return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".write("+e+")\n"},ko=function(_,t){var e=this.getFieldValue("MODE");return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+"."+e+"()",t.ORDER_ATOMIC]},wo=function(_,t){var e=this.getFieldValue("MODE");return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+"."+e+"("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},Wo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".readline("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},Ko=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".writable()",t.ORDER_ATOMIC]},zo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".name()",t.ORDER_ATOMIC]},Zo=function(_,t){return t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".close()\n"},Qo=function(_,t){t.definitions_.import_os="import os";return["os.listdir()",t.ORDER_ATOMIC]},Jo=function(_,t){return t.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")\n"},qo=function(_,t){return t.definitions_.import_os="import os",["os.path.getsize("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},jo=function(_,t){return[t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".tell()",t.ORDER_ATOMIC]},$o=function(_,t){var e=this.getFieldValue("MODE"),i=0;return i="start"==e?0:"current"==e?1:2,t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+".seek("+t.valueToCode(this,"SIZE",t.ORDER_ATOMIC)+","+i+")\n"},_s=function(_,t){return t.definitions_.import_os="import os","os.chdir("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+")\n"},ts=function(_,t){t.definitions_.import_os="import os";return["os.getcwd()",t.ORDER_ATOMIC]},es=function(_,t){return t.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+t.valueToCode(this,"PATH",t.ORDER_ATOMIC)+")\n"},is=function(_,t){return t.definitions_.import_os="import os","os.rename("+t.valueToCode(this,"FILE",t.ORDER_ATOMIC)+","+t.valueToCode(this,"NEWFILE",t.ORDER_ATOMIC)+")\n"},Ts=function(_,t){t.definitions_.import_os="import os";var e=t.valueToCode(this,"FILE",t.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+e+")",t.ORDER_ATOMIC]},Es=function(_,t){return t.definitions_.import_os="import os",t.definitions_.import_sdcard="import sdcard",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+" = sdcard.SDCard("+t.valueToCode(this,"SPISUB",t.ORDER_ATOMIC)+","+t.valueToCode(this,"PINSUB",t.ORDER_ATOMIC)+")\n"},ns=function(_,t){return t.definitions_.import_os="import os",t.definitions_.import_sdcard="import sdcard","os.mount("+t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+","+t.valueToCode(this,"DIR",t.ORDER_ATOMIC)+")\n"},os=function(_,t){var e=t.variableDB_.getName(this.getFieldValue("NAME"),a_.Procedures.NAME_TYPE),i=t.statementToCode(this,"STACK")||" pass\n";t.INFINITE_LOOP_TRAP&&(i=t.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+i);var T=t.valueToCode(this,"RETURN",t.ORDER_NONE)||"";T&&(T=" return "+T+"\n");for(var E=[],n=0;n\n\n\n\t\n"+t.statementToCode(this,"HEAD")+"\n\n"+t.statementToCode(this,"BODY")+"\n\n'''",t.ORDER_ATOMIC]},Xs=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");return"\n"+e+"\n"},Vs=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");if("head"==i)var T="<"+i+'>\n\t\n'+e+"\n";else T="<"+i+">\n"+e+"\n";return T},ks=function(_,t){var e=t.statementToCode(this,"DO"),i=this.getFieldValue("LEVEL");return"<"+i+">\n"+e+"\n"},ws=function(_,t){var e=t.statementToCode(this,"DO"),i=t.valueToCode(this,"style"),T=this.getFieldValue("LEVEL");return"<"+T+" "+i+" >\n"+e+"\n"},Ws=function(_,t){return['style="'+t.statementToCode(this,"STYLE")+'"',t.ORDER_ATOMIC]},Ks=function(_,t){return'"},zs=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Zs=function(){return this.getFieldValue("TEXT")+"\n"},Qs=function(_){return _.getFieldValue("TEXT")+"\n"},Js=function(_,t){return[_.getFieldValue("TEXT"),t.ORDER_ATOMIC]},qs=function(_,t){return(t.valueToCode(_,"VALUE",t.ORDER_ATOMIC)||"")+"\n"},js=function(){return""},$s=function(_,t){return["type("+(t.valueToCode(_,"VALUE",t.ORDER_MEMBER)||"___")+")",t.ORDER_ATOMIC]},_O=function(_,t){for(var e=_.getFieldValue("NAME"),i=_.hasReturn_,T=new Array(_.itemCount_),E=0;E<_.itemCount_;E++)T[E]=t.valueToCode(_,"ARGUMENT"+E,t.ORDER_NONE)||"___";var n=e+"("+T.join(", ")+")";return i?[n,t.ORDER_ATOMIC]:n+"\n"},tO=function(_,t){var e=t.valueToCode(_,"MODULE",t.ORDER_ATOMIC),i=t.valueToCode(_,"NAME",t.ORDER_ATOMIC);return[e+"."+(i=i.substring(1,i.length-1)),t.ORDER_NONE]},eO=new a_.Generator("Python");eO.INDENT=" ",eO.addReservedWords("False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,print,raise,return,try,while,with,yield,NotImplemented,Ellipsis,__debug__,quit,exit,copyright,license,credits,ArithmeticError,AssertionError,AttributeError,BaseException,BlockingIOError,BrokenPipeError,BufferError,BytesWarning,ChildProcessError,ConnectionAbortedError,ConnectionError,ConnectionRefusedError,ConnectionResetError,DeprecationWarning,EOFError,Ellipsis,EnvironmentError,Exception,FileExistsError,FileNotFoundError,FloatingPointError,FutureWarning,GeneratorExit,IOError,ImportError,ImportWarning,IndentationError,IndexError,InterruptedError,IsADirectoryError,KeyError,KeyboardInterrupt,LookupError,MemoryError,ModuleNotFoundError,NameError,NotADirectoryError,NotImplemented,NotImplementedError,OSError,OverflowError,PendingDeprecationWarning,PermissionError,ProcessLookupError,RecursionError,ReferenceError,ResourceWarning,RuntimeError,RuntimeWarning,StandardError,StopAsyncIteration,StopIteration,SyntaxError,SyntaxWarning,SystemError,SystemExit,TabError,TimeoutError,TypeError,UnboundLocalError,UnicodeDecodeError,UnicodeEncodeError,UnicodeError,UnicodeTranslateError,UnicodeWarning,UserWarning,ValueError,Warning,ZeroDivisionError,_,__build_class__,__debug__,__doc__,__import__,__loader__,__name__,__package__,__spec__,abs,all,any,apply,ascii,basestring,bin,bool,buffer,bytearray,bytes,callable,chr,classmethod,cmp,coerce,compile,complex,copyright,credits,delattr,dict,dir,divmod,enumerate,eval,exec,execfile,exit,file,filter,float,format,frozenset,getattr,globals,hasattr,hash,help,hex,id,input,int,intern,isinstance,issubclass,iter,len,license,list,locals,long,map,max,memoryview,min,next,object,oct,open,ord,pow,print,property,quit,range,raw_input,reduce,reload,repr,reversed,round,set,setattr,slice,sorted,staticmethod,str,sum,super,tuple,type,unichr,unicode,vars,xrange,zip"),eO.ORDER_ATOMIC=0,eO.ORDER_COLLECTION=1,eO.ORDER_STRING_CONVERSION=1,eO.ORDER_UNARY_POSTFIX=1,eO.ORDER_UNARY_PREFIX=2,eO.ORDER_MEMBER=2.1,eO.ORDER_FUNCTION_CALL=2.2,eO.ORDER_EXPONENTIATION=3,eO.ORDER_UNARY_SIGN=4,eO.ORDER_BITWISE_NOT=4,eO.ORDER_MULTIPLICATIVE=5,eO.ORDER_ADDITIVE=6,eO.ORDER_BITWISE_SHIFT=7,eO.ORDER_BITWISE_AND=8,eO.ORDER_BITWISE_XOR=9,eO.ORDER_BITWISE_OR=10,eO.ORDER_RELATIONAL=11,eO.ORDER_EQUALITY=11,eO.ORDER_LOGICAL_NOT=12,eO.ORDER_LOGICAL_AND=13,eO.ORDER_LOGICAL_OR=14,eO.ORDER_ASSIGNMENT=14,eO.ORDER_CONDITIONAL=15,eO.ORDER_LAMBDA=16,eO.ORDER_NONE=99,eO.ORDER_OVERRIDES=[[eO.ORDER_FUNCTION_CALL,eO.ORDER_MEMBER],[eO.ORDER_FUNCTION_CALL,eO.ORDER_FUNCTION_CALL],[eO.ORDER_MEMBER,eO.ORDER_MEMBER],[eO.ORDER_MEMBER,eO.ORDER_FUNCTION_CALL]],eO.init=function(){eO.PASS=this.INDENT+"pass\n",eO.definitions_=Object.create(null),eO.functionNames_=Object.create(null),eO.setups_=Object.create(null),eO.loops_=Object.create(null),eO.codeEnd_=Object.create(null),eO.variableDB_?eO.variableDB_.reset():eO.variableDB_=new r_(eO.RESERVED_WORDS_)},eO.finish=function(_){""!==_&&(_=(_=_.replace(/\n/g,"\n")).replace(/\n\s+$/,"\n"));var t=[];for(var e in eO.definitions_)t.push(eO.definitions_[e]);var i=[];for(var e in eO.functions_)i.push(eO.functions_[e]);var T=[];for(var e in eO.setups_)T.push(eO.setups_[e]);0!==T.length&&T.push("\n");var E=[];for(var e in eO.loops_)E.push(eO.loops_[e]);var n=[];for(var e in eO.codeEnd_)n.push(eO.codeEnd_[e]);return 0!==n.length&&n.push("\n"),E.length>0?t.join("\n")+"\n"+i.join("\n")+"\n"+T.join("")+"\n"+_+"while True:\n"+E.join("")+n.join("\n"):t.join("\n")+"\n"+i.join("\n")+"\n"+T.join("")+"\n"+_+n.join("\n")},eO.scrubNakedValue=function(_){return _+"\n"},eO.quote_=function(_){var t="'";return-1!==(_=_.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===_.indexOf('"')?t='"':_=_.replace(/'/g,"\\'")),t+_+t},eO.multiline_quote_=function(_){return"'''"+(_=_.replace(/'''/g,"\\'\\'\\'"))+"'''"},eO.scrub_=function(_,t,e){var i="";if(!_.outputConnection||!_.outputConnection.targetConnection){(E=_.getCommentText())&&(E=a_.utils.string.wrap(E,eO.COMMENT_WRAP-3),i+=eO.prefixLines(E+"\n","# "));for(var T=0;T<_.inputList.length;T++)if(_.inputList[T].type==a_.INPUT_VALUE){var E,n=_.inputList[T].connection.targetBlock();if(n)(E=eO.allNestedComments(n))&&(i+=eO.prefixLines(E,"# "))}}var o=_.nextConnection&&_.nextConnection.targetBlock();return i+t+(e?"":eO.blockToCode(o))},eO.getAdjustedInt=function(_,t,e,i){var T=e||0;_.workspace.options.oneBasedIndex&&T--;var E=_.workspace.options.oneBasedIndex?"1":"0",n=T?eO.ORDER_ADDITIVE:eO.ORDER_NONE,o=eO.valueToCode(_,t,n)||E;return a_.isNumber(o)?(o=parseInt(o,10)+T,i&&(o=-o)):(o=T>0?"int("+o+" + "+T+")":T<0?"int("+o+" - "+-T+")":"int("+o+")",i&&(o="-"+o)),o};const iO="#74A55B",TO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_RGB_PIN_COUNT)}},EO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},nO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},oO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},sO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(a_.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(a_.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},OO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},IO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_RESET)}},aO={init:function(){this.setColour(iO),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},MO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},LO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},RO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},rO={init:function(){this.setColour(iO),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},SO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},lO={init:function(){this.setColour(iO),this.appendValueInput("VAR").appendField("360°"+a_.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SETTING+a_.Msg.blockpy_turtle_rotate+a_.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},AO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},PO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},NO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},dO={init:function(){this.setColour(iO),this.appendValueInput("PIN",Number).appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},uO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new a_.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(a_.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},hO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"ms32006.MOT_CW"],[a_.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[a_.Msg.MOTOR_N,"ms32006.MOT_N"],[a_.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},mO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new a_.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"ms32006.MOT_CW"],[a_.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},CO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(a_.Msg.MIXLY_RGB_PIN_COUNT)}},cO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},HO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},DO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_WRI)}},YO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new a_.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+a_.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},UO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},gO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},BO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(a_.Msg.MIXLY_PROGRAM_BLOCK).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},GO={init:function(){this.setColour(iO),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(a_.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(a_.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(a_.Msg.MIXLY_PROGRAM_BLOCK).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},FO={init:function(){this.setColour(iO),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},yO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},fO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_TRAFFIC_LIGHT).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.LISTS_SET_INDEX_SET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[a_.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_WHITE,"W"],[a_.Msg.COLOUR_RGB_RED,"R"],[a_.Msg.COLOUR_RGB_YELLOW,"Y"],[a_.Msg.COLOUR_RGB_GREEN,"G"],[a_.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_WHITE,"W"],[a_.Msg.COLOUR_RGB_RED,"R"],[a_.Msg.COLOUR_RGB_YELLOW,"Y"],[a_.Msg.COLOUR_RGB_GREEN,"G"],[a_.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},XO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[a_.Msg.MIXLY_SPEED,"[1]"],[a_.Msg.MATH_SINGLE_OP_ABSOLUTE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[a_.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[a_.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[a_.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},VO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[a_.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MATH_SINGLE_OP_ABSOLUTE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"0"],[a_.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[a_.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},WO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},KO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField("("+a_.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},zO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.ME_GO_MOTOR_EXTERN+a_.Msg.MIXLY_SERVO_MOTOR).appendField(a_.Msg.MIXLY_RELATIVE+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+a_.Msg.MSG.run).appendField("("+a_.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LEFT,"0"],[a_.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MODE).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPEED+a_.Msg.MIXLY_MODE,"0"],[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER+a_.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(a_.inputs.Align.RIGHT).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"0"],[a_.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MOTOR,"ext_motor"],[a_.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[a_.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[a_.Msg.COLOUR_RGB_RED+"LED","R_LED"],[a_.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[a_.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[a_.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[a_.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},QO={init:function(){this.setColour(iO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.ME_GO_MOTOR_EXTERN).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MOTOR,"ext_motor"],[a_.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[a_.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[a_.Msg.COLOUR_RGB_RED+"LED","R_LED"],[a_.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[a_.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[a_.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[a_.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},JO="#6C9858",qO={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},jO={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_ON,"1"],[a_.Msg.MIXLY_ESP32_OFF,"0"],[a_.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},$O={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},_I={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},tI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},eI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_BUILDIN_LED+a_.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},iI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(a_.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(a_.Msg.MIXLY_LCD_SETCOLOR).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_LIGHT_RED,"1"],[a_.Msg.MIXLY_LIGHT_GREEN,"2"],[a_.Msg.MIXLY_LIGHT_BLUE,"3"],[a_.Msg.MIXLY_LIGHT_YELLOW,"4"],[a_.Msg.MIXLY_LIGHT_CYAN,"5"],[a_.Msg.MIXLY_LIGHT_PURPLE,"6"],[a_.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},TI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},EI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(a_.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},nI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(a_.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},oI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_SETTING).appendField(a_.Msg.MIXLY_BUILDIN_LED).appendField(new a_.FieldDropdown([[a_.Msg.COLOUR_RGB_RED,"r"],[a_.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_BUILDIN_LED+a_.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},sI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(new a_.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},OI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(p_.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},II={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},aI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},pI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.PYTHON_RANGE_STEP).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},MI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_WRI)}},LI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(p_.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(a_.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},RI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(a_.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},rI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(a_.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.PYTHON_RANGE_STEP).appendField(a_.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},SI={init:function(){this.setColour(JO),this.appendValueInput("TICKS").setCheck(Number).appendField(a_.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(a_.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(a_.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},lI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},AI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_RESET)}},PI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},NI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(a_.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},dI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},uI={init:function(){this.setColour(JO),this.appendValueInput("LIST").appendField(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},hI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},mI={init:function(){this.setColour(JO),this.appendDummyInput().appendField("MixGo Car").appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},CI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField("MixGo Car").appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([[a_.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[a_.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},HI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MOTOR_DC).appendField(new a_.FieldDropdown([[a_.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[a_.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_STOP).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},YI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[a_.Msg.MIXLY_SPEED,"SPEED"],[a_.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},UI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},gI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXBOT).appendField(a_.Msg.MIXLY_MOTOR).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"1"],[a_.Msg.TEXT_TRIM_RIGHT,"2"],[a_.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[a_.Msg.MIXLY_SPEED,"SPEED"],[a_.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},BI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[a_.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},GI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(new a_.FieldDropdown([[a_.Msg.blockpy_forward,"F"],[a_.Msg.blockpy_backward,"B"],[a_.Msg.blockpy_left,"L"],[a_.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},FI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(new a_.FieldDropdown([[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.BITBOT).appendField(a_.Msg.MIXLY_MOTOR).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"0"],[a_.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fI={init:function(){this.setColour(JO),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},bI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},xI={init:function(){this.setColour(JO),this.appendValueInput("bright").appendField(a_.Msg.MIXLY_SETTING+a_.Msg.MIXLY_MIXBOT_BUZZER+a_.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_SETONOFF)}},vI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MIXBOT_BUZZER+a_.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_LED_GETONOFF)}},XI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_RECORD_AUDIO).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(a_.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},VI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_PLAY_AUDIO).appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},kI={init:function(){this.setColour(JO),this.appendValueInput("PATH").appendField(a_.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(a_.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},WI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},KI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.LISTS_SET_INDEX_SET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},zI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.PIN_NUMBERING).appendField(new a_.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT+a_.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.LISTS_SET_INDEX_SET+a_.Msg.ME_GO_MOTOR_EXTERN).appendField(a_.Msg.MIXLY_ALL+a_.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(a_.ALIGN_RIGHT).appendField(a_.Msg.blynk_IOT_IR_POWER+a_.Msg.MIXLY_PINMODEOUT+a_.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},QI={init:function(){this.setColour(JO),this.appendDummyInput().appendField(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(a_.Msg.MIXLY_RELEASE).appendField(new a_.FieldDropdown([[a_.Msg.MICROPYTHON_DISPLAY_YES,"True"],[a_.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.ANALOG+a_.Msg.MIXLY_KEYBOARD_INPUT)}},JI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SPECIAL_KEY).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPECIAL_KEY0,"0"],[a_.Msg.MIXLY_SPECIAL_KEY1,"1"],[a_.Msg.MIXLY_SPECIAL_KEY2,"2"],[a_.Msg.MIXLY_SPECIAL_KEY1,"4"],[a_.Msg.MIXLY_SPECIAL_KEY8,"8"],[a_.Msg.MIXLY_SPECIAL_KEY16,"16"],[a_.Msg.MIXLY_SPECIAL_KEY32,"32"],[a_.Msg.MIXLY_SPECIAL_KEY64,"64"],[a_.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},qI={init:function(){this.setColour(JO),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GENERAL_KEY).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},jI={init:function(){this.setColour(JO),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new a_.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(a_.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("generalkey_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;it?_[t]:'"key'+(t+1)+'"'),"KEY"+t).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},Qr={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Jr={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},qr={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},jr={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(a_.Msg.MIXLY_WIFI_USERNAME).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(a_.Msg.MIXLY_IOT_PASSWORD).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(a_.Msg.MIXLY_EMQX_PROJECT).setAlign(a_.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$r={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(a_.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(a_.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},_S={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(a_.Msg.MIXLY_EMQX_SUBSCRIBE+a_.Msg.MIXLY_MICROBIT_MSG).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(a_.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},tS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},eS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},iS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},TS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(a_.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},ES={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(a_.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},nS={init:function(){this.setColour(Vr),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},oS={init:function(){this.setColour(Vr),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},sS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(a_.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},OS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO").appendField(a_.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(a_.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},IS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+a_.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},aS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField(a_.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(a_.Msg.MIXLY_EMQX_SERVER).setAlign(a_.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(a_.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pS={init:function(){this.VISITOR_ID=p_.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Vr),this.appendDummyInput("").appendField(new a_.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const _=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==_&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},MS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MixIO").appendField(a_.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},LS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("HTTP"+a_.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(a_.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(a_.Msg.MIXLY_REQUESTS_GET).appendField(a_.Msg.MIXLY_GET_CURRENT_TIME).appendField(a_.Msg.MIXLY_OPEN_DEBUG).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},RS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("HTTP"+a_.Msg.MIXLY_Client).appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_REQUESTS_LEN,"client_len"],[a_.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[a_.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},rS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MQTT"+a_.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(a_.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(a_.Msg.MIXLY_INIT_SUBSCRIBE).appendField(a_.Msg.MQTT_Topic).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(a_.Msg.MIXLY_OPEN_DEBUG).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[a_.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},SS={init:function(){this.setColour(Vr),this.appendDummyInput().appendField("MQTT"+a_.Msg.MIXLY_Client).appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_REQUESTS_LEN,"client_len"],[a_.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[a_.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},lS=kr,AS=wr,PS=Wr,NS=Kr,dS=Zr,uS=225,hS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(a_.Msg.MIXLY_NETWORK_MODE).appendField(new a_.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},mS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[a_.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("op"),e=a_.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:a_.Msg.MIXLY_NETWORK_WIFI_OPEN,False:a_.Msg.MIXLY_NETWORK_WIFI_CLOSE}[t]+e}))}},CS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},cS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return a_.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:a_.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},HS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(a_.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(a_.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},DS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_NETWORK_WIFI_CONNECT+a_.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},YS={init:function(){this.setColour(uS),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(a_.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(a_.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},US={init:function(){this.setColour(uS),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},gS={init:function(){this.setColour(uS),this.appendValueInput("url").appendField(a_.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},BS={init:function(){this.setColour(uS),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},GS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[a_.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[a_.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("mode");return a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:a_.Msg.MIXLY_ESP32_NETWORK_IP,1:a_.Msg.MIXLY_ESP32_NETWORK_MASK,2:a_.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[t]}))}},FS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},yS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[a_.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},fS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(a_.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(a_.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},bS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(a_.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},xS={init:function(){this.setColour(uS),this.appendValueInput("VAR").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new a_.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("mode");return a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[t]}))}},vS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},XS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},VS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},kS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},wS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},WS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},KS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},zS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},ZS={init:function(){this.setColour(uS),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},QS={init:function(){this.setColour(uS),this.appendValueInput("DOMAIN").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS_GET).appendField(new a_.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(_,t){a_.Names.equals(_,this.getFieldValue("VAR"))&&this.setTitleValue(t,"VAR")}},JS={init:function(){this.appendValueInput("VAL");var _=[[a_.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[a_.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(uS),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown(_),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var _=t.getFieldValue("DIR");return{clear:a_.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:a_.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:a_.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[_]}))}},qS={init:function(){this.appendValueInput("VAR").appendField(a_.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(uS),this.appendDummyInput("").appendField(a_.Msg.blockpy_CONDUCT).appendField(new a_.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(a_.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("DIR");return{forward:a_.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:a_.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[t]}))}},jS={init:function(){this.setColour(uS),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(a_.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},$S={init:function(){this.setColour(uS),this.appendDummyInput("").appendField(new a_.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},_l=100,tl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(t),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},el={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},il={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField(a_.Msg.MOTOR_DC).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Direction).appendField(new a_.FieldDropdown([[a_.Msg.CLOCKWISE,"CW"],[a_.Msg.ANTI_CLOCKWISE,"CCW"],[a_.Msg.MOTOR_P,"P"],[a_.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Tl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField(a_.Msg.MOTOR_DC).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},El={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_MOVE)}},nl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(a_.inputs.Align.RIGHT).appendField(a_.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},ol={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+a_.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},sl={init:function(){var _=p_.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==_)var t="CE G6";else if("mixgo_pe"==_)t="PE G1";this.setColour(_l),this.appendValueInput("SUB").appendField(t).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+a_.Msg.MIXLY_SERVO).appendField(a_.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET+a_.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ol="#A58C5B",Il={init:function(){this.setColour(Ol),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(a_.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SENOR_IS_PRESSED)}},al={init:function(){this.setColour(Ol),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(a_.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_SENOR_WAS_PRESSED)}},pl={init:function(){this.setColour(Ol),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(a_.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.PROCEDURES_DEFRETURN_RETURN+a_.Msg.MIXLY_BUTTON+a_.Msg.MIXLY_GET_PRESSES)}},Ml={init:function(){this.setColour(Ol),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_BUTTON).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MODE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[a_.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[a_.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},Ll={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_shake,"shake"],[a_.Msg.MIXLY_UP,"up"],[a_.Msg.MIXLY_DOWN,"down"],[a_.Msg.MIXLY_LEFT,"left"],[a_.Msg.MIXLY_RIGHT,"right"],[a_.Msg.MIXLY_MICROBIT_face_up,"face up"],[a_.Msg.MIXLY_MICROBIT_face_down,"face down"],[a_.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(a_.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("gesture"),e=a_.Msg.MIXLY_MICROBIT_JS_CURRENT,i=a_.Msg.MSG.catSensor,T=a_.Msg.MIXLY_MICROBIT_JS_STATE,E=a_.Msg.MIXLY_MICROBIT_PERFORMANCE;return e+i+T+{shake:a_.Msg.MIXLY_MICROBIT_shake,up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT,"face up":a_.Msg.MIXLY_MICROBIT_face_up,"face down":a_.Msg.MIXLY_MICROBIT_face_down,freefall:a_.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[t]+E}))}},Rl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},rl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},Sl={init:function(){var _=[[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(Ol),this.appendValueInput("PIN",Number).appendField(new a_.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new a_.FieldDropdown(_),"WHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var _=t.getFieldValue("WHAT");return{temperature:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:a_.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[_]}))}},ll={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},Al={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},Pl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new a_.FieldDropdown([[a_.Msg.TEXT_TRIM_LEFT,"left"],[a_.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(a_.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("direction"),e=a_.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,i=a_.Msg.MIXLY_ESP32_NEAR;return e+{left:a_.Msg.TEXT_TRIM_LEFT,right:a_.Msg.TEXT_TRIM_RIGHT}[t]+i}))}},Nl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[a_.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{"get_BMP_temperature()":a_.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":a_.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[t]}))}},dl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[a_.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{"get_SHT_temperature()":a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},ul={init:function(){this.setColour(Ol),this.appendValueInput("PIN",Number).appendField("DS18x20 "+a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},hl={init:function(){this.setColour(Ol),this.appendDummyInput("").appendField("LM35"+a_.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(a_.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(a_.Msg.MIXLY_TOOLTIP_LM35)}},ml={init:function(){this.setColour(Ol),this.appendValueInput("I2CSUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},Cl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[a_.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[a_.Msg.MIXLY_ESP32_MAX30102_IR+","+a_.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[a_.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[a_.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},Dl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.HTML_COLOUR+a_.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET+a_.Msg.HTML_COLOUR,"[2]"],[a_.Msg.MIXLY_GET+a_.Msg.MIXLY_IR_STRENGTH,"[1]"],[a_.Msg.MIXLY_GET+a_.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Yl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GET_ENV_LIGHT,"E"],[a_.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ul={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},gl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{temperature:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Bl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETTEMPERATUE,"temperature"],[a_.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key");return{temperature:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:a_.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Gl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_Altitude+a_.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_GETPRESSURE,"pressure()"],[a_.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[a_.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Fl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MIXGOPE_FIELD+a_.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[a_.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},yl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_shake,"shake"],[a_.Msg.MIXLY_UP,"up"],[a_.Msg.MIXLY_DOWN,"down"],[a_.Msg.MIXLY_LEFT,"left"],[a_.Msg.MIXLY_RIGHT,"right"],[a_.Msg.MIXLY_MICROBIT_face_up,"face up"],[a_.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("gesture"),e=a_.Msg.MIXLY_MICROBIT_JS_CURRENT,i=a_.Msg.MSG.catSensor,T=a_.Msg.MIXLY_MICROBIT_JS_STATE,E=a_.Msg.MIXLY_MICROBIT_PERFORMANCE;return e+i+T+{shake:a_.Msg.MIXLY_MICROBIT_shake,up:a_.Msg.MIXLY_UP,down:a_.Msg.MIXLY_DOWN,left:a_.Msg.MIXLY_LEFT,right:a_.Msg.MIXLY_RIGHT,"face up":a_.Msg.MIXLY_MICROBIT_face_up,"face down":a_.Msg.MIXLY_MICROBIT_face_down}[t]+E}))}},fl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},bl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_GET+a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},xl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+a_.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new a_.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("key"),e=a_.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,i=a_.Msg.MIXLY_MICROBIT_Direction,T=a_.Msg.MIXLY_ESP32_SENOR_GYRO;return e+{x:"x",y:"y",z:"z","(x,y,z)":a_.Msg.MIXLY_MICROBIT_Shiliang_Direction}[t]+i+T}))}},vl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},Xl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_GETTEMPERATUE)}},Vl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var _=this;this.setTooltip((function(){var t=_.getFieldValue("compass");return a_.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:a_.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:a_.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[t]}))}},kl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(a_.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(a_.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},wl={init:function(){this.setColour(Ol),this.appendValueInput("SPISUB").appendField(a_.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(a_.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SETUP+a_.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new a_.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},Wl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[a_.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Kl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},zl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField("RFID"+a_.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},Zl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(a_.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Ql={init:function(){this.setColour(Ol),this.appendDummyInput().appendField(a_.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(a_.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(a_.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(a_.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},Jl={init:function(){this.setColour(Ol),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new a_.FieldDropdown([[a_.Msg.MIXLY_RFID_SCAN_OK,"0"],[a_.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[a_.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ql={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_MICROBIT_JS_GET).appendField(new a_.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},jl={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(a_.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},$l={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},_A={init:function(){this.setColour(Ol),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new a_.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var _=document.createElement("mutation");return _.setAttribute("items",this.itemCount_),_},domToMutation:function(_){this.itemCount_=parseInt(_.getAttribute("items"),10),this.updateShape_()},decompose:function(_){var t=_.newBlock("weather_set_label_container");t.initSvg();for(var e=t.getInput("STACK").connection,i=0;i>6),e.push(128|63&E)):(2048<=E&&E<=55295||57344<=E&&E<=65535)&&(i+=3,e.push(224|15&E>>12),e.push(128|63&E>>6),e.push(128|63&E))}for(T=0;T>8,255&i].concat(e)}(_,!0),e="",i=0;i=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==n?(t.definitions_.import_matrix32x12="import matrix32x12",e=T+" = matrix32x12.Matrix("+E+",font_address="+o+")\n"):"16x8 Matrix"==n&&(t.definitions_.import_matrix16x8="import matrix16x8",e=T+" = matrix16x8.Matrix("+E+")\n"),e},SC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},lC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},AC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},PC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},NC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},dC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},uC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".fill(0)\n"+e+".show()\n"},hC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},mC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+"))",t.ORDER_ATOMIC]},CC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".pixel(int("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+"), int("+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+"), "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"+e+".show()\n"},cC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".get_brightness()",t.ORDER_ATOMIC]},HC=function(_,t){return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".set_brightness("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+")\n"},DC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("image"),t.ORDER_ATOMIC]},YC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".map_"+_.getFieldValue("OP")+"("+t.valueToCode(_,"A",t.ORDER_ATOMIC)+","+t.valueToCode(_,"B",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},UC=function(_,t){return[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".map_invert("+t.valueToCode(_,"A",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},gC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC);return t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+t.valueToCode(this,"row",t.ORDER_ATOMIC)+","+t.valueToCode(this,"column",t.ORDER_ATOMIC)+","+e+")\n"},BC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_str("+(t.valueToCode(this,"Text_line1",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line2",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line3",t.ORDER_ASSIGNMENT)||"''")+","+(t.valueToCode(this,"Text_line4",t.ORDER_ASSIGNMENT)||"''")+")\n"},GC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_line("+t.valueToCode(this,"x1",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"y1",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"x2",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"y2",t.ORDER_ATOMIC)+", 1)\n"},FC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"width",t.ORDER_ATOMIC),n=t.valueToCode(this,"height",t.ORDER_ATOMIC),o="TRUE"==this.getFieldValue("fill")?"True":"False",s=this.getFieldValue("OP");switch(o){case"True":return e+".show_fill_rect("+i+", "+T+", "+E+", "+n+","+s+")\n";case"False":return e+".show_rect("+i+", "+T+", "+E+", "+n+","+s+")\n"}},yC=function(_,t){t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"length",t.ORDER_ATOMIC);return e+".show_"+this.getFieldValue("direction")+"("+i+", "+T+", "+E+", 1)\n"},fC=function(_,t){return["ON"==this.getFieldValue("ONOFF")?"1":"0",t.ORDER_ATOMIC]},bC=function(_,t){t.definitions_.import_matrix="import matrix";var e=_.getFieldValue("OP");return[t.valueToCode(_,"img",t.ORDER_ATOMIC)+".shift_"+e+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},xC=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return t.definitions_.import_ssd1306="import ssd1306",t.definitions_.import_machine="import machine",e+".show_fill("+this.getFieldValue("key")+")\n"},vC=function(_,t){return["matrix.Image."+this.getFieldValue("ANIMATION"),t.ORDER_ATOMIC]},XC=function(_,t){var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var i=t.valueToCode(this,"x",t.ORDER_ATOMIC),T=t.valueToCode(this,"y",t.ORDER_ATOMIC),E=t.valueToCode(this,"r",t.ORDER_ATOMIC),n="TRUE"==this.getFieldValue("fill")?"True":"False",o=this.getFieldValue("OP");switch(n){case"True":return e+".show_fill_circle("+i+", "+T+", "+E+", "+o+")\n";case"False":return e+".show_circle("+i+", "+T+", "+E+", "+o+")\n"}},VC=function(_,t){var e=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306";var i=t.valueToCode(this,"x0",t.ORDER_ATOMIC),T=t.valueToCode(this,"y0",t.ORDER_ATOMIC),E=t.valueToCode(this,"x1",t.ORDER_ATOMIC),n=t.valueToCode(this,"y1",t.ORDER_ATOMIC),o=t.valueToCode(this,"x2",t.ORDER_ATOMIC),s=t.valueToCode(this,"y2",t.ORDER_ATOMIC),O="TRUE"==this.getFieldValue("fill")?"True":"False",I=this.getFieldValue("OP");switch(O){case"True":return e+".show_fill_triangle("+i+", "+T+", "+E+", "+n+", "+o+", "+s+", "+I+")\n";case"False":return e+".show_triangle("+i+", "+T+", "+E+", "+n+", "+o+", "+s+", "+I+")\n"}},kC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_bitmap("+t.valueToCode(this,"START_X",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"START_Y",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"bitmap_name",t.ORDER_ATOMIC)+","+t.valueToCode(this,"WIDTH",t.ORDER_ATOMIC)+","+t.valueToCode(this,"HEIGHT",t.ORDER_ATOMIC)+")\n"},wC=function(_,t){return t.definitions_.import_machine="import machine",t.definitions_.import_ssd1306="import ssd1306",t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".show_pixel("+t.valueToCode(this,"POS_X",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"POS_Y",t.ORDER_ATOMIC)+")\n"},WC=function(_,t){var e,i=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),T=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),E=this.getFieldValue("key");return"TM1650"==E?(t.definitions_.import_tm1650="import tm1650",e=i+" = tm1650."+E+"("+T+")\n"):"TM1637"==E&&(t.definitions_.import_tm1637="import tm1637",e=i+" = tm1637."+E+"("+T+")\n"),e},KC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},zC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".shownum("+t.valueToCode(this,"VALUE",t.ORDER_ATOMIC)+")\n"},ZC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".showDP("+t.valueToCode(this,"NO",t.ORDER_ATOMIC)+", "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"},QC=function(_,t){return t.valueToCode(this,"VAR",t.ORDER_ATOMIC)+".intensity("+t.valueToCode(this,"VALUE",t.ORDER_ATOMIC)+")\n"},JC=function(_,t){t.definitions_.import_st7789="import st7789";var e=p_.Boards.getSelectedBoardKey().split(":")[2],i="";i=["mpython","mixgo_pe","mixgo_nova"].indexOf(e)>=0?"0x700000":["mixgo_zero"].indexOf(e)>=0?"0xE00000":"0x3A0000";var T=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),E=t.valueToCode(this,"SPISUB",t.ORDER_ATOMIC),n=t.valueToCode(this,"PINCS",t.ORDER_ATOMIC),o=t.valueToCode(this,"PINDC",t.ORDER_ATOMIC);return T+" = st7789.ST7789("+E+","+t.valueToCode(this,"WIDTH",t.ORDER_ATOMIC)+","+t.valueToCode(this,"HEIGHT",t.ORDER_ATOMIC)+",dc_pin="+o+",cs_pin="+n+",rotation="+this.getFieldValue("rotate")+",font_address="+i+")\n"},qC=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=e+".image("+i+",x = "+T+",y = "+E+",size = "+n+",color="+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=e+".image("+i+",x = "+T+",y = "+E+",size = "+n+",color=0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},jC=function(_,t){var e="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&e)>>8|(64512&e)>>5|(255&e)>>3).toString(16),t.ORDER_ATOMIC]},$C=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),O=this.getFieldValue("center");if("0x"==s.slice(0,2))var I=e+".shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+O+",color="+s+")\n";else{const _=s.match(/\d+/g);var a="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");I=e+".shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+O+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return I},_c=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==n.slice(0,2))var o=e+".frame("+i+",size = "+T+",delay = "+E+",color="+n+")\n";else{const _=n.match(/\d+/g);var s="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");o=e+".frame("+i+",size = "+T+",delay = "+E+",color=0x"+((16252928&s)>>8|(64512&s)>>5|(255&s)>>3).toString(16)+")\n"}return o},tc=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==s.slice(0,2))var O=e+".scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color="+s+")\n";else{const _=s.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O=e+".scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color=0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\n"}return O},ec=function(_,t){return t.definitions_.import_st7789="import st7789",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},ic=function(_,t){t.definitions_.import_st7789="import st7789";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"x1",t.ORDER_ATOMIC),T=t.valueToCode(this,"y1",t.ORDER_ATOMIC),E=t.valueToCode(this,"x2",t.ORDER_ATOMIC),n=t.valueToCode(this,"y2",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=e+".line("+i+", "+T+", "+E+", "+n+", color="+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=e+".line("+i+", "+T+", "+E+", "+n+", color=0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},Tc=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),T=this.getFieldValue("key"),E=t.valueToCode(this,"ADDR",t.ORDER_ATOMIC);return t.definitions_.import_i2clcd="import i2clcd",e+" = i2clcd.LCD("+i+",lcd_width="+T+",i2c_addr="+E+")\n"},Ec=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",column = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",line = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},nc=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".print("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",column = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",line = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",delay="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},oc=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},sc=function(_,t){return t.definitions_.import_i2clcd="import i2clcd",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".clear()\n"},Oc=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(this,"I2CSUB",t.ORDER_ATOMIC),T=t.valueToCode(this,"ADDR",t.ORDER_ATOMIC),E=p_.Boards.getSelectedBoardKey().split(":")[2],n="";return n=["mpython","mixgo_pe","mixgo_nova"].indexOf(E)>=0?"0x700000":["mixgo_zero"].indexOf(E)>=0?"0xE00000":"0x3A0000",t.definitions_.import_oled128x64="import oled128x64",e+" = oled128x64.OLED("+i+",address="+T+",font_address="+n+")\n"},Ic=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".image("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},ac=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".image("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",x = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+")\n"},pc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Mc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",x = "+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},Lc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Rc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},rc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Sc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",y = "+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+",size = "+t.valueToCode(this,"size",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},lc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".fill(0)\n"+e+".show()\n"},Ac=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+"."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},Pc=function(_,t){return t.definitions_.import_oled128x64="import oled128x64",[t.valueToCode(this,"SUB",t.ORDER_ATOMIC)+".pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+"))",t.ORDER_ATOMIC]},Nc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".pixel(int("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+"), int("+t.valueToCode(this,"y",t.ORDER_ASSIGNMENT)+"), "+t.valueToCode(this,"STAT",t.ORDER_ATOMIC)+")\n"+e+".show()\n"},dc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"w",t.ORDER_ATOMIC),n=t.valueToCode(_,"h",t.ORDER_ATOMIC),o=_.getFieldValue("state");return e+"."+_.getFieldValue("shape")+"("+i+", "+T+", "+E+", "+n+", "+o+")\n"+e+".show()\n"},uc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC),i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"length",t.ORDER_ATOMIC),n=_.getFieldValue("state");return e+"."+("0"==_.getFieldValue("dir_h_v")?"v":"h")+"line("+i+", "+T+", "+E+", "+n+")\n"+e+".show()\n"},hc=function(_,t){t.definitions_.import_oled128x64="import oled128x64";var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return e+".line("+t.valueToCode(_,"x1",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"y1",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"x2",t.ORDER_ATOMIC)+", "+t.valueToCode(_,"y2",t.ORDER_ATOMIC)+", "+_.getFieldValue("state")+")\n"+e+".show()\n"},mc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.shows("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"},Cc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2],i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),E=this.getFieldValue("center");return"mixgo_zero"==e||"mixgo_nova"==e?(t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft.shows("+i+",space = "+T+",center = "+E+")\n"):(t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.shows("+i+",space = "+T+",center = "+E+")\n")},cc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==e){t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_oled";var i="onboard_oled.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}else{t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix";i="onboard_matrix.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}return i},Hc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",delay = "+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+")\n"},Dc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==e){t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_oled";var i="onboard_oled.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}else{t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix";i="onboard_matrix.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+")\n"}return i},Yc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix","onboard_matrix.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",speed ="+t.valueToCode(this,"time",t.ORDER_ASSIGNMENT)+",space = "+t.valueToCode(this,"space",t.ORDER_ASSIGNMENT)+")\n"},Uc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix",["onboard_matrix."+_.getFieldValue("image"),t.ORDER_ATOMIC]},gc=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_matrix"]="from "+e+" import onboard_matrix",["onboard_matrix."+_.getFieldValue("image"),t.ORDER_ATOMIC]},Bc=function(_,t){var e={"#000000":"0","#ff0000":"1"};function i(_){let t="";if(_.length%2==1&&(_="0"+_),_.length<8){let t=8-_.length;for(let e=1;e<=t;e++)_="0"+_}for(let e=1;e<=_.length;e++)e%2==0&&e!==_.length?t=t+_[e-1]+",0x":t+=_[e-1];return"0x"+t}let T=[];for(let t=0;t<12;t++){let E="",n=0,o=0;for(let i=0;i<32;i++)i<8?o=7-i:i<16?o=23-i:i<24?o=39-i:i<32&&(o=55-i),n+=Number(e[_.getFieldValue(t+"-"+i)])*Math.pow(2,31-o);E+=i(n.toString(16)),T.unshift(E)}let E=[];for(let _=0;_>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},aH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=this.getFieldValue("center"),O=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==O.slice(0,2))var I="onboard_tft.shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+s+",color="+O+")\n";else{const _=O.match(/\d+/g);var a="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");I="onboard_tft.shows("+i+",x = "+T+",y = "+E+",size = "+n+",space = "+o+",center = "+s+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return I},pH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_tft","onboard_tft.frame("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",color=0xffff)\n"},MH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==n.slice(0,2))var o="onboard_tft.frame("+i+",size = "+T+",delay = "+E+",color="+n+")\n";else{const _=n.match(/\d+/g);var s="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");o="onboard_tft.frame("+i+",size = "+T+",delay = "+E+",color=0x"+((16252928&s)>>8|(64512&s)>>5|(255&s)>>3).toString(16)+")\n"}return o},LH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_oled"]="from "+e+" import onboard_tft","onboard_tft.scroll("+t.valueToCode(this,"data",t.ORDER_ASSIGNMENT)+",color=0xffff)\n"},RH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"data",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"time",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"space",t.ORDER_ASSIGNMENT),s=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==s.slice(0,2))var O="onboard_tft.scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color="+s+")\n";else{const _=s.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O="onboard_tft.scroll("+i+",y = "+T+",size = "+E+",speed ="+n+",space = "+o+",color=0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\n"}return O},rH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"w",t.ORDER_ATOMIC),n=t.valueToCode(_,"h",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),s=_.getFieldValue("shape");if("0x"==o.slice(0,2))var O="onboard_tft."+s+"("+i+", "+T+", "+E+", "+n+", "+o+")\nonboard_tft.show()\n";else{const _=o.match(/\d+/g);var I="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");O="onboard_tft."+s+"("+i+", "+T+", "+E+", "+n+", 0x"+((16252928&I)>>8|(64512&I)>>5|(255&I)>>3).toString(16)+")\nonboard_tft.show()\n"}return O},SH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"length",t.ORDER_ATOMIC),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),o=_.getFieldValue("dir_h_v");if("0x"==n.slice(0,2))var s="onboard_tft."+("0"==o?"v":"h")+"line("+i+", "+T+", "+E+", "+n+")\nonboard_tft.show()\n";else{const _=n.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft."+("0"==o?"v":"h")+"line("+i+", "+T+", "+E+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},lH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x1",t.ORDER_ATOMIC),T=t.valueToCode(_,"y1",t.ORDER_ATOMIC),E=t.valueToCode(_,"x2",t.ORDER_ATOMIC),n=t.valueToCode(_,"y2",t.ORDER_ATOMIC),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s="onboard_tft.line("+i+", "+T+", "+E+", "+n+", "+o+")\nonboard_tft.show()\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft.line("+i+", "+T+", "+E+", "+n+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},AH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},PH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft."+_.getFieldValue("OP")+"("+t.valueToCode(_,"val",t.ORDER_ATOMIC)+")\n"},NH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft",["hex(onboard_tft.pixel(int("+t.valueToCode(_,"x",t.ORDER_ATOMIC)+"), int("+t.valueToCode(_,"y",t.ORDER_ATOMIC)+")))",t.ORDER_ATOMIC]},dH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==E.slice(0,2))var n="onboard_tft.pixel(int("+i+"), int("+T+"), "+E+")\nonboard_tft.show()\n";else{const _=E.match(/\d+/g);var o="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");n="onboard_tft.pixel(int("+i+"), int("+T+"), 0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return n},uH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";return["onboard_tft.get_brightness()",t.ORDER_ATOMIC]},hH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft","onboard_tft.set_brightness("+t.valueToCode(this,"x",t.ORDER_ASSIGNMENT)+")\n"},mH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(this,"VAR",t.ORDER_ASSIGNMENT);if("0x"==i.slice(0,2))var T="onboard_tft.fill("+i+")\nonboard_tft.show()\n";else{const _=i.match(/\d+/g);var E="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");T="onboard_tft.fill(0x"+((16252928&E)>>8|(64512&E)>>5|(255&E)>>3).toString(16)+")\nonboard_tft.show()\n"}return T},CH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock";var i=t.valueToCode(this,"x",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"y",t.ORDER_ASSIGNMENT),E=t.valueToCode(this,"size",t.ORDER_ASSIGNMENT),n=t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT),o=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==o.slice(0,2))var s=n+"=Clock("+i+","+T+","+E+","+o+")\n";else{const _=o.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s=n+"=Clock("+i+","+T+","+E+",0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+")\n"}return s},cH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".set_rtctime()\n"},HH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".set_time("+t.valueToCode(this,"h",t.ORDER_ASSIGNMENT)+","+t.valueToCode(this,"m",t.ORDER_ASSIGNMENT)+","+t.valueToCode(this,"s",t.ORDER_ASSIGNMENT)+")\n"},DH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];return t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock",t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT)+".draw_clock()\n"},YH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_Clock"]="from "+e+" import Clock";var i=t.valueToCode(this,"SUB",t.ORDER_ASSIGNMENT),T=t.valueToCode(this,"VAR",t.ORDER_ATOMIC);if("0x"==T.slice(0,2))var E=i+".clear("+T+")\n";else{const _=T.match(/\d+/g);var n="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");E=i+".clear(0x"+((16252928&n)>>8|(64512&n)>>5|(255&n)>>3).toString(16)+")\n"}return E},UH=function(_,t){var e=p_.Boards.getSelectedBoardKey().split(":")[2];t.definitions_["import_"+e+"_onboard_tft"]="from "+e+" import onboard_tft";var i=t.valueToCode(_,"x",t.ORDER_ATOMIC),T=t.valueToCode(_,"y",t.ORDER_ATOMIC),E=t.valueToCode(_,"r",t.ORDER_ATOMIC),n=t.valueToCode(this,"VAR",t.ORDER_ATOMIC),o=_.getFieldValue("shape");if("0x"==n.slice(0,2))var s="onboard_tft.ellipse("+i+", "+T+", "+E+", "+E+", "+n+","+o+")\nonboard_tft.show()\n";else{const _=n.match(/\d+/g);var O="0x"+((parseInt(_[0])<<16)+(parseInt(_[1])<<8)+parseInt(_[2])).toString(16).padStart(4,"0");s="onboard_tft.ellipse("+i+", "+T+", "+E+", "+E+", 0x"+((16252928&O)>>8|(64512&O)>>5|(255&O)>>3).toString(16)+","+o+")\nonboard_tft.show()\n"}return s},gH=function(_,t){var e=this.getFieldValue("path"),i=this.getFieldValue("module");return t.definitions_["import_"+e+"_"+i]="from "+e+" import "+i,""},BH=function(_,t){var e=this.getFieldValue("module");return t.definitions_["import_"+e]="import "+e,""},GH=function(_,t){for(var e=this.getFieldValue("NAME"),i=new Array(this.itemCount_),T=0;T {\n"+t.statementToCode(this,"do")+"})\n"},GB=function(){return"control.reset()\n"},FB=function(_,t){return"control.waitMicros("+(t.valueToCode(this,"data",t.ORDER_ATOMIC)||p_.Profile.default.serial)+")\n"},yB=function(_,t){return"control.raiseEvent("+(t.valueToCode(this,"system_event_bus_source",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", "+(t.valueToCode(this,"system_event_bus_value",t.ORDER_ATOMIC)||p_.Profile.default.serial)+")\n"},fB=function(_,t){return"control.onEvent("+(t.valueToCode(this,"system_event_bus_source",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", "+(t.valueToCode(this,"system_event_bus_value",t.ORDER_ATOMIC)||p_.Profile.default.serial)+", () => {\n"+t.statementToCode(this,"do")+")\n"},bB=function(_,t){return["control.eventTimestamp()",t.ORDER_ATOMIC]},xB=function(_,t){return["control.eventValue()",t.ORDER_ATOMIC]},vB=function(_,t){return[this.getFieldValue("key"),t.ORDER_ATOMIC]},XB=function(_,t){return[this.getFieldValue("key"),t.ORDER_ATOMIC]},VB=function(_,t){return["control.deviceName()",t.ORDER_ATOMIC]},kB=function(_,t){return["control.deviceSerialNumber()",t.ORDER_ATOMIC]},wB=function(_,t){return"panic("+(t.valueToCode(this,"STATUS_CODE",t.ORDER_ATOMIC)||"1000")+")\n"},WB=function(_,t){switch(t.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",t.ORDER_ATOMIC];case"us":return["time.ticks_us()",t.ORDER_ATOMIC]}},KB=function(){return"while True:\n pass\n"},zB=function(_,t){return t.definitions_.import_mixgo="import mixgo","reset()\n"},ZB=function(_,t){return t.definitions_.import_os="import os","os.uname()"},QB=function(_,t){t.definitions_.import_time="import time";var e=t.valueToCode(this,"DELAY_TIME",t.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+e+")\n";case"ms":return"time.sleep_ms("+e+")\n";case"us":return"time.sleep_us("+e+")\n"}},JB=function(_,t){t.definitions_.import_time="import time";var e=t.valueToCode(this,"DELAY_TIME",t.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+e+")\n";case"ms":return"time.sleep_ms("+e+")\n";case"us":return"time.sleep_us("+e+")\n"}},qB=function(_,t){return t.definitions_.import_mixgo="import mixgo",(t.valueToCode(this,"VAR",t.ORDER_NONE)||"None")+".init(period = "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+", mode = Timer."+(t.valueToCode(this,"mode",t.ORDER_NONE)||"None")+", callback = "+(t.valueToCode(this,"callback",t.ORDER_NONE)||"None")+")\n"},jB=function(_,t){return t.definitions_.import_machine="import machine",(t.valueToCode(this,"VAR",t.ORDER_NONE)||"None")+".init(period = "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(t.valueToCode(this,"callback",t.ORDER_NONE)||"None")+")\n"},$B=function(_,t){return t.definitions_.import_time="import time",["time.ticks_diff("+(t.valueToCode(this,"END",t.ORDER_NONE)||"0")+", "+(t.valueToCode(this,"START",t.ORDER_NONE)||"0")+")",t.ORDER_ATOMIC]},_G=function(_,t){var e=t.valueToCode(this,"SUB",t.ORDER_ATOMIC);return t.definitions_.import_machine="import machine",e+" = machine.Timer(0)\n"},tG=function(_,t){return t.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(t.valueToCode(this,"period",t.ORDER_NONE)||"0")+")\n"},eG=function(_,t){t.definitions_.import_machine="import machine";return"wdt.feed()\n"},iG=function(_,t){t.definitions_.import_machine="import machine";return"machine.reset()\n"},TG=function(_,t){t.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},EG=_G,nG=jB,oG=$B,sG=QB,OG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},IG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+","+t.valueToCode(this,"day",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},aG=function(_,t){return t.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+t.valueToCode(this,"key",t.ORDER_ATOMIC)+","+t.valueToCode(this,"addr",t.ORDER_ATOMIC)+","+t.valueToCode(this,"hour",t.ORDER_ATOMIC)+")",t.ORDER_ATOMIC]},pG={};pG["MixGo(ESP32, 4M)"]={description:"MicroPython[ESP32 MixGo]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},pG["MixGo PE"]={description:"MicroPython[ESP32 MixGo PE]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin7","pin7"],["pin8","pin8"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm7","pwm7"],["pwm8","pwm8"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"],["pwm33","pwm33"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:p_.Profile.generate(["0-7"]),exlcdv:p_.Profile.generate(["0-4"]),brightness:p_.Profile.generate(["0-9"]),tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},pG["ESP32 Generic"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin11","pin11"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},pG.mPython={description:"MicroPython[ESP32 Generic]",digital_pin:[["p0","33"],["p1","32"],["p2","35"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],digital:[["pin0","pin33"],["pin1","pin32"],["pin2","pin35"],["pin5","pin0"],["pin6","pin16"],["pin7","pin17"],["pin8","pin26"],["pin9","pin25"],["pin11","pin2"],["pin13","pin18"],["pin14","pin19"],["pin15","pin21"],["pin16","pin5"],["pin19","pin22"],["pin20","pin23"]],input_pin:[["p0","33"],["p1","32"],["p2","35"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],output_pin:[["p0","33"],["p1","32"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],pwm_pin:[["p0","33"],["p1","32"],["p5","0"],["p6","16"],["p7","17"],["p8","26"],["p9","25"],["p11","2"],["p13","18"],["p14","19"],["p15","21"],["p16","5"],["p19","22"],["p20","23"]],pwm:[["pwm0","pwm33"],["pwm1","pwm32"],["pwm5","pwm0"],["pwm6","pwm16"],["pwm7","pwm17"],["pwm8","pwm26"],["pwm9","pwm25"],["pwm11","pwm2"],["pwm13","pwm18"],["pwm14","pwm19"],["pwm15","pwm21"],["pwm16","pwm5"],["pwm19","pwm22"],["pwm20","pwm23"]],espnow_channel:p_.Profile.generate(["1-13"]),haskylens_model:p_.Profile.generate(["0-4"]),analog_pin:[["p0","33"],["p1","32"],["p2","35"],["p3","34"],["p4","39"],["p10","36"]],analog:[["adc0","adc33"],["adc1","adc32"],["adc2","adc35"],["adc3","adc34"],["adc4","adc39"],["adc10","adc36"]],dac_pin:[["p8","26"],["p9","25"]],dac:[["dac8","dac26"],["dac9","dac25"]],touch_mpython:[["p","p"],["y","y"],["t","t"],["h","h"],["o","o"],["n","n"]],touch:[["tc0","tc33"],["tc1","tc32"],["tc5","tc0"],["tc11","tc2"],["tc23","tc27"],["tc24","tc14"],["tc25","tc12"],["tc26","tc13"],["tc27","tc15"],["tc28","tc4"]],touch_pin:[["p0","33"],["p1","32"],["p5","0"],["p11","2"],["p23","27"],["p24","14"],["p25","12"],["p26","13"],["p27","15"],["p28","4"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:p_.Profile.generate(["0-16"]),tts_builtin_music:p_.Profile.generate(["0-47"]),tts_bgmusic:p_.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]};const MG=pG,LG=230,RG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital),"PIN"),this.setOutput(!0)}},rG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},SG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},lG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},AG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch_mpython),"PIN"),this.setOutput(!0,Number)}},PG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},NG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},dG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},uG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},hG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},mG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},CG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},cG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},HG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},DG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},YG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},UG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},gG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog),"PIN"),this.setOutput(!0)}},BG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},GG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.dac),"PIN"),this.setOutput(!0)}},FG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},yG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},fG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm),"PIN"),this.setOutput(!0)}},bG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},xG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},vG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.touch),"PIN"),this.setOutput(!0)}},XG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},VG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},kG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},wG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.imglist),"PIN"),this.setOutput(!0)}},WG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.playlist),"PIN"),this.setOutput(!0)}},KG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},zG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},ZG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},QG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},JG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},qG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},jG={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},$G={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},_F={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},tF={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},eF={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},iF={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.one_more),"PIN"),this.setOutput(!0)}},TF={init:function(){this.setColour(LG),this.appendDummyInput("").appendField(new a_.FieldDropdown(p_.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},EF=function(_,t){return[this.getFieldValue("PIN"),t.ORDER_ATOMIC]},nF=EF,oF=EF,sF=EF,OF=EF,IF=EF,aF=EF,pF=EF,MF=EF,LF=EF,RF=EF,rF=EF,SF=EF,lF=EF,AF=EF,PF=EF,NF=EF,dF=EF,uF=EF,hF=EF,mF=EF,CF=EF,cF=EF,HF=EF,DF=EF,YF=EF,UF=EF,gF=EF,BF=EF,GF=EF,FF=EF,yF=EF,fF=EF,bF=EF,xF=EF,vF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"是数字",TEXT_IS_ALPHA:"是字母",TEXT_IS_ALNUM:"是数字和字母的组合",TEXT_LIST_START:"初始化列表 [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"初始化元组 (",TEXT_TUPLE_END:")",TEXT_DICT_START:"初始化字典 {",TEXT_DICT_END:"}",TEXT_SET_START:"初始化集合 {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",ADD_COMMENT:"添加注释",CHANGE_VALUE_TITLE:"更改值:",CLEAN_UP:"整理块",COLLAPSE_ALL:"折叠块",COLLAPSE_BLOCK:"折叠块",COLOUR_BLEND_COLOUR1:"颜色1",COLOUR_BLEND_COLOUR2:"颜色2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"比例",COLOUR_BLEND_TITLE:"混合",COLOUR_BLEND_TOOLTIP:"用一个给定的比率(0.0-1.0)混合两种颜色。",COLOUR_PICKER_HELPURL:"https://zh.wikipedia.org/wiki/颜色",COLOUR_PICKER_TOOLTIP:"从调色板中选择一种颜色。",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"随机颜色",COLOUR_RANDOM_TOOLTIP:"随机选择一种颜色。",COLOUR_RGB_BLUE:"蓝色",COLOUR_RGB_GREEN:"绿色",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"红色",COLOUR_RGB_TITLE:"颜色",COLOUR_RGB_TOOLTIP:"通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须介于0和100之间。",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"中断循环",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"继续下一次循环",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"中断包含它的循环。",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"跳过这个循环的剩余部分,并继续下一次迭代。",CONTROLS_FLOW_STATEMENTS_WARNING:"警告:此块仅可用于在一个循环内。",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"为每个项目 %1 在列表中 %2",CONTROLS_FOREACH_TOOLTIP:"遍历每个列表中的项目,将变量“%1”设定到该项中,然后执行某些语句。",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"使用 %1 从范围 %2 到 %3 每隔 %4",CONTROLS_FOR_TOOLTIP:"从起始数到结尾数中取出变量“%1”的值,按指定的时间间隔,执行指定的块。",CONTROLS_IF_ELSEIF_TOOLTIP:"在if语句块中增加一个条件。",CONTROLS_IF_ELSE_TOOLTIP:"添加一个最终的,包括所有情况的节到if块中。",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",CONTROLS_IF_IF_TOOLTIP:"增加、删除或重新排列各节来重新配置“if”块。",CONTROLS_IF_MSG_ELSE:"否则",CONTROLS_IF_MSG_ELSEIF:"否则如果",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",CONTROLS_IF_MSG_IF:"如果",CONTROLS_IF_TOOLTIP_1:"如果值为真,执行一些语句。",CONTROLS_IF_TOOLTIP_2:"如果值为真,则执行第一块语句。否则,则执行第二块语句。",CONTROLS_IF_TOOLTIP_3:"如果第一个值为真,则执行第一块的语句。否则,如果第二个值为真,则执行第二块的语句。",CONTROLS_IF_TOOLTIP_4:"如果第一个值为真,则执行第一块对语句。否则,如果第二个值为真,则执行语句的第二块。如果没有值为真,则执行最后一块的语句。",CONTROLS_REPEAT_FOREVER:"一直重复",CONTROLS_REPEAT_FOREVER_TOOLTIP:"一直执行一些语句。",CONTROLS_REPEAT_HELPURL:"https://zh.wikipedia.org/wiki/For循环",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"重复 %1 次",CONTROLS_REPEAT_TOOLTIP:"多次执行一些语句。",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"重复直到",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"重复当",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"只要值为假,执行一些语句。",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"只要值为真,执行一些语句。",DELETE_ALL_BLOCKS:"删除所有%1块吗?",DELETE_BLOCK:"删除块",DELETE_VARIABLE:"删除“%1”变量",DELETE_VARIABLE_CONFIRMATION:"删除“%2”变量的%1种用途么?",DELETE_X_BLOCKS:"删除块",DISABLE_BLOCK:"禁用块",DUPLICATE_BLOCK:"复制",ENABLE_BLOCK:"启用块",EXPAND_ALL:"展开块",EXPAND_BLOCK:"展开块",EXTERNAL_INPUTS:"多行输入",HELP:"帮助",INLINE_INPUTS:"单行输入",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"创建空列表",TUPLE_CREATE_EMPTY_TITLE:"创建空元组",DICT_CREATE_EMPTY_TITLE:"创建空字典",SET_CREATE_EMPTY_TITLE:"创建空集合",LISTS_CREATE_EMPTY_TOOLTIP:"返回一个列表,长度为 0,不包含任何数据记录",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"列表",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"元组",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"字典",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"集合",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个列表块。",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个元组块。",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个字典块。",SET_CREATE_WITH_CONTAINER_TOOLTIP:"增加、删除或重新排列各部分以此重新配置这个集合块。",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"初始化列表",TUPLE_CREATE_WITH_INPUT_WITH:"初始化元组",DICT_CREATE_WITH_INPUT_WITH:"初始化字典",SET_CREATE_WITH_INPUT_WITH:"初始化集合",LISTS_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到列表中。",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到元组中。",DICT_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到字典中。",SET_CREATE_WITH_ITEM_TOOLTIP:"将一个项添加到集合中。",LISTS_CREATE_WITH_TOOLTIP:"建立一个具有任意数量项目的列表。",LISTS_GET_INDEX_FIRST:"第一",LISTS_GET_INDEX_FROM_END:"倒数第",LISTS_GET_INDEX_FROM_START:"第",LISTS_GET_INDEX_GET:"获得",LISTS_GET_INDEX_GET_REMOVE:"取出并移除",LISTS_GET_INDEX_LAST:"最后",LISTS_GET_INDEX_RANDOM:"随机",LISTS_GET_INDEX_REMOVE:"移除",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"在列表 %1 中移除 %2 项",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"返回列表中的第一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_FROM:"返回在列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"返回列表中的最后一项。",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"随机返回列表中的一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"移除并返回列表中的第一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM:"移除并返回列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"移除并返回列表中的最后一个项目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"移除并返回列表中的一个随机项目中。",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"移除列表中的第一项",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM:"移除在列表中的指定位置的项。",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"移除列表中的最后一项",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"删除列表中的一个随机的项。",LISTS_GET_SUBLIST_END_FROM_END:"到倒数第#",LISTS_GET_SUBLIST_END_FROM_START:"到#",LISTS_GET_SUBLIST_END_LAST:"到最后",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"从头获得子列表",LISTS_GET_SUBLIST_START_FROM_END:"从倒数#取得子列表",LISTS_GET_SUBLIST_START_FROM_START:"从#取得子列表",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"复制列表中指定的部分。",LISTS_INDEX_FROM_END_TOOLTIP:"%1是最后一项。",LISTS_INDEX_FROM_START_TOOLTIP:"%1是第一个项目。",LISTS_INDEX_OF_FIRST:"找出第一个项出现",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"找出最后一个项出现",LISTS_INDEX_OF_TOOLTIP:"返回在列表中的第一/最后一个匹配项的索引值。如果找不到项目则返回0",LISTS_INLIST:"在列表中",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1是空的",LISTS_ISEMPTY_TOOLTIP:"如果改列表为空,则返回真。",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"%1的长度",LISTS_LENGTH_TOOLTIP:"返回列表的长度。",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"建立列表 项 %1 重复 %2 次",LISTS_REPEAT_TOOLTIP:"建立包含指定重复次数的值的列表。",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"为",LISTS_SET_INDEX_INSERT:"插入在",LISTS_SET_INDEX_SET:"设置",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"在列表的起始处添加该项。",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM:"插入在列表中指定位置的项。",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"将该项追加到列表的末尾。",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"在列表中随机插入项。",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"设置列表中的第一个项目。",LISTS_SET_INDEX_TOOLTIP_SET_FROM:"设置在列表中指定位置的项。",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"设置列表中的最后一项。",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"设置列表中一个随机的项目。",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"升序",LISTS_SORT_ORDER_DESCENDING:"降序",LISTS_SORT_TITLE:"排序%1 %2 %3",LISTS_SORT_TOOLTIP:"排序一个列表的拷贝。",LISTS_SORT_TYPE_IGNORECASE:"按字母排序,忽略大小写",LISTS_SORT_TYPE_NUMERIC:"按数字排序",LISTS_SORT_TYPE_TEXT:"按字母排序",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"从文本制作列表",LISTS_SPLIT_TEXT_FROM_LIST:"从列表组合文本",LISTS_SPLIT_TOOLTIP_JOIN:"加入文本列表至一个文本,由分隔符分隔。",LISTS_SPLIT_TOOLTIP_SPLIT:"拆分文本到文本列表,按每个分隔符拆分。",LISTS_SPLIT_WITH_DELIMITER:"用分隔符",LOGIC_BOOLEAN_FALSE:"假",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"返回真或假。",LOGIC_BOOLEAN_TRUE:"真",LOGIC_COMPARE_HELPURL:"https://zh.wikipedia.org/wiki/不等",LOGIC_COMPARE_TOOLTIP_EQ:"如果两个输入结果相等,则返回真。",LOGIC_COMPARE_TOOLTIP_GT:"如果第一个输入结果比第二个大,则返回真。",LOGIC_COMPARE_TOOLTIP_GTE:"如果第一个输入结果大于或等于第二个输入结果,则返回真。",LOGIC_COMPARE_TOOLTIP_LT:"如果第一个输入结果比第二个小,则返回真。",LOGIC_COMPARE_TOOLTIP_LTE:"如果第一个输入结果小于或等于第二个输入结果,则返回真。",LOGIC_COMPARE_TOOLTIP_NEQ:"如果两个输入结果不相等,则返回真。",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"非%1",LOGIC_NEGATE_TOOLTIP:"如果输入结果为假,则返回真;如果输入结果为真,则返回假。",LOGIC_NULL:"空",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"返回空值。",LOGIC_OPERATION_AND:"和",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"或",LOGIC_OPERATION_TOOLTIP_AND:"如果两个输入结果都为真,则返回真。",LOGIC_OPERATION_TOOLTIP_OR:"如果至少有一个输入结果为真,则返回真。",LOGIC_TERNARY_CONDITION:"测试",LOGIC_TERNARY_HELPURL:"https://zh.wikipedia.org/wiki/条件运算符",LOGIC_TERNARY_IF_FALSE:"如果为假",LOGIC_TERNARY_IF_TRUE:"如果为真",LOGIC_TERNARY_TOOLTIP:"检查“test”中的条件。如果条件为真,则返回“if true”的值,否则,则返回“if false”的值。",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://zh.wikipedia.org/wiki/算术",MATH_ARITHMETIC_TOOLTIP_ADD:"返回两个数字的和。",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"返回两个数字的商。",MATH_ARITHMETIC_TOOLTIP_MINUS:"返回两个数字的区别。",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"返回两个数字的乘积。",MATH_ARITHMETIC_TOOLTIP_POWER:"返回第一个数的第二个数次幂。",MATH_CHANGE_HELPURL:"https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95",MATH_CHANGE_TITLE:"将变量 %1 的值增加 %2",MATH_CHANGE_TOOLTIP:"将一个数添加到变量“%1”。",MATH_CONSTANT_HELPURL:"https://zh.wikipedia.org/wiki/数学常数",MATH_CONSTANT_TOOLTIP:"返回一个常见常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(无穷大)。",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"限制数字 %1 介于 (低) %2 到 (高) %3",MATH_CONSTRAIN_TOOLTIP:"限制数字介于两个指定的数字之间",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"强制转换数据类型",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"%1 ÷ %2 商的整数部分",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"可被整除",MATH_IS_EVEN:"是偶数",MATH_IS_NEGATIVE:"为负",MATH_IS_ODD:"是奇数",MATH_IS_POSITIVE:"为正",MATH_IS_PRIME:"是质数",MATH_IS_TOOLTIP:"如果数字是偶数、奇数、非负整数、正数、负数或如果它可被某数字整除,则返回真或假。",MATH_IS_WHOLE:"为整数",MATH_MODULO_HELPURL:"https://zh.wikipedia.org/wiki/模除",MATH_MODULO_TITLE:"%1 ÷ %2 的余数",MATH_MODULO_TOOLTIP:"返回这两个数字相除后的余数。",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"对数字进行位运算",MATH_NUMBER_HELPURL:"https://zh.wikipedia.org/wiki/数",MATH_NUMBER_TOOLTIP:"一个数字。",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"列表中的平均数",MATH_ONLIST_OPERATOR_MAX:"列表中的最大值",MATH_ONLIST_OPERATOR_MEDIAN:"列表中位数",MATH_ONLIST_OPERATOR_MIN:"列表中的最小值",MATH_ONLIST_OPERATOR_MODE:"列表模式",MATH_ONLIST_OPERATOR_RANDOM:"列表的随机项",MATH_ONLIST_OPERATOR_STD_DEV:"列表中的标准差",MATH_ONLIST_OPERATOR_SUM:"列表中的数的总和",MATH_ONLIST_TOOLTIP_AVERAGE:"返回列表中的数值的平均值。",MATH_ONLIST_TOOLTIP_MAX:"返回列表中最大数。",MATH_ONLIST_TOOLTIP_MEDIAN:"返回列表中的中位数。",MATH_ONLIST_TOOLTIP_MIN:"返回列表中最小数。",MATH_ONLIST_TOOLTIP_MODE:"返回列表中的最常见的项的列表。",MATH_ONLIST_TOOLTIP_RANDOM:"从列表中返回一个随机的元素。",MATH_ONLIST_TOOLTIP_STD_DEV:"返回列表的标准偏差。",MATH_ONLIST_TOOLTIP_SUM:"返回列表中的所有数字的和。",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://zh.wikipedia.org/wiki/随机数生成器",MATH_RANDOM_FLOAT_TITLE_RANDOM:"随机小数",MATH_RANDOM_FLOAT_TOOLTIP:"返回介于(包含)0.0到1.0之间的随机数。",MATH_RANDOM_INT_HELPURL:"https://zh.wikipedia.org/wiki/随机数生成器",MATH_RANDOM_INT_TITLE:"从 %1 到 %2 之间的随机整数",MATH_RANDOM_INT_TOOLTIP:"返回两个指定的范围(含)之间的随机整数。",MATH_ROUND_HELPURL:"https://zh.wikipedia.org/wiki/数值修约",MATH_ROUND_OPERATOR_ROUND:"四舍五入",MATH_ROUND_OPERATOR_ROUNDDOWN:"向下舍入",MATH_ROUND_OPERATOR_ROUNDUP:"向上舍入",MATH_ROUND_TOOLTIP:"数字向上或向下舍入。",MATH_SINGLE_HELPURL:"https://zh.wikipedia.org/wiki/平方根",MATH_SINGLE_OP_ABSOLUTE:"绝对",MATH_SINGLE_OP_ROOT:"平方根",MATH_SINGLE_TOOLTIP_ABS:"返回一个数的绝对值。",MATH_SINGLE_TOOLTIP_EXP:"返回数的e次幂。",MATH_SINGLE_TOOLTIP_LN:"返回一个数的自然对数。",MATH_SINGLE_TOOLTIP_LOG10:"返回数字的对数。",MATH_SINGLE_TOOLTIP_NEG:"返回数的逻辑非。",MATH_SINGLE_TOOLTIP_POW10:"返回数的10次幂。",MATH_SINGLE_TOOLTIP_ROOT:"返回数的平方根。",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://zh.wikipedia.org/wiki/三角函数",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"返回一个数的反余弦值。",MATH_TRIG_TOOLTIP_ASIN:"返回一个数的反正弦值。",MATH_TRIG_TOOLTIP_ATAN:"返回指定角度的反正切值。",MATH_TRIG_TOOLTIP_COS:"返回指定角度的余弦值(非弧度)。",MATH_TRIG_TOOLTIP_SIN:"返回指定角度的正弦值(非弧度)。",MATH_TRIG_TOOLTIP_TAN:"返回指定角度的正切值(非弧度)。",NEW_VARIABLE:"创建变量...",NEW_VARIABLE_TITLE:"新变量的名称:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"允许声明",PROCEDURES_BEFORE_PARAMS:"参数:",PROCEDURES_CALLNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLNORETURN_TOOLTIP:"运行用户定义的函数“%1”。",PROCEDURES_CALLRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLRETURN_TOOLTIP:"运行用户定义的函数“%1”,并使用它的输出值。",PROCEDURES_CALL_BEFORE_PARAMS:"与:",PROCEDURES_CREATE_DO:"创建“%1”",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"定义函数",PROCEDURES_DEFNORETURN_TOOLTIP:"创建一个不带输出值的函数。",PROCEDURES_DEFRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFRETURN_RETURN:"返回",PROCEDURES_DEFRETURN_TOOLTIP:"创建一个有输出值的函数。",PROCEDURES_DEF_DUPLICATE_WARNING:"警告: 此函数具有重复参数。",PROCEDURES_HIGHLIGHT_DEF:"突出显示函数定义",PROCEDURES_IFRETURN_HELPURL:"http://c2.com/cgi/wiki?GuardClause",PROCEDURES_IFRETURN_TOOLTIP:"如果值为真,则返回第二个值。",PROCEDURES_IFRETURN_WARNING:"警告: 仅在定义函数内可使用此块。",PROCEDURES_MUTATORARG_TITLE:"输入名称:",PROCEDURES_MUTATORARG_TOOLTIP:"添加函数输入。",PROCEDURES_MUTATORCONTAINER_TITLE:"输入",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"添加、删除或重新排此函数的输入。",REDO:"重做",REMOVE_COMMENT:"删除注释",RENAME_VARIABLE:"重命名变量...",RENAME_VARIABLE_TITLE:"将所有“%1”变量重命名为:",TEXT_APPEND_APPENDTEXT:"追加文本",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"",TEXT_APPEND_TOOLTIP:"将一些文本追加到变量“%1”。",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"转为小写",TEXT_CHANGECASE_OPERATOR_TITLECASE:"转为首字母大写",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"转为大写",TEXT_CHANGECASE_TOOLTIP:"使用不同的大小写复制这段文字。",TEXT_CHARAT_FIRST:"获得第一个字符",TEXT_CHARAT_FROM_END:"获得倒数第#个字符",TEXT_CHARAT_FROM_START:"获得字符#",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"从文本",TEXT_CHARAT_LAST:"获得最后一个字符",TEXT_CHARAT_RANDOM:"获取随机的字母",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"返回位于指定位置的字母。",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"将一个项添加到文本中。",TEXT_CREATE_JOIN_TITLE_JOIN:"加入",TEXT_CREATE_JOIN_TOOLTIP:"添加、移除或重新排列各节来重新配置这个文本块。",TEXT_GET_SUBSTRING_END_FROM_END:"到倒数第#个字符",TEXT_GET_SUBSTRING_END_FROM_START:"到字符#",TEXT_GET_SUBSTRING_END_LAST:"到最后一个字符",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"从文本",TEXT_GET_SUBSTRING_START_FIRST:"取得一段字串自第一个字符",TEXT_GET_SUBSTRING_START_FROM_END:"取得一段字串自倒数第#个字符",TEXT_GET_SUBSTRING_START_FROM_START:"取得一段字串自#",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"返回指定的部分文本。",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"在文本",TEXT_INDEXOF_OPERATOR_FIRST:"中查找 最先 出现",TEXT_INDEXOF_OPERATOR_LAST:"中查找 最后 出现",TEXT_INDEXOF_TAIL:"的位置",TEXT_INDEXOF_TOOLTIP:"返回在第二个字串中的第一/最后一个匹配项的索引值。如果未找到则返回%1。",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1是空的",TEXT_ISEMPTY_TOOLTIP:"如果提供的文本为空,则返回真。",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"转为文本",TEXT_JOIN_TOOLTIP:"通过串起任意数量的项以建立一段文字。",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"%1的长度",TEXT_LENGTH_TOOLTIP:"返回提供文本的字母数(包括空格)。",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"打印%1",MPYTHON_INPUT_MESSAGE0:"输入%1",TEXT_PRINT_TOOLTIP:"打印指定的文字、数字或其他值。",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"提示用户输入数字。",TEXT_PROMPT_TOOLTIP_TEXT:"提示用户输入一些文本。",TEXT_PROMPT_TYPE_NUMBER:"输入数字并显示提示消息",TEXT_PROMPT_TYPE_TEXT:"输入数字并显示提示消息",TEXT_TEXT_HELPURL:"https://zh.wikipedia.org/wiki/字符串",TEXT_TEXT_TOOLTIP:"一个字母、单词或一行文本。",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"消除两侧空格",TEXT_TRIM_OPERATOR_LEFT:"消除左侧空格",TEXT_TRIM_OPERATOR_RIGHT:"消除右侧空格",TEXT_TRIM_TOOLTIP:"复制这段文字的同时删除两端多余的空格。",TODAY:"今天",UNDO:"撤销",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"创建“设定%1”",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"返回此变量的值。",VARIABLES_SET:"将变量 %1 设定为 %2",VARIABLES_SET_CREATE_GET:"创建“获得%1”",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"设置此变量,以使它和输入值相等。",VARIABLE_ALREADY_EXISTS:"已存在名为“%1”的变量。"};vF.PROCEDURES_DEFRETURN_TITLE=vF.PROCEDURES_DEFNORETURN_TITLE,vF.CONTROLS_IF_IF_TITLE_IF=vF.CONTROLS_IF_MSG_IF,vF.CONTROLS_WHILEUNTIL_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.CONTROLS_IF_MSG_THEN=vF.CONTROLS_REPEAT_INPUT_DO,vF.TRY_EXCEPT_TRY="try",vF.CONTROLS_IF_ELSE_TITLE_ELSE=vF.CONTROLS_IF_MSG_ELSE,vF.CONTROLS_IF_ELSE_TITLE_ELSE=vF.CONTROLS_IF_MSG_ELSE,vF.PROCEDURES_DEFRETURN_PROCEDURE=vF.PROCEDURES_DEFNORETURN_PROCEDURE,vF.LISTS_GET_SUBLIST_INPUT_IN_LIST=vF.LISTS_INLIST,vF.LISTS_GET_INDEX_INPUT_IN_LIST=vF.LISTS_INLIST,vF.PROCEDURES_DEFRETURN_DO=vF.PROCEDURES_DEFNORETURN_DO,vF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=vF.CONTROLS_IF_MSG_ELSEIF,vF.LISTS_GET_INDEX_HELPURL=vF.LISTS_INDEX_OF_HELPURL,vF.CONTROLS_FOREACH_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.LISTS_SET_INDEX_INPUT_IN_LIST=vF.LISTS_INLIST,vF.CONTROLS_FOR_INPUT_DO=vF.CONTROLS_REPEAT_INPUT_DO,vF.LISTS_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.TUPLE_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.DICT_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.SET_CREATE_WITH_ITEM_TITLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_APPEND_VARIABLE=vF.VARIABLES_DEFAULT_NAME,vF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.MATH_CHANGE_TITLE_ITEM=vF.VARIABLES_DEFAULT_NAME,vF.LISTS_INDEX_OF_INPUT_IN_LIST=vF.LISTS_INLIST,vF.PROCEDURES_DEFRETURN_COMMENT=vF.PROCEDURES_DEFNORETURN_COMMENT,vF.MPYTHON_MAIN_HELPURL="",vF.MPYTHON_MAIN_TOOLTIP="",vF.MPYTHON_MAIN_MESSAGE0="主程序",vF.MPYTHON_OPEN="开启",vF.MPYTHON_CLOSE="关闭",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT="左移",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT="右移",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_UP="上移",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN="下移",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE="数字反转",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻转",vF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="线性极",vF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="对数极",vF.MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE="灰度",vF.MPYTHON_AI_SENSOR_PATTERN_COLOR="彩色",vF.MPYTHON_AI_SENSOR_ENABLE_START="开始抓取图像",vF.MPYTHON_AI_SENSOR_ENABLE_STOP="停止抓取图像",vF.MPYTHON_AI_SENSOR_LEVEL_MI_H="水平镜像",vF.MPYTHON_AI_SENSOR_LEVEL_MI_V="垂直翻转",vF.MPYTHON_AI_SENSOR_SETS_CONTRAST="对比度",vF.MPYTHON_AI_SENSOR_SETS_BRIGHTNESS="亮度",vF.MPYTHON_AI_SENSOR_SETS_SATURATION="饱和度",vF.MPYTHON_AI2_FACE_YOLO="人脸识别",vF.MPYTHON_AI2_CLASS_20_YOLO="20类识别",vF.MPYTHON_AI2_MNIST_NET="数字识别",vF.MPYTHON_AI2_PHOTOGRAPH_FACE_YOLO="人脸",vF.MPYTHON_AI2_PHOTOGRAPH_CLASS_20_YOLO="20类",vF.MPYTHON_AI_TRACE_COLOR_RECTANGLE="矩形",vF.MPYTHON_AI_TRACE_COLOR_CROSS="十字",vF.TEXT_APPEND_TEXT_HELPURL="",vF.TEXT_APPEND_TEXT_TOOLTIP="",vF.TEXT_APPEND_TEXT_MESSAGE0="%1 追加文本 %2",vF.CHINA_CITY_MESSAGE0="%1 %2",vF.CHINA_CITY_TOWN_MESSAGE0="%1 %2 %3 返回 %4",vF.CHINA_CITY_CNNAME="中文简称",vF.CHINA_CITY_PINYIN="拼音",vF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_1="简体中文",vF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_2="正體中文",vF.MPYTHON_SENIVERSE_CITY_WEATHER_HELPURL="",vF.MPYTHON_SENIVERSE_CITY_WEATHER_TOOLTIP="",vF.MPYTHON_SENIVERSE_CITY_WEATHER_MESSAGE0="[心知天气] %1 信息 %2 地理位置 %3 API私钥 %4 %5 语言 %6 %7 温度单位 %8",vF.MPYTHON_SENIVERSE_WEATHER_API_1="天气实况",vF.MPYTHON_SENIVERSE_WEATHER_API_2="3天天气预报",vF.MPYTHON_SENIVERSE_WEATHER_API_3="6项生活指数",vF.MPYTHON_SENIVERSE_WEATHER_UNIT_1="摄氏度",vF.MPYTHON_SENIVERSE_WEATHER_UNIT_2="华氏度",vF.MPYTHON_DEFINE_SENIVERSE_WEATHER_HELPURL="",vF.MPYTHON_DEFINE_SENIVERSE_WEATHER_TOOLTIP="",vF.MPYTHON_DEFINE_SENIVERSE_WEATHER_MESSAGE0="设定 %1 为 %2",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_HELPURL="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_TOOLTIP="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_MESSAGE0="%1 [心知天气] 通用字段 %2",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_HELPURL="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_TOOLTIP="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_MESSAGE0="%1 [心知天气] 天气实况 %2",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_HELPURL="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_TOOLTIP="风向角度,范围0~360\n风速,单位km/h(当unit=c时)、mph(当unit=f时)",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_MESSAGE0="%1 [心知天气] 3天天气预报 %2 的 %3",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_HELPURL="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_TOOLTIP="",vF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_MESSAGE0="%1 [心知天气] 6项生活指数 %2",vF.MPYTHON_SENIVERSE_WEATHER_city_name="城市名称",vF.MPYTHON_SENIVERSE_WEATHER_city_id="城市ID",vF.MPYTHON_SENIVERSE_WEATHER_country="国家代码",vF.MPYTHON_SENIVERSE_WEATHER_path="行政归属",vF.MPYTHON_SENIVERSE_WEATHER_timezone="时区",vF.MPYTHON_SENIVERSE_WEATHER_timezone_offset="UTC偏移量",vF.MPYTHON_SENIVERSE_WEATHER_last_update_date="数据更新日期",vF.MPYTHON_SENIVERSE_WEATHER_last_update="数据更新时间",vF.MPYTHON_SENIVERSE_WEATHER_object="原始字典对象",vF.MPYTHON_SENIVERSE_WEATHER_text="天气现象",vF.MPYTHON_SENIVERSE_WEATHER_code="天气现象代码",vF.MPYTHON_SENIVERSE_WEATHER_temperature="温度",vF.MPYTHON_SENIVERSE_WEATHER_today="今天",vF.MPYTHON_SENIVERSE_WEATHER_tomorrow="明天",vF.MPYTHON_SENIVERSE_WEATHER_the_day_after_tomorrow="后天",vF.MPYTHON_SENIVERSE_WEATHER_date="日期",vF.MPYTHON_SENIVERSE_WEATHER_text_day="白天天气现象",vF.MPYTHON_SENIVERSE_WEATHER_code_day="白天天气现象代码",vF.MPYTHON_SENIVERSE_WEATHER_text_night="晚间天气现象",vF.MPYTHON_SENIVERSE_WEATHER_code_night="晚间天气现象代码",vF.MPYTHON_SENIVERSE_WEATHER_high="当天最高温度",vF.MPYTHON_SENIVERSE_WEATHER_low="当天最低温度",vF.MPYTHON_SENIVERSE_WEATHER_wind_direction="风向",vF.MPYTHON_SENIVERSE_WEATHER_wind_direction_degree="风向角度",vF.MPYTHON_SENIVERSE_WEATHER_wind_speed="风速",vF.MPYTHON_SENIVERSE_WEATHER_wind_scale="风力等级",vF.MPYTHON_SENIVERSE_WEATHER_car_washing="洗车指数",vF.MPYTHON_SENIVERSE_WEATHER_dressing="穿衣指数",vF.MPYTHON_SENIVERSE_WEATHER_flu="感冒指数",vF.MPYTHON_SENIVERSE_WEATHER_sport="运动指数",vF.MPYTHON_SENIVERSE_WEATHER_travel="旅游指数",vF.MPYTHON_SENIVERSE_WEATHER_uv="紫外线指数",vF.MPYTHON_RED="红",vF.MPYTHON_GREEN="绿",vF.MPYTHON_BLUE="蓝",vF.MPYTHON_BLUEBIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0="I2C射频卡 读取电子钱包 数据",vF.MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP="读取块数据,长度16字节",vF.MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0="I2C射频卡 写入电子钱包 数据%1",vF.MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP="写入块数据,长度16字节",vF.MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0="I2C射频卡 给电子钱包%1 金额%2",vF.MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP="",vF.MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0="充值",vF.MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0="扣费",vF.MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0="I2C射频卡 获取电子钱包余额",vF.MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP="",vF.MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0="I2C射频卡 获取序列号",vF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP="",vF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0="I2C射频卡 初始化电子钱包",vF.MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP="",vF.MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0="I2C射频卡 扫描",vF.MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP="",vF.MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",vF.MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0="I2C超声波",vF.MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP="",vF.MPYTHON_BLUEBIT_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0="%1 被触发 引脚%2",vF.MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP="",vF.MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0="%1 模拟值 引脚%2",vF.MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP="",vF.MPYTHON_BLUEBIT_READ_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0="设置LED灯 输出%1 引脚%2",vF.MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP="",vF.MPYTHON_BLUEBIT_SET_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0="循迹传感器 检测为黑 引脚%1",vF.MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP="",vF.MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_SET_TRUE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0="打开 %1 引脚 %2",vF.MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP="",vF.MPYTHON_BLUEBIT_SET_FALSE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0="关闭 %1 引脚 %2",vF.MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP="",vF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP="",vF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0="打开录放器 %1 %2 REC %3 PLAY %4",vF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP="",vF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0="关闭录放器 %1 REC %2 PLAY %3",vF.MPYTHON_BLUEBIT_VOICE_RECORD_PLAY="播放",vF.MPYTHON_BLUEBIT_VOICE_RECORD_REC="录音",vF.MPYTHON_BLUEBIT_IR_RECEIVE="红外探测",vF.MPYTHON_BLUEBIT_SOUND="麦克风",vF.MPYTHON_BLUEBIT_LINE_FOLLOWER="循迹",vF.MPYTHON_BLUEBIT_VIBRATION="震动",vF.MPYTHON_BLUEBIT_RFID="射频卡",vF.MPYTHON_BLUEBIT_FINGERPRINT_SCANNER="指纹",vF.MPYTHON_BLUEBIT_PIR="人体感应",vF.MPYTHON_BLUEBIT_MAGNETIC="门磁开关",vF.MPYTHON_BLUEBIT_BUTTON="按键",vF.MPYTHON_BLUEBIT_RELAY="继电器",vF.MPYTHON_BLUEBIT_LIMIT_SWITCH="限位开关",vF.MPYTHON_BLUEBIT_FAN="风扇",vF.MPYTHON_BLUEBIT_LASER="激光",vF.MPYTHON_BLUEBIT_NTC_TEMP="热敏电阻",vF.MPYTHON_BLUEBIT_WATER="水位",vF.MPYTHON_BLUEBIT_SOIL_MOISTURE="土壤湿度",vF.MPYTHON_BLUEBIT_ROTATE_DIMMER="旋钮电位器",vF.MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER="直滑电位器",vF.MPYTHON_BLUEBIT_ANALOG_LIGHT="模拟光线",vF.MPYTHON_BLUEBIT_LM35_TEMP="LM35温度",vF.MPYTHON_BLUEBIT_SMOKE="烟雾",vF.MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE="正转",vF.MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE="反转",vF.MPYTHON_BLUEBIT_READ_SOIL_HELPURL="",vF.MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP="新的土壤湿度",vF.MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0="土壤湿度(新)%1",vF.MPYTHON_BLUEBIT_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP="速度:-100~100 映射至 -1023~1023",vF.MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0="打开直流电机 %1 速度 %2 引脚AIN1 %3 引脚AIN2 %4",vF.MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP="",vF.MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0="停止直流电机 %1 引脚AIN1 %2 引脚AIN2 %3",vF.MPYTHON_BLUEBIT_SET_FAN_HELPURL="",vF.MPYTHON_BLUEBIT_SET_FAN_TOOLTIP="",vF.MPYTHON_BLUEBIT_SET_FAN_MESSAGE0="拓展板 打开风扇 %1",vF.MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL="",vF.MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP="",vF.MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0="拓展板 关闭风扇 %1",vF.MPYTHON_BLUEBIT_4BUTTON_HELPURL="http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",vF.MPYTHON_BLUEBIT_4BUTTON_TOOLTIP="",vF.MPYTHON_BLUEBIT_4BUTTON_MESSAGE0="四向按键模块 引脚 %1 按键 %2 被按下",vF.BLUE="A",vF.GREEN="B",vF.RED="C",vF.YELLOW="D",vF.MPYTHON_BLUEBIT_JOYSTICK_HELPURL="",vF.MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP="",vF.MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0="摇杆 引脚A0 %1 引脚A1 %2 %3 轴的值",vF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL="",vF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP="速度:0~100",vF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0="拓展板 打开直流电机 %1 %2 速度 %3",vF.MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL="",vF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP="速度:0~100",vF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0="拓展板 关闭直流电机",vF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL="",vF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP="速度:-1023~1023",vF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0="编码电机 模式 %1 拨码 %2 M1速度 %3 M2速度 %4",vF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL="",vF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP="停止编码电机转动",vF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0="停止编码电机转动 %1",vF.MPYTHON_BLUEBIT_HUM_TEM_HELPURL="",vF.MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP="",vF.MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0="I2C %1",vF.MPYTHON_BLUEBIT_TEMPERATURE="温度",vF.MPYTHON_BLUEBIT_HUMIDITY="湿度",vF.MPYTHON_BLUEBIT_INIT_MIDI_HELPURL="",vF.MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0="初始化MIDI TX引脚 %1",vF.MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP="",vF.MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL="",vF.MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0="设MIDI音量 %1",vF.MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP="音量 0~127",vF.MIDI_PIANO="平台钢琴",vF.MIDI_BRIGHTACOUSTICPIANO="亮音钢琴",vF.MIDI_ELECTRICGRANDPIANO="电钢琴",vF.MIDI_HARPSICHORD="大键琴",vF.MIDI_CELESTA="钢片琴",vF.MIDI_GLOCKENSPIEL="钟琴",vF.MIDI_MUSICALBOX="音乐盒",vF.MIDI_MARIMBA="马林巴琴",vF.MIDI_XYLOPHONE="木琴",vF.MIDI_TUBULARBELL="管钟",vF.MIDI_DULCIMER="洋琴",vF.MIDI_VIBRAPHONE="颤音琴",vF.MIDI_ORGAN="音栓风琴",vF.MIDI_ACOUSTIC_GUITAR="木吉他",vF.MIDI_ELECTRIC_GUITAR="电吉他",vF.MIDI_ACOUSTIC_BASS="民谣贝斯",vF.MIDI_STRING_ENSEMBLE="弦乐合奏",vF.MIDI_VIOLIN="小提琴",vF.MIDI_TRUMPET="小号",vF.MIDI_SAX="萨克斯",vF.MIDI_STEEL_DRUMS="钢鼓",vF.MIDI_LEAD="合成音主旋律",vF.MIDI_PAD="合成音衬底",vF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL="",vF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0="设MIDI乐器 %1",vF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP="",vF.MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL="",vF.MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0="MIDI %1 音调 %2",vF.MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP="",vF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL="",vF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0="设点阵亮度等級 %1",vF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP="亮度等級 0~15",vF.MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL="",vF.MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0="点阵 %1",vF.MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP="",vF.MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL="",vF.MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0="设置点阵 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",vF.MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP="",vF.MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL="",vF.MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0="点阵设置生效",vF.MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP="",vF.MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0="设MP3音量 %1",vF.MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP="音量:0~30",vF.MPYTHON_BLUEBIT_MP3_INIT_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0="初始化MP3 TX引脚 %1",vF.MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP="掌控板的 tx 引脚连接音乐模块的 RXI 引脚",vF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0="MP3 音量 %1",vF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP="",vF.MPYTHON_PLUS_1="加1",vF.MPYTHON_MINUS_1="減1",vF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0="MP3 播放第 %1 首歌",vF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP="",vF.MPYTHON_BLUEBIT_MP3_CMD_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0="MP3 播放 %1",vF.MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP="",vF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL="",vF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0="MP3 单曲循环 %1",vF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP="",vF.MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL="",vF.MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0="设扩展端口 IO %2 为 %1",vF.MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP="IO: 0~7",vF.MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL="",vF.MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0="扩展端口值 IO %1",vF.MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP="",vF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL="",vF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0="设扩展端口 IO %2 为 %1",vF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP="",vF.MPYTHON_LCD_OBJECT_HELPURL="",vF.MPYTHON_LCD_OBJECT_MESSAGE0="LCD1602 初始化",vF.MPYTHON_LCD_OBJECT_TOOLTIP="",vF.MPYTHON_LCD_PRINT_HELPURL="",vF.MPYTHON_LCD_PRINT_MESSAGE0="LCD1602 显示 %1",vF.MPYTHON_LCD_PRINT_TOOLTIP="",vF.MPYTHON_LCD_HOME_HELPURL="",vF.MPYTHON_LCD_HOME_MESSAGE0="LCD1602 光标 回到原点",vF.MPYTHON_LCD_HOME_TOOLTIP="",vF.MPYTHON_LCD_CURSOR_HELPURL="",vF.MPYTHON_LCD_CURSOR_MESSAGE0="LCD1602 光标 %1",vF.MPYTHON_LCD_CURSOR_TOOLTIP="",vF.MPYTHON_LCD_SET_CURSOR_HELPURL="",vF.MPYTHON_LCD_SET_CURSOR_MESSAGE0="LCD1602 起始点 行 %2 列 %1",vF.MPYTHON_LCD_SET_CURSOR_TOOLTIP="行列从0开始计数",vF.MPYTHON_LCD_CLEAR_HELPURL="",vF.MPYTHON_LCD_CLEAR_MESSAGE0="LCD1602 清屏",vF.MPYTHON_LCD_CLEAR_TOOLTIP="",vF.MPYTHON_LCD_CURSOR_BLINK="闪烁",vF.MPYTHON_LCD_CURSOR_NO_BLINK="不闪烁",vF.MPYTHON_LEFT_TO_RIGHT="从左向右",vF.MPYTHON_RIGHT_TO_LEFT="从右向左",vF.MPYTHON_LCD_TEXT_DIRECTION_HELPURL="",vF.MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0="LCD1602 文字方向 %1",vF.MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP="",vF.MPYTHON_LCD_MOVE_HELPURL="",vF.MPYTHON_LCD_MOVE_MESSAGE0="LCD1602 向 %1 滚动一格",vF.MPYTHON_LCD_MOVE_TOOLTIP="",vF.MPYTHON_IR_TRANS_HELPURL="",vF.MPYTHON_IR_TRANS_MESSAGE0="红外发送 单字节字符串 %1 tx 引脚 %2",vF.MPYTHON_IR_TRANS_TOOLTIP="\n单字节字符串:\n'A', 'b', '1'等",vF.OUTPUT_PIN_HELPURL="",vF.OUTPUT_PIN_MESSAGE0="%1",vF.OUTPUT_PIN_TOOLTIP="",vF.INPUT_PIN_HELPURL="",vF.INPUT_PIN_MESSAGE0="%1",vF.INPUT_PIN_TOOLTIP="",vF.READ_ANALOG_PIN_HELPURL="",vF.READ_ANALOG_PIN_MESSAGE0="%1",vF.READ_ANALOG_PIN_TOOLTIP="",vF.SET_DIGITAL_HELPURL="",vF.SET_DIGITAL_MESSAGE0="%1",vF.SET_DIGITAL_TOOLTIP="",vF.SET_ANALOG_HELPURL="",vF.SET_ANALOG_MESSAGE0="%1",vF.SET_ANALOG_TOOLTIP="",vF.ALL_PIN_HELPURL="",vF.ALL_PIN_MESSAGE0="%1",vF.ALL_PIN_TOOLTIP="",vF.PWM_PIN_HELPURL="",vF.PWM_PIN_MESSAGE0="%1",vF.PWM_PIN_TOOLTIP="",vF.DH11_HUM_TEM_PIN_HELPURL="",vF.DH11_HUM_TEM_PIN_MESSAGE0="%1",vF.DH11_HUM_TEM_PIN_TOOLTIP="",vF.UART_TX_PIN_HELPURL="",vF.UART_TX_PIN_MESSAGE0="%1",vF.UART_TX_PIN_TOOLTIP="",vF.UART_RX_PIN_HELPURL="",vF.UART_RX_PIN_MESSAGE0="%1",vF.UART_RX_PIN_TOOLTIP="",vF.I2C_PIN_HELPURL="",vF.I2C_PIN_MESSAGE0="%1",vF.I2C_PIN_TOOLTIP="",vF.MQTT_COMMON_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",vF.MQTT_COMMON_SETUP_MESSAGE0="MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",vF.MQTT_COMMON_SETUP_TOOLTIP="",vF.MQTT_TENCENT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",vF.MQTT_TENCENT_SETUP_MESSAGE0="MQTT 腾讯物联网 %1 服务器 %2 Port %3 AppId %4 Device %5 -- 传出参数 -- %6 ReportTopic %7 ControlTopic %8",vF.MQTT_TENCENT_SETUP_TOOLTIP="",vF.MQTT_TENCENT_SETUPS_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",vF.MQTT_TENCENT_SETUPS_MESSAGE0="MQTT 腾讯物联网 %1 服务器 %2 Port %3 AppId %4 Device %5 -- 传出参数 -- %6 ReportTopic %7 ControlTopic %8",vF.MQTT_TENCENT_SETUPS_TOOLTIP="",vF.MQTT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_SETUP_MESSAGE0="MQTT-Easy IoT %1 服务器 %2 Client ID %5 Iot_id %3 Iot_pwd %4",vF.MQTT_SETUP_TOOLTIP="",vF.MQTT_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_CONNECT_MESSAGE0="连接 MQTT",vF.MQTT_CONNECT_TOOLTIP="",vF.MQTT_PUBLISH_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_PUBLISH_MESSAGE0="发布 %1 至 主题 %2",vF.MQTT_PUBLISH_TOOLTIP="",vF.MQTT_REC_FROM_TOPIC_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_REC_FROM_TOPIC_MESSAGE0="当从主题 %1 接收到 %2 时",vF.MQTT_REC_FROM_TOPIC_TOOLTIP="",vF.MQTT_RECEIVE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_RECEIVE_MESSAGE0="当从主题 %1 接收到 %2 时",vF.MQTT_RECEIVE_TOOLTIP='参数"主题"只接受变量',vF.MQTT_RECEIVED_MESSAGE0="当从主题 %1 接收到消息 时",vF.MQTT_MESSAGE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_MESSAGE_MESSAGE0="从 MQTT 收到的消息",vF.MQTT_MESSAGE_TOOLTIP="",vF.MQTT_WAIT_MSG_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_WAIT_MSG_MESSAGE0="等待主题消息 以 %1 模式",vF.MQTT_WAIT_MSG_TOOLTIP="建议放在'一直重复'中运行",vF.MQTT_DISCONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",vF.MQTT_DISCONNECT_MESSAGE0="MQTT 断开连接",vF.MQTT_DISCONNECT_TOOLTIP="",vF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",vF.MQTT_LAST_WILL_MESSAGE0="设置 MQTT 主题 %2 离线消息 %1",vF.MQTT_LAST_WILL_TOOLTIP="设置 MQTT last will 消息。应该在 connect() 之前调用。",vF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",vF.MQTT_LAST_WILL_MESSAGE0="设置 MQTT 主题 %2 离线消息 %1",vF.MQTT_LAST_WILL_TOOLTIP="设置 MQTT last will 消息。应该在 connect() 之前调用。",vF.MPYTHON_SIOT_CONNECT_HELPURL="",vF.MPYTHON_SIOT_CONNECT_TOOLTIP="",vF.MPYTHON_SIOT_CONNECT_MESSAGE0="创建 SIoT 连接 %1 客户端ID %2 服务器 %3 用户 %4 密码 %5",vF.MPYTHON_SIOT_ISCONNECTED_HELPURL="",vF.MPYTHON_SIOT_ISCONNECTED_TOOLTIP="",vF.MPYTHON_SIOT_ISCONNECTED_MESSAGE0="SIoT 连接成功 ?",vF.MPYTHON_SIOT_SUBSCRIBE_HELPURL="",vF.MPYTHON_SIOT_SUBSCRIBE_TOOLTIP="",vF.MPYTHON_SIOT_SUBSCRIBE_MESSAGE0="SIoT 订阅主题",vF.MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE="点击左边星号 订阅 SIoT 主题",vF.MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH="SIoT 订阅 主题1",vF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE="主题",vF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP="",vF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD="最多订阅 5 个主题",vF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP="",vF.MPYTHON_SIOT_DISCONNECT_HELPURL="",vF.MPYTHON_SIOT_DISCONNECT_TOOLTIP="",vF.MPYTHON_SIOT_DISCONNECT_MESSAGE0="SIoT 断开连接",vF.MPYTHON_SIOT_MESSAGE_HELPURL="",vF.MPYTHON_SIOT_MESSAGE_TOOLTIP="",vF.MPYTHON_SIOT_MESSAGE_MESSAGE0="从 SIoT 收到的消息",vF.MPYTHON_SIOT_TOPIC1="主题1",vF.MPYTHON_SIOT_TOPIC2="主题2",vF.MPYTHON_SIOT_TOPIC3="主题3",vF.MPYTHON_SIOT_TOPIC4="主题4",vF.MPYTHON_SIOT_TOPIC5="主题5",vF.MPYTHON_SIOT_PUBLISH_HELPURL="",vF.MPYTHON_SIOT_PUBLISH_TOOLTIP="",vF.MPYTHON_SIOT_PUBLISH_MESSAGE0="SIoT 发送消息 %1 到 %2",vF.MPYTHON_SIOT_PUBLISH_TO_MESSAGE0="SIoT 发送消息 %1 到 主题 %2",vF.MPYTHON_SIOT_RECEIVE_HELPURL="",vF.MPYTHON_SIOT_RECEIVE_TOOLTIP="",vF.MPYTHON_SIOT_RECEIVE_MESSAGE0="当从 SIoT %1 收到消息时 %2 执行 %3",vF.MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0="当从 SIoT 主题 %1 收到消息时 %2 执行 %3",vF.MPYTHON_IR_RECV_HELPURL="",vF.MPYTHON_IR_RECV_MESSAGE0="红外接收 整型 rx 引脚 %1",vF.MPYTHON_IR_RECV_TOOLTIP="第一次接收总为空",vF.MPYTHON_BLUEBIT_OLED_PRINT_HELPURL="",vF.MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0="bluebit OLED 显示 %1 x %2 y %3",vF.MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP="",vF.MPYTHON_BLUEBIT_OLED_INIT_HELPURL="",vF.MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0="bluebit OLED 初始化 tx %1 rx %2",vF.MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP="",vF.MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL="",vF.MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0="bluebit OLED 清空",vF.MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP="",vF.MPYTHON_BLUEBIT_OLED_BMP_HELPURL="",vF.MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0="bluebit OLED 显示图像 x %1 y %2 宽 %3 高 %4 16进制图像数据 %5",vF.MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP="",vF.mpython_bme280_hum_tem_pre_MESSAGE0="%1",vF.mpython_bme280_hum_tem_pre_TOOLTIP="气压单位Pa, 温度单位摄氏度, 环境湿度单位%",vF.mpythonbox_sound_MESSAGE0="声音值",vF.mpythonbox_sound_TOOLTIP="采样数据,为0~4095。",vF.mpythonbox_sound_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",vF.MPYTHONBOX_SLIDER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",vF.MPYTHONBOX_SLIDER_MESSAGE0="滑杆",vF.MPYTHONBOX_SLIDER_TOOLTIP="返回滑杆电阻采样值。范围0~4095。",vF.MPYTHONBOX_5BUTTON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",vF.MPYTHONBOX_5BUTTON_MESSAGE0="五向按键%1",vF.MPYTHONBOX_5BUTTON_TOOLTIP="",vF.MPYTHONBOX_MOTOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",vF.MPYTHONBOX_MOTOR_MESSAGE0="马达 速度%1",vF.MPYTHONBOX_MOTOR_TOOLTIP="马达速度,范围±100。正值表示正转,负值则反。",vF.MPYTHONBOX_ULTRASONIC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",vF.MPYTHONBOX_ULTRASONIC_MESSAGE0="超声波",vF.MPYTHONBOX_ULTRASONIC_TOOLTIP="超声波测距,获取超声波传感器测距值,单位cm。范围3~340CM",vF.MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",vF.MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0="人体红外",vF.MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP="返回人体红外触发值。当为1时,表示已触发;当为0时,表示未触发。",vF.MPYTHONBOX_RGB_pixel_HELPURL="",vF.MPYTHONBOX_RGB_pixel_MESSAGE0="设定第 %1列 %2行 R%3 G%4 B%5",vF.MPYTHONBOX_RGB_pixel_TOOLTIP="设定第多少列,行的RGB顏色",vF.MPYTHONBOX_RGB_get_pixel_HELPURL="",vF.MPYTHONBOX_RGB_get_pixel_MESSAGE0="返回 第%1列 %2行 RGB颜色",vF.MPYTHONBOX_RGB_get_pixel_TOOLTIP="返回第多少列,行位置的RGB颜色",vF.MPYTHONBOX_RGB_ImageText_HELPURL="",vF.MPYTHONBOX_RGB_ImageText_MESSAGE0="滚动显示文本%1 速度%2",vF.MPYTHONBOX_RGB_ImageText_TOOLTIP="滚动显示文本,亮度为0不亮,9最亮",vF.MPYTHONBOX_RGB_SetImage_HELPURL="",vF.MPYTHONBOX_RGB_SetImage_TOOLTIP="",vF.MPYTHONBOX_RGB_SetImage_MESSAGE0="创建图像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",vF.MPYTHONBOX_RGB_Image_HELPURL="",vF.MPYTHONBOX_RGB_Image_MESSAGE0="显示图像%1",vF.MPYTHONBOX_RGB_Image_TOOLTIP="显示图像",vF.MPYTHONBOX_RGB_SetImage_HELPURL="",vF.MPYTHONBOX_RGB_SetImage_MESSAGE0="创建图像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",vF.MPYTHONBOX_RGB_SetImage_TOOLTIP="创建新图像,每行每位数代表第几位灯,默认红色;亮度为0不亮,9最亮。",vF.MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0="显示图像/文本 %1",vF.MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP="显示图像或文本消息。",vF.MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL="",vF.MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0="显示图像 %1",vF.MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP="显示图像。",vF.MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL="",vF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0="复制图像 %1",vF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP="复制图像。",vF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL="",vF.MPYTHONBOX_RGB_ImageCot_HELPURL="",vF.MPYTHONBOX_RGB_ImageCot_MESSAGE0="切剪图像%1 列%2 行%3 宽%4 高%5",vF.MPYTHONBOX_RGB_ImageCot_TOOLTIP="切剪图像",vF.MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0="内置图像 %1",vF.MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP="选择一个内置的图像。",vF.MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL="",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0="平移图像 %1 %2 %3 位",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP="向特定方向移动图像,并返回移动后的结果。",vF.MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL="",vF.MPYTHONBOX_RGB_clear_HELPURL="",vF.MPYTHONBOX_RGB_clear_MESSAGE0="关闭所有 RGB 灯",vF.MPYTHONBOX_RGB_clear_TOOLTIP="",vF.MPYTHONBOX_RGB_pixel_return_HELPURL="",vF.MPYTHONBOX_RGB_pixel_return_MESSAGE0="返回第 %1列 %2行 颜色",vF.MPYTHONBOX_RGB_pixel_return_TOOLTIP="返回第多少列,行的RGB顏色",vF.MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",vF.MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0="%1轴加速度",vF.MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP="单位g,范围-2~+2g。",vF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",vF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0="%1轴角速度",vF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP="范围±500°/秒",vF.MPYTHONBOX_EULER_ANGLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",vF.MPYTHONBOX_EULER_ANGLE_MESSAGE0="%1欧拉角",vF.MPYTHONBOX_EULER_ANGLE_TOOLTIP="返回当前欧拉角(Pitch,Roll,Yaw),单位角度",vF.MPYTHONBOX_QUATERNION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",vF.MPYTHONBOX_QUATERNION_MESSAGE0="%1四元数",vF.MPYTHONBOX_QUATERNION_TOOLTIP="返回当前四元数(w,x,y,z)",vF.MPYTHONBOX_CAMERA_LED_HELPURL="",vF.MPYTHONBOX_CAMERA_LED_MESSAGE0="摄像灯%1",vF.MPYTHONBOX_CAMERA_LED_TOOLTIP="led灯,分为打开和关闭两种状态",vF.LIST_FIRST_INDEX_HELPURL="",vF.LIST_FIRST_INDEX_MESSAGE0="项 %1 在列表 %2 %3 出现的位置",vF.LIST_FIRST_INDEX_TOOLTIP="",vF.MPYTHON_AI_LCD_INIT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",vF.MPYTHON_AI_LCD_INIT_MESSAGE0="屏幕 初始化 ",vF.MPYTHON_AI_LCD_INIT_TOOLTIP="初始化 屏幕显示",vF.MPYTHON_AI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",vF.MPYTHON_AI_SENSOR_RESET_MESSAGE0="摄像头 初始化",vF.MPYTHON_AI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",vF.MPYTHON_AI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",vF.MPYTHON_AI_SENSOR_ENABLE_MESSAGE0="摄像头%1",vF.MPYTHON_AI_SENSOR_ENABLE_TOOLTIP="获取图像",vF.MPYTHON_AI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",vF.MPYTHON_AI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",vF.MPYTHON_AI_LCD_TEXT_TOOLTIP="仅支持字母和数字",vF.MPYTHON_AI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",vF.MPYTHON_AI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",vF.MPYTHON_AI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",vF.MPYTHON_AI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",vF.MPYTHON_AI_SENSOR_RETURN_MESSAGE0="测 摄像头 获取%1",vF.MPYTHON_AI_SENSOR_RETURN_TOOLTIP="(AI)摄像头返回参数(宽高,图像帧的格式,图像帧的大小)",vF.MPYTHON_AI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",vF.MPYTHON_AI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",vF.MPYTHON_AI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",vF.MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",vF.MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",vF.MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",vF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",vF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0="摄像头 白平衡%1",vF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP="设置摄像自动白平衡模式,默认打开。True为打开, False为关闭自动白平衡。若您想追踪颜色,则需关闭白平衡。",vF.MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",vF.MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 %1 %2",vF.MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",vF.MPYTHON_AI_LCD_DISPLAY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",vF.MPYTHON_AI_LCD_DISPLAY_MESSAGE0="屏幕 显示生效",vF.MPYTHON_AI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示",vF.MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",vF.MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0="图像 显示生效 x%1 y%2 宽%3 高%4",vF.MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP="可以在液晶屏上显示一张图片",vF.MPYTHON_AI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",vF.MPYTHON_AI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",vF.MPYTHON_AI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",vF.MPYTHON_AI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",vF.MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP="",vF.MPYTHON_AI_LCD_SHOW_REC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",vF.MPYTHON_AI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",vF.MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",vF.MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",vF.MPYTHON_AI_LCD_SHOW_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0="屏幕 显示清空",vF.MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",vF.MPYTHON_AI_LCD_CLEAR_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",vF.MPYTHON_AI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",vF.MPYTHON_AI_LCD_return_colour_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",vF.MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",vF.MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_TEXT_MOST_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",vF.MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",vF.MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",vF.MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",vF.MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",vF.MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",vF.MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",vF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL=".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",vF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",vF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="图像转换为%1",vF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="黑白翻转是将二进制图像0(黑色)变为1(白色),1(白色)变为0(黑色),非常快速地翻转二进制图像中的所有像素值。",vF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",vF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0="图像 从笛卡尔坐标到%1 坐标重新投影 反向%2",vF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP="",vF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",vF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0="图像 膨胀 级别%1",vF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP="膨胀就是对图像高亮部分进行“领域扩张”,效果图拥有比原图更大的高亮区域。",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0="图像 中点滤波 级别%1 滤波%2",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP="控制图像混合的最小/最大程度。0只适用于最小滤波,1仅用于最大滤波。",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0="图像 众数滤波 级别%1",vF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP="在图像上运行众数滤波,用相邻像素的模式替换每个像素。",vF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",vF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0="图像 模糊滤波 级别%1",vF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP="使用盒式滤波器的标准均值模糊滤波。",vF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",vF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0="图像 卡通化 级别%1 起始像素差异%2 相邻像素差异%3",vF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP="使图像卡通化",vF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",vF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0="图像 3D旋转 上下旋转%1 左右旋转%2 度数%3 左右移动%4 上下移动%5 缩放%6",vF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP="通过执行帧缓冲区的3D旋转来纠正图像中的透视问题。",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",vF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",vF.MPYTHON_AI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_FACE_TRACKING_MESSAGE0="(实验箱)选择训练模型 人脸",vF.MPYTHON_AI2_FACE_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",vF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0="(实验箱)调用摄像头进行 人脸识别",vF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",vF.MPYTHON_AI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_MESSAGE0="(实验箱)获取识别后人脸的 所有参数",vF.MPYTHON_AI2_RESULT_FACE_TOOLTIP="获取识别后人脸的 所有参数",vF.MPYTHON_AI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_X_MESSAGE0="(实验箱)获取识别后人脸的 x坐标",vF.MPYTHON_AI2_RESULT_FACE_X_TOOLTIP="获取识别后人脸的 x坐标",vF.MPYTHON_AI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0="(实验箱)获取识别后人脸的 y坐标",vF.MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP="获取识别后人脸的 y坐标",vF.MPYTHON_AI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_W_MESSAGE0="(实验箱)获取识别后人脸的 宽度",vF.MPYTHON_AI2_RESULT_FACE_W_TOOLTIP="获取识别后人脸的 宽度",vF.MPYTHON_AI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_H_MESSAGE0="(实验箱)获取识别后人脸的 高度",vF.MPYTHON_AI2_RESULT_FACE_H_TOOLTIP="获取识别后人脸的 高度",vF.MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0="(实验箱)获取识别后人脸的 置信度",vF.MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP="获取识别后人脸的 置信度",vF.MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0="(实验箱)获取识别后人脸的 数量",vF.MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP="获取识别后人脸的 数量",vF.MPYTHON_AI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_20class_TRACKING_MESSAGE0="(实验箱)选择训练模型 20类",vF.MPYTHON_AI2_20class_TRACKING_TOOLTIP="可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",vF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(实验箱)调用摄像头进行 20类识别",vF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP="调用摄像头进行 20类识别",vF.MPYTHON_AI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_MESSAGE0="(实验箱)获取识别后20类的 所有参数",vF.MPYTHON_AI2_RESULT_20CLASS_TOOLTIP="获取识别后20类的 所有参数",vF.MPYTHON_AI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0="(实验箱)获取识别后20类的 x坐标",vF.MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP="获取识别后20类的 x坐标",vF.MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0="(实验箱)获取识别后20类的 y坐标",vF.MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP="获取识别后20类的 y坐标",vF.MPYTHON_AI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0="(实验箱)获取识别后20类的 宽度",vF.MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP="获取识别后20类的 宽度",vF.MPYTHON_AI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0="(实验箱)获取识别后20类的 高度",vF.MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP="获取识别后20类的 高度",vF.MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0="(实验箱)获取识别后20类的 置信度",vF.MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP="获取识别后20类的 置信度",vF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(实验箱)获取识别后20类的 数量",vF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP="获取识别后20类的 数量",vF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0="(实验箱)获取识别后20类的 类型",vF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP="获取识别后20类的 类型可以放入获取识别的参数,可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",vF.MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0="(实验箱)获取识别后20类的 类型数量",vF.MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP="获取识别后20类的 类型数量",vF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="(实验箱)选择训练模型 手写数字",vF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="选择训练模型 手写数字识别",vF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0="(实验箱)调用摄像头进行 手写数字识别",vF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP="调用摄像头进行 手写数字识别",vF.MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0="(实验箱)获取识别后手写数字的 所有参数",vF.MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP="手写数字识别参数",vF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0="(实验箱)获取识别后手写数字的 数字",vF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP="手写数字识别 数字",vF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(实验箱)获取识别后手写数字的 置信度",vF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP="手写数字 识别数字 置信度",vF.MPYTHON_AI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",vF.MPYTHON_AI_TRACE_COLOR_MESSAGE0="(实验箱)追踪色块 LAB颜色%1 边界框小于%2 像素小于%3 过滤",vF.MPYTHON_AI_TRACE_COLOR_TOOLTIP="追踪色块",vF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",vF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(实验箱)追踪颜色 显示%1",vF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",vF.MPYTHON_AI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_ALL_MESSAGE0="(实验箱)%1获取识别后色块的 所有参数",vF.MPYTHON_AI_BLOB_ALL_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_X_MESSAGE0="(实验箱)%1获取识别后色块的 x坐标",vF.MPYTHON_AI_BLOB_X_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_Y_MESSAGE0="(实验箱)%1获取识别后色块的 y坐标",vF.MPYTHON_AI_BLOB_Y_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_W_MESSAGE0="(实验箱)%1获取识别后色块的 宽度",vF.MPYTHON_AI_BLOB_W_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_H_MESSAGE0="(实验箱)%1获取识别后色块的 高度",vF.MPYTHON_AI_BLOB_H_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_NUMBER_MESSAGE0="(实验箱)%1获取识别后色块的 数量",vF.MPYTHON_AI_BLOB_NUMBER_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_CENTER_X_MESSAGE0="(实验箱)%1获取识别后色块的 中心x坐标",vF.MPYTHON_AI_BLOB_CENTER_X_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0="(实验箱)%1获取识别后色块的 中心y坐标",vF.MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0="(实验箱)%1获取识别后色块的 矩形",vF.MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",vF.MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0="屏幕 x%1 y%2 显示颜色 R%3 G%4 B%5",vF.MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP="屏幕显示颜色",vF.MPYTHON_AI_LCD_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",vF.MPYTHON_AI_LCD_COLOUR_MESSAGE0="屏幕 初始化 显示颜色 R%1 G%2 B%3",vF.MPYTHON_AI_LCD_COLOUR_TOOLTIP="屏幕显示颜色",vF.MPYTHON_AI_SENSOR_PATTERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",vF.MPYTHON_AI_SENSOR_PATTERN_MESSAGE0="摄像头 初始化 像素模式 %1",vF.MPYTHON_AI_SENSOR_PATTERN_TOOLTIP="用于设置摄像头像素模式,有黑白和rgb彩色",vF.MPYTHON_DRILL_WEIGHT_MESSAGE0="初始化 训练 %1",vF.MPYTHON_DRILL_WEIGHT_TOOLTIP="",vF.MPYTHON_DRILL_WEIGHT_HELPURL="",vF.MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL="",vF.MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0="实例化 线性回归直线",vF.MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP="",vF.MPYTHON_DRILL_TITLE_HELPURL="",vF.MPYTHON_DRILL_TITLE_MESSAGE0="标题%1 字号%2",vF.MPYTHON_DRILL_TITLE_TOOLTIP="",vF.MPYTHON_DRILL_LABEL_HELPURL="",vF.MPYTHON_DRILL_LABEL_MESSAGE0="标签%1 标题%2 字号%3",vF.MPYTHON_DRILL_LABEL_TOOLTIP="",vF.MPYTHON_DRILL_DRILL_REALITY_HELPURL="",vF.MPYTHON_DRILL_DRILL_REALITY_MESSAGE0="真实数据 符号标记%1 颜色为r%2 g%3 b%4 标题%5",vF.MPYTHON_DRILL_DRILL_REALITY_TOOLTIP="",vF.MPYTHON_DRILL_PREDICTED_REALITY_HELPURL="",vF.MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0="预测线性回归直线 符号标记%1 颜色为r%2 g%3 b%4 标题%5",vF.MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP="",vF.MPYTHON_DRILL_LEGEND_HELPURL="",vF.MPYTHON_DRILL_LEGEND_MESSAGE0="展示图例",vF.MPYTHON_DRILL_LEGEND_TOOLTIP="",vF.MPYTHON_DRILL_SHOW_HELPURL="",vF.MPYTHON_DRILL_SHOW_MESSAGE0="显示图片",vF.MPYTHON_DRILL_SHOW_TOOLTIP="",vF.MPYTHON_DRILL_DRILL_PRINT_HELPURL="",vF.MPYTHON_DRILL_DRILL_PRINT_MESSAGE0="输入测试数值%1",vF.MPYTHON_DRILL_DRILL_PRINT_TOOLTIP="",vF.MPYTHON_DRILL_DRILL_full_line="实线",vF.MPYTHON_DRILL_DRILL_dash_line="破折线",vF.MPYTHON_DRILL_DRILL_chain_line="点划线",vF.MPYTHON_DRILL_DRILL_imaginary_line="虚线",vF.MPYTHON_DRILL_DRILL_dot="点",vF.MPYTHON_DRILL_DRILL_pixel="像素",vF.MPYTHON_DRILL_DRILL_solid_rim="实心圈",vF.MPYTHON_DRILL_DRILL_down_triangle="下三角",vF.MPYTHON_DRILL_DRILL_up_triangle="上三角",vF.MPYTHON_DRILL_DRILL_right_triangle="右三角",vF.MPYTHON_DRILL_DRILL_left_triangle="左三角",vF.MPYTHON_DRILL_DRILL_down_flower_triangle="下花三角",vF.MPYTHON_DRILL_DRILL_up_flower_triangle="上花三角",vF.MPYTHON_DRILL_DRILL_right_flower_triangle="右花三角",vF.MPYTHON_DRILL_DRILL_left_flower_triangle="左花三角",vF.MPYTHON_DRILL_DRILL_solid_square="实心方形",vF.MPYTHON_DRILL_DRILL_solid_pentagon="实心五角",vF.MPYTHON_DRILL_DRILL_star="星形",vF.MPYTHON_DRILL_DRILL_vertical_hexagon="竖六边形",vF.MPYTHON_DRILL_DRILL_across_hexagon="横六边形",vF.MPYTHON_DRILL_DRILL_cross="十字",vF.MPYTHON_DRILL_DRILL_X="X",vF.MPYTHON_DRILL_DRILL_rhombus="菱形",vF.MPYTHON_DRILL_DRILL_thin_rhombus="瘦菱形",vF.MPYTHON_DRILL_DRILL_vertical_line="垂直线",vF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0="初始化 鸢尾花数据集",vF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP="采用Python的Sklearn机器学习库中自带的数据集——鸢尾花数据集。简单分析数据集之间特征的关系图,根据花瓣长度、花瓣宽度、花萼长度、花萼宽度四个特征进行绘图Iris plants 数据集可以从KEEL dataset数据集网站获取,也可以直接从Sklearn.datasets机器学习包得到。数据集共包含4个特征变量、1个类别变量,共有150个样本。类别变量分别对应鸢尾花的三个亚属,分别是山鸢尾 (Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica) 分别用[0,1,2]来做映射",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0="鸢尾花 主成分分析",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0="鸢尾花 因子分析 3D",vF.MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0="鸢尾花 因子分析",vF.MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0="预测图示 鸢尾花类型%1 呈现内容 x%3 y%4 呈现种类%2 颜色为 r%5 g%6 b%7 标题%8 向上合并%9",vF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0="预测图示 呈现内容 x%1 y%2 呈现种类%3 颜色为 r%4 g%5 b%6 标题%7",vF.MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0="3D 预测图示 呈现内容 x朝向%1 y朝向%2 z朝向%3 颜色为 r%4 g%5 b%6 标题%7",vF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0="标题%1 字号%2",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0="标签%1 标题%2 字号%3",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0="3D 标题%1 字号%2",vF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0="3D 标签%1 标题%2 字号%3",vF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0="展示图例",vF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0="显示图片",vF.MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP="",vF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL="",vF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0="花萼和花瓣的x,y坐标",vF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP="共150条记录,分别代表50条山鸢尾 (Iris-setosa)、变色鸢尾(Iris-versicolor)、维吉尼亚鸢尾(Iris-virginica)",vF.MPYTHONS_FLOWER_DE_LUCE_Iris_setosa="山鸢尾",vF.MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor="变色鸢尾",vF.MPYTHONS_FLOWER_DE_LUCE_Iris_virginica="维吉尼亚鸢尾",vF.MPYTHONS_FLOWER_DE_LUCE_scatter_diagram="散点图",vF.MPYTHONS_FLOWER_DE_LUCE_kde_diagram="kde图",vF.MPYTHONS_FLOWER_DE_LUCE_box_diagram="箱图",vF.MPYTHONS_FLOWER_DE_LUCE_merge="合并",vF.MPYTHONS_FLOWER_DE_LUCE_not_merge="不合并",vF.MPYTHONS_FLOWER_DE_LUCE_calyx_length="花萼长度",vF.MPYTHONS_FLOWER_DE_LUCE_calyx_width="花萼宽度",vF.MPYTHONS_FLOWER_DE_LUCE_petal_length="花瓣长度",vF.MPYTHONS_FLOWER_DE_LUCE_petal_width="花瓣宽度",vF.MPYTHONS_CONVERT_PICTURE_HELPURL="",vF.MPYTHONS_CONVERT_PICTURE_MESSAGE0="将图片转换为28²二值图%1 待处理的图片存储路径%2 处理后的图片存储路径%3 格式%4",vF.MPYTHONS_CONVERT_PICTURE_TOOLTIP="掌控板通过串口把WIF传给语音助手",vF.MPYTHONS_NUMBER_REPERTOIRE_HELPURL="",vF.MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0="查找解析 手写数字数据 存储路径%1",vF.MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP="使用手写数字字符库",vF.MPYTHONS_SHOW_NUMBER_PATH_HELPURL="",vF.MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0="手写数字图像 存储路径%1",vF.MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP="手写数字图像的路径",vF.MPYTHONS_SHOW_NUMBER_HELPURL="",vF.MPYTHONS_SHOW_NUMBER_MESSAGE0="显示手写数字图像",vF.MPYTHONS_SHOW_NUMBER_TOOLTIP="显示手写数字图像",vF.MPYTHONS_NUMBER_RECOGNITION_HELPURL="",vF.MPYTHONS_NUMBER_RECOGNITION_MESSAGE0="识别手写数字图像 存储路径%1",vF.MPYTHONS_NUMBER_RECOGNITION_TOOLTIP="识别手写数字图像的路径",vF.MPYTHONS_NUMBER_PLACEHOLDER_HELPURL="",vF.MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0="创建变量%1 初始化 神经网络张量 变量名%2",vF.MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP="",vF.MPYTHON_DRILL_RESHAPE_MESSAGE0="创建变量%1 将输入照片变量 %2 转换为 神经网络输出张量%3",vF.MPYTHON_DRILL_RESHAPE_TOOLTIP="",vF.MPYTHON_DRILL_RESHAPE_HELPURL="",vF.MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0="创建变量%1 共享变量名%2 初始化模式%3",vF.MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP="",vF.MPYTHON_NUMBER_CONV_WEIGHT_HELPURL="",vF.MPYTHON_NUMBER_INITIALIZER_MESSAGE0="产生截断正态分布随机数 输出张量%1 标准差%2",vF.MPYTHON_NUMBER_INITIALIZER_TOOLTIP="",vF.MPYTHON_NUMBER_INITIALIZER_HELPURL="",vF.MPYTHON_NUMBER_CONSTANT_MESSAGE0="创建常量 数值%1 输出张量%2",vF.MPYTHON_NUMBER_CONSTANT_TOOLTIP="",vF.MPYTHON_NUMBER_CONSTANT_HELPURL="",vF.MPYTHON_NUMBER_CONV2D_MESSAGE0="神经网络输出张量%1 共享变量%2 步长%3 填充%4",vF.MPYTHON_NUMBER_CONV2D_TOOLTIP="",vF.MPYTHON_NUMBER_CONV2D_HELPURL="",vF.MPYTHON_NUMBER_CONV_BIASES_MESSAGE0="张量%1",vF.MPYTHON_NUMBER_CONV_BIASES_TOOLTIP="",vF.MPYTHON_NUMBER_CONV_BIASES_HELPURL="",vF.MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0="卷积二维层 变量%1 %2",vF.MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP="",vF.MPYTHON_NUMBER_CONV_CONV2D_HELPURL="",vF.MPYTHON_NUMBER_RELU_MESSAGE0="创建变量%1 Relu正向激励函数 卷积二维层%2",vF.MPYTHON_NUMBER_RELU_TOOLTIP="",vF.MPYTHON_NUMBER_RELU_HELPURL="",vF.MPYTHON_NUMBER_MAX_POOL_MESSAGE0="池化二维层 变量%1 卷积层%2 池化窗口%3 步长%4 填充%5",vF.MPYTHON_NUMBER_MAX_POOL_TOOLTIP="",vF.MPYTHON_NUMBER_MAX_POOL_HELPURL="",vF.MPYTHON_NUMBER_MATMUL_MESSAGE0="两个参数的对应元素各自相乘 x%1 y%2",vF.MPYTHON_NUMBER_MATMUL_TOOLTIP="",vF.MPYTHON_NUMBER_MATMUL_HELPURL="",vF.MPYTHON_NUMBER_ADD_MESSAGE0="全连接层 变量%1 两个参数的元素相加 x%2 y%3",vF.MPYTHON_NUMBER_ADD_TOOLTIP="",vF.MPYTHON_NUMBER_ADD_HELPURL="",vF.MPYTHON_NUMBER_SOFTMAX_MESSAGE0="创建变量%1 预测模型准确度 变量名%2",vF.MPYTHON_NUMBER_SOFTMAX_TOOLTIP="",vF.MPYTHON_NUMBER_SOFTMAX_HELPURL="",vF.MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0="创建变量%1 损失函数%2",vF.MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP="",vF.MPYTHON_NUMBER_REDUCE_MEAN_HELPURL="",vF.MPYTHON_NUMBER_LOG_MESSAGE0="自然对数 %1",vF.MPYTHON_NUMBER_LOG_TOOLTIP="",vF.MPYTHON_NUMBER_LOG_HELPURL="",vF.MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0="压缩求和%1 维度%2",vF.MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP="因为log函数是单调递增的,所以logP(Y|X)也会达到最大值,因此在前面加上负号之后,最大化P(Y|X)就等价于最小化L了。",vF.MPYTHON_NUMBER_REDUCE_SUM_HELPURL="https://www.cnblogs.com/guoyaohua/p/9217206.html",vF.MPYTHON_NUMBER_TRAIN_MESSAGE0="优化学习速率 %1",vF.MPYTHON_NUMBER_TRAIN_TOOLTIP="",vF.MPYTHON_NUMBER_TRAIN_HELPURL="",vF.MPYTHON_NUMBER_MINIMIZE_MESSAGE0="创建变量%1 优化张量%2",vF.MPYTHON_NUMBER_MINIMIZE_TOOLTIP="",vF.MPYTHON_NUMBER_MINIMIZE_HELPURL="",vF.MPYTHON_NUMBER_INIT_MESSAGE0="初始化模型 完成",vF.MPYTHON_NUMBER_INIT_TOOLTIP="",vF.MPYTHON_NUMBER_INIT_HELPURL="",vF.MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0="选择 手写数字集%1 数量%2",vF.MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP="",vF.MPYTHON_NUMBER_TRAIN_TEST_HELPURL="",vF.MPYTHON_NUMBER_SESSION_RUN_MESSAGE0="启动数据流图会话进行计算 会话%1 图片%2 标签%3",vF.MPYTHON_NUMBER_SESSION_RUN_TOOLTIP="",vF.MPYTHON_NUMBER_SESSION_RUN_HELPURL="",vF.MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0="启动数据流图会话进行计算 会话%1 图片%2 标签%3",vF.MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP="",vF.MPYTHON_NUMBER_SESSION_RUN2_HELPURL="",vF.MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0="预测模型%1 拟合度%2 会话%3",vF.MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP="",vF.MPYTHON_NUMBER_SESSION_RUN3_HELPURL="",vF.MPYTHON_NUMBER_EQUAL_MESSAGE0="两个张量的每一维是否相等 x%1 y%2",vF.MPYTHON_NUMBER_EQUAL_TOOLTIP="",vF.MPYTHON_NUMBER_EQUAL_HELPURL="",vF.MPYTHON_NUMBER_ARGMAX_MESSAGE0="张量 %1 按%2比较返回最大值的索引",vF.MPYTHON_NUMBER_ARGMAX_TOOLTIP="",vF.MPYTHON_NUMBER_ARGMAX_HELPURL="",vF.MPYTHON_NUMBER_CAST_MESSAGE0="转为浮点型 %1",vF.MPYTHON_NUMBER_CAST_TOOLTIP="",vF.MPYTHON_NUMBER_CAST_HELPURL="",vF.MPYTHONS_NUMBER_SAVER_SAVE_HELPURL="",vF.MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0="手写数字识别模型 变量名%1 存储路径%2",vF.MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP="MNIST手写数字识别模型保存路径",vF.MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL="",vF.MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0="加载模型 %1 存储路径%2",vF.MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP="加载模型",vF.MPYTHONS_NUMBER_SAME="包含边界",vF.MPYTHONS_NUMBER_VALID="不包含边界",vF.MPYTHONS_NUMBER_train="训练",vF.MPYTHONS_NUMBER_test="测试",vF.MPYTHONS_NUMBER_row="行",vF.MPYTHONS_NUMBER_rank="列",vF.MPYTHONS_NUMBERNEW_INITIALIZE_HELPURL="",vF.MPYTHONS_NUMBERNEW_INITIALIZE_MESSAGE0="初始化 张量 载入mnist数据集",vF.MPYTHONS_NUMBERNEW_INITIALIZE_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_HELPURL="",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_MESSAGE0="卷积 一 层",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_ONE_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_POOLING_ONE_HELPURL="",vF.MPYTHONS_NUMBERNEW_POOLING_ONE_MESSAGE0="池化 一 层",vF.MPYTHONS_NUMBERNEW_POOLING_ONE_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_HELPURL="",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_MESSAGE0="卷积 二 层",vF.MPYTHONS_NUMBERNEW_CONVOLUTIONAL_TWO_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_POOLING_TWO_HELPURL="",vF.MPYTHONS_NUMBERNEW_POOLING_TWO_MESSAGE0="池化 二 层",vF.MPYTHONS_NUMBERNEW_POOLING_TWO_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_CONNECT_ONE_HELPURL="",vF.MPYTHONS_NUMBERNEW_CONNECT_ONE_MESSAGE0="全连接 一 层",vF.MPYTHONS_NUMBERNEW_CONNECT_ONE_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_CONNECT_TWO_HELPURL="",vF.MPYTHONS_NUMBERNEW_CONNECT_TWO_MESSAGE0="全连接 二 层",vF.MPYTHONS_NUMBERNEW_CONNECT_TWO_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_LOSS_HELPURL="",vF.MPYTHONS_NUMBERNEW_LOSS_MESSAGE0="配置Adam优化器 学习速率为%1",vF.MPYTHONS_NUMBERNEW_LOSS_TOOLTIP="学习速率为0.001~0.000001之间",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_HELPURL="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_MESSAGE0="初始化 tensorflow模型%1 训练模型%2 步数%3",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_TOOLTIP="步数不能小于10",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_HELPURL="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_MESSAGE0="模型训练准确率",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_STATE_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_HELPURL="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_MESSAGE0="预测 训练正确率",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_TRAIN_TOOLTIP="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_HELPURL="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_MESSAGE0="预测 手写数字%1",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_NUMBER_TOOLTIP="仅支持28*28像素的黑白图片",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_HELPURL="",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_MESSAGE0="显示图片%1",vF.MPYTHONS_NUMBERNEW_TENSORFLOW_IMAGE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0="调用摄像头 %1",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP="调用笔记本内置摄像头,所以参数为0,如果有其他的摄像头可以调整参数为1,2",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0="关闭摄像头",vF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0="删除所有窗口",vF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",vF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0="从摄像头读取图片",vF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP="ret如果有读取图片就True,否则false;第二个参数是frame,是当前截取一帧的图片。",vF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0="转为灰度图片",vF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0="检测人脸 每次图像尺寸减小比例%1",vF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP="",vF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL="",vF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0="人脸区域显示矩形框 颜色为 红%1 绿%2 蓝%3",vF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0="保存图像 位置%1 ID%2 编号%3",vF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0="窗口中显示图像 文件名%1",vF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL="",vF.MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0="通过esc键 退出",vF.MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP="在窗口置顶时使用才有效果",vF.MPYTHONS_FACE_RECOGNITIONR_HELPURL="",vF.MPYTHONS_FACE_RECOGNITIONR_MESSAGE0="获得人脸在图像中的坐标值 人脸%1",vF.MPYTHONS_FACE_RECOGNITIONR_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0="是否有读取图片",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0="是否打开摄像头",vF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0="获取照片及id 照片存储路径%1",vF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0="初始化训练模型",vF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP="初始化训练模型",vF.MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0="开始训练模型",vF.MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0="%1训练模型 存储路径%2",vF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0="人脸模型训练 数目",vF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_FONT_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0="窗口显示 识别的名字%1 设置字体为%2 颜色为 红%3 绿%4 蓝%5",vF.MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0="窗口显示 识别的置信度%1 设置字体为%2 颜色为 红%3 绿%4 蓝%5",vF.MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL="",vF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0="预测人脸 名字%1 置信度%2",vF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP="",vF.MPYTHONS_FACE_RECOGNITION_FORECAST_Write="写入",vF.MPYTHONS_FACE_RECOGNITION_FORECAST_Read="读取",vF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL="",vF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0="初始化 聊天机器人",vF.MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP="",vF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL="",vF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0="选择训练器 聊天机器人",vF.MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP="",vF.MPYTHONS_DIALOGUE_ROBOT_START_HELPURL="",vF.MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0="选择与%1 聊天",vF.MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP="",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL="",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP="",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0="自定义 语料库 %1[%2]",vF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL="",vF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0="输入对话 获得响应 %1",vF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP="",vF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0="识别响应",vF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP="",vF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL="",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL="",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0="选择跟 %1 聊天",vF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP="",vF.Jenny="珍妮",vF.Jack="杰克",vF.Tom="汤姆",vF.MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL="",vF.MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0="选择 %1 %2 模式%3 %4 喂养%5",vF.MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP="",vF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL="",vF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0="查阅训练库 选择%1",vF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP="",vF.MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL="",vF.MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0="生成随机数 %1",vF.MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP="",vF.MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL="",vF.MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0="显示窗口",vF.MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP="",vF.MPYTHON_AGESTURE_IMSHOW_HELPURL="",vF.MPYTHON_AGESTURE_IMSHOW_MESSAGE0="处理图像 %1",vF.MPYTHON_AGESTURE_IMSHOW_TOOLTIP="",vF.MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL="",vF.MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0="选择训练库 knn模型",vF.MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP="",vF.MPYTHON_AGESTURE_LOAD_MODEL_HELPURL="",vF.MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0="载入knn模型 存储路径%1",vF.MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP="",vF.MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL="",vF.MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0="%1打开图片 存储路径%2 图片名%3",vF.MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP="",vF.MPYTHON_AGESTURE_ARRAY_MESSAGE0="选择%1 构建特征数据%2",vF.MPYTHON_AGESTURE_ARRAY_TOOLTIP="",vF.MPYTHON_AGESTURE_ARRAY_HELPURL="",vF.MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0="打乱排序%1 ",vF.MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP="",vF.MPYTHON_GESTURE_RANDOM_RANK_HELPURL="",vF.MPYTHON_GESTURE_READ_LEND_MESSAGE0=" %1 图片特征",vF.MPYTHON_GESTURE_READ_LEND_TOOLTIP="",vF.MPYTHON_GESTURE_READ_LEND_HELPURL="",vF.MPYTHON_GESTURE_START_SRAIN_HELPURL="",vF.MPYTHON_GESTURE_START_SRAIN_MESSAGE0="开始训练 手势识别 期望%1 目标%2",vF.MPYTHON_GESTURE_START_SRAIN_TOOLTIP="",vF.MPYTHON_GESTURE_SCORE_HELPURL="",vF.MPYTHON_GESTURE_SCORE_MESSAGE0="进行评分 期望%1 目标%2",vF.MPYTHON_GESTURE_SCORE_TOOLTIP="",vF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL="",vF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",vF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 数组降维 图片总数%2",vF.MPYTHON_GESTURE_FORECAST_HELPURL="",vF.MPYTHON_GESTURE_FORECAST_TOOLTIP="",vF.MPYTHON_GESTURE_FORECAST_MESSAGE0="预测结果%1",vF.MPYTHON_AGESTURE_SAVE_MODEL_HELPURL="",vF.MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0="保存模型 存储路径%1",vF.MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP="",vF.MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL="",vF.MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0="%1图片 预测图片 ",vF.MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP="",vF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL="",vF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",vF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 彩色图像降维",vF.MPYTHON_AGESTURENEW_INITIALIZE_HELPURL="",vF.MPYTHON_AGESTURENEW_INITIALIZE_MESSAGE0="初始化 KNN",vF.MPYTHON_AGESTURENEW_INITIALIZE_TOOLTIP="",vF.MPYTHON_AGESTURENEW_SHOOT_HELPURL="",vF.MPYTHON_AGESTURENEW_SHOOT_MESSAGE0="拍摄 进行手势检测",vF.MPYTHON_AGESTURENEW_SHOOT_TOOLTIP="",vF.MPYTHON_AGESTURENEW_SHOOT_GRAY_HELPURL="",vF.MPYTHON_AGESTURENEW_SHOOT_GRAY_MESSAGE0="拍摄 训练集",vF.MPYTHON_AGESTURENEW_SHOOT_GRAY_TOOLTIP="",vF.MPYTHON_AGESTURENEW_GRAY_HELPURL="",vF.MPYTHON_AGESTURENEW_GRAY_MESSAGE0="图像处理",vF.MPYTHON_AGESTURENEW_GRAY_TOOLTIP="",vF.MPYTHON_AGESTURENEW_TRAIN_HELPURL="",vF.MPYTHON_AGESTURENEW_TRAIN_MESSAGE0="开始分类训练",vF.MPYTHON_AGESTURENEW_TRAIN_TOOLTIP="",vF.MPYTHON_AGESTURENEW_START_FORECAST_HELPURL="",vF.MPYTHON_AGESTURENEW_START_FORECAST_MESSAGE0="开始预测",vF.MPYTHON_AGESTURENEW_START_FORECAST_TOOLTIP="",vF.MPYTHON_AGESTURENEW_FORECAST_RESULT_HELPURL="",vF.MPYTHON_AGESTURENEW_FORECAST_RESULT_MESSAGE0="预测结果",vF.MPYTHON_AGESTURENEW_FORECAST_RESULT_TOOLTIP="",vF.MPYTHON_AGESTURENEW_SHOW_WINDOW_HELPURL="",vF.MPYTHON_AGESTURENEW_SHOW_WINDOW_MESSAGE0="显示图片";vF.MPYTHON_AGESTURENEW_SHOW_WINDOW_TOOLTIP="",vF.MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL="",vF.MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0="选择人脸库 图片存储路径%1",vF.MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP="",vF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",vF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",vF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0="第%1位人脸性别结果 置信度",vF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0="第%1位人脸情绪结果 置信度",vF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL="",vF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0="第%1位人脸性别 结果",vF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL="",vF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0="第%1位人脸情绪 结果",vF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP="",vF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL="",vF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0="选择人脸库 %1",vF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0="第%1位情绪为 %2",vF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0="第%1位性别为 %2",vF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0="人脸数量",vF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0="表情数量",vF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL="",vF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0="人脸实时检测 %1",vF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP="Esc退出拍摄",vF.MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL="",vF.MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0="显示图片",vF.MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP="",vF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL="",vF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0="选择人脸库%1",vF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP="",vF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_HELPURL="",vF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_MESSAGE0="拍照 进行人脸检测 %1",vF.MPYTHONS_FACEAI_FACE_SHOOT_RESULT_TOOLTIP="按S建拍摄,Esc退出拍摄",vF.MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL="",vF.MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0="初始化 文章聚类",vF.MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_TITLE_HELPURL="文章数量不超过100",vF.MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0="标题 第%1文章",vF.MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_CONTENT_HELPURL="文章数量不超过100",vF.MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0="内容 第%1文章",vF.MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_JIEBA_HELPURL="文章数量不超过100",vF.MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0="文章内容转为列表 第%1文章",vF.MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL="",vF.MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0="读取停词表 排序前%1",vF.MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP="返回的是100篇文章里的符号",vF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL="",vF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0="删除后的新闻",vF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL="",vF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0="构造词云所用的数据",vF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL="",vF.MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0="读取词汇表 排序前%1",vF.MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP="返回的是100篇文章里的文本",vF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL="",vF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0="文章聚类训练结果 保存为图片",vF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP="",vF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL="",vF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0="显示图片",vF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP="",vF.FIRST="第一次",vF.LAST="最后一次",vF.MPYTHON_USOCKET_BLOCK="阻塞",vF.MPYTHON_USOCKET_UNBLOCK="非阻塞",vF.MPYTHON_USOCKET_SETSOCKOPT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket",vF.MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0="设置socket %1 地址 %2 类型 %3",vF.MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP="设置给定套接字选项的值。所需的符号常量在套接字模块中定义(SO_ *等)。该值可以是整数或表示缓冲区的类字节对象。",vF.MPYTHON_USOCKET_READLINE_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.accept",vF.MPYTHON_USOCKET_READLINE_MESSAGE0="socket %1 接收一行数据,遇换行符结束并返回接收数据的对象",vF.MPYTHON_USOCKET_READLINE_TOOLTIP=" 接收一行数据,遇换行符结束,并返回接收数据的对象",vF.MPYTHON_USOCKET_SETBLOCKING_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.setblocking",vF.MPYTHON_USOCKET_SETBLOCKING_MESSAGE0="设 socket %1 为 %2 模式",vF.MPYTHON_USOCKET_SETBLOCKING_TOOLTIP="",vF.MPYTHON_USOCKET_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.read",vF.MPYTHON_USOCKET_READ_MESSAGE0="从socket %1 读取 %2 字节并返回字节对象",vF.MPYTHON_USOCKET_READ_TOOLTIP="若未给定读取数量 ,则按照类似 socket.readall() 的模式运行",vF.MPYTHON_ESC_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.setblocking",vF.MPYTHON_ESC_MESSAGE0="设 socket %1 为 %2 模式",vF.MPYTHON_ESC_TOOLTIP="",vF.MPYTHON_USOCKET_SETTIMEOUT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.settimeout",vF.MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0="socket %1 设超时时间 %2 秒",vF.MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP="",vF.MPYTHON_USOCKET_SENDALL_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",vF.MPYTHON_USOCKET_SENDALL_MESSAGE0="socket %1 连续发送 %2 并返回发送的字节数",vF.MPYTHON_USOCKET_SENDALL_TOOLTIP="将所有数据发送到套接字。套接字必须连接到远程套接字。与 send() 此不同,此方法将尝试通过连续发送数据块来发送所有数据。",vF.MPYTHON_USOCKET_SENDS_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",vF.MPYTHON_USOCKET_SENDS_MESSAGE0="socket %1 发送 %2 并返回发送的字节数",vF.MPYTHON_USOCKET_SENDS_TOOLTIP='将数据发送到套接字。套接字必须连接到远程套接字。返回发送的字节数,可能小于数据长度 ("short write")。',vF.MPYTHON_USOCKET_SEND_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.send",vF.MPYTHON_USOCKET_SEND_MESSAGE0="socket %1 发送 %2 并返回发送的字节数",vF.MPYTHON_USOCKET_SEND_TOOLTIP="Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",vF.MPYTHON_USOCKET_SENDTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.sendto",vF.MPYTHON_USOCKET_SENDTO_MESSAGE0="socket %1 发送 %2 到地址 %3",vF.MPYTHON_USOCKET_SENDTO_TOOLTIP="Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",vF.MPYTHON_USOCKET_RECV_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.recv",vF.MPYTHON_USOCKET_RECV_MESSAGE0="socket %1 接收并返回接收到的数据对象 最大数据量为 %2",vF.MPYTHON_USOCKET_RECV_TOOLTIP="",vF.MPYTHON_TEXT_ESC_HELPURL="",vF.MPYTHON_TEXT_ESC_MESSAGE0="文本转义字符 %1",vF.MPYTHON_TEXT_ESC_TOOLTIP="文本转义字符",vF.MPYTHON_USOCKET_RECVFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.recvfrom",vF.MPYTHON_USOCKET_RECVFROM_MESSAGE0="socket %1 接收并返回接收到的数据元组 最大数据量为 %2",vF.MPYTHON_USOCKET_RECVFROM_TOOLTIP="元组格式 (bytes, address)",vF.MPYTHON_USOCKET_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.connect",vF.MPYTHON_USOCKET_CONNECT_MESSAGE0="socket %1 连接 host %2 端口 %3",vF.MPYTHON_USOCKET_CONNECT_TOOLTIP="",vF.MPYTHON_USOCKET_GETADDRINFO_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.getaddrinfo",vF.MPYTHON_USOCKET_GETADDRINFO_MESSAGE0="解析 host %1 端口 %2 并返回 ip",vF.MPYTHON_USOCKET_GETADDRINFO_TOOLTIP="需联网",vF.MPYTHON_USOCKET_ACCEPT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.accept",vF.MPYTHON_USOCKET_ACCEPT_MESSAGE0="socket %1 接收连接请求并返回socket元组",vF.MPYTHON_USOCKET_ACCEPT_TOOLTIP="接收连接请求。socket需要指定地址并监听连接。返回值是 (conn, address)。\nconn:新的socket对象,可以用来收发消息\naddress:连接到服务器的客户端地址",vF.MPYTHON_USOCKET_LISTEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.listen",vF.MPYTHON_USOCKET_LISTEN_MESSAGE0="监听socket %1 backlog个数 %2",vF.MPYTHON_USOCKET_LISTEN_TOOLTIP="backlog :接受套接字的最大个数,至少为0,如果没有指定,则默认一个合理值。",vF.MPYTHON_USOCKET_BIND_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.bind",vF.MPYTHON_USOCKET_BIND_MESSAGE0="socket %1 绑定地址 %2 端口 %3",vF.MPYTHON_USOCKET_BIND_TOOLTIP="",vF.MPYTHON_USOCKET_CLOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket.close",vF.MPYTHON_USOCKET_CLOSE_MESSAGE0="socket %1 关闭",vF.MPYTHON_USOCKET_CLOSE_TOOLTIP="",vF.MPYTHON_USOCKET_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/pythonStd/usocket.html#usocket.socket",vF.MPYTHON_USOCKET_INIT_MESSAGE0="创建 socket %1 地址 %2 类型 %3",vF.MPYTHON_USOCKET_INIT_TOOLTIP="AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP流\nSOCK_DGRAM:=2 — UDP数据报\nSOCK_RAW :=3 — 原始套接字\nSO_REUSEADDR : =4 — socket可重用\n",vF.MPYTHON_GET_POST_HELPURL="",vF.MPYTHON_GET_POST_MESSAGE0="%1 请求网址 %2 提交字段 %3",vF.MPYTHON_GET_POST_TOOLTIP="",vF.MPYTHON_UREQUESTS_GET_POST_HELPURL="",vF.MPYTHON_UREQUESTS_GET_POST_TOOLTIP="",vF.MPYTHON_UREQUESTS_GET_POST_MESSAGE0="%1 请求网址 %2 提交字段 %3",vF.MPYTHON_UREQUESTS_POST_FILE_HELPURL="",vF.MPYTHON_UREQUESTS_POST_FILE_TOOLTIP="",vF.MPYTHON_UREQUESTS_POST_FILE_MESSAGE0="Post 提交文件 %1 请求网址 %2 文件路径 %3 Mime类型 %4 附加字段 %5",vF.MPYTHON_RESPONSE_HELPURL="",vF.MPYTHON_RESPONSE_MESSAGE0="响应内容 形式 %1",vF.MPYTHON_RESPONSE_TOOLTIP="",vF.STRING="字符串",vF._BYTE="二进制",vF.BYTES="字节",vF.TEXT="文本",vF.MPYTHON_RESPONSE_ATTRIBUTE_HELPURL="",vF.MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0="响应属性 %1",vF.MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP="",vF.MPYTHON_SETS_PIN_MODE_HELPURL="https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",vF.MPYTHON_SETS_PIN_MODE_TOOLTIP="右键帮助,查看引脚声明",vF.MPYTHON_SETS_PIN_MODE_MESSAGE0="设置引脚 %1 为 %2 模式 %3 并设置值为 %4",vF.MPYTHON_SET_PIN_IN="输入",vF.MPYTHON_SET_PIN_PUSH_PULL_OUT="推挽输出",vF.MPYTHON_SET_PIN_LEAKY_OUT="开漏输出",vF.MPYTHON_SET_PIN_NO_PULL="无上下拉",vF.MPYTHON_SET_PIN_DOWN_PULL="下拉",vF.MPYTHON_SET_PIN_UP_PULL="上拉",vF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL="",vF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0="线程锁对象 %1 请求锁",vF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP="",vF.MPYTHON_START_NEW_THREAD_HELPURL="",vF.MPYTHON_START_NEW_THREAD_MESSAGE0="子线程 %1",vF.MPYTHON_START_NEW_THREAD_TOOLTIP="",vF.MPYTHON_UART_INIT_HELPURL="",vF.MPYTHON_UART_INIT_MESSAGE0="串口 %4 初始化 波特率 %1 tx %2 rx %3",vF.MPYTHON_UART_INIT_TOOLTIP="掌控板支持3组串口。0用于REPL,剩下1、2两组串口可用。所有引脚均可以作为串口的输入RX,除 P2、P3 、P4 、P10 只能作为输入,其余所有的引脚理论上都可以作为输出TX。",vF.MPYTHON_UART_DEINIT_HELPURL="",vF.MPYTHON_UART_DEINIT_MESSAGE0="关闭串口 %1",vF.MPYTHON_UART_DEINIT_TOOLTIP="关闭 UART 总线",vF.MPYTHON_UART_WRITE_STR_HELPURL="",vF.MPYTHON_UART_WRITE_STR_MESSAGE0="串口 %1 写入文本 %2 %3",vF.MPYTHON_UART_WRITE_STR_TOOLTIP="将文本写入总线。\n返回值:写入或 None 超时的字节数。",vF.MPYTHON_UART_WRITE_HEX_HELPURL="",vF.MPYTHON_UART_WRITE_HEX_MESSAGE0="串口 %1 发送16进制字符串 %2 %3",vF.MPYTHON_UART_WRITE_HEX_TOOLTIP="",vF.MPYTHON_UART_HAS_DATA_HELPURL="",vF.MPYTHON_UART_HAS_DATA_MESSAGE0="串口 %1 有可读数据",vF.MPYTHON_UART_HAS_DATA_TOOLTIP="返回一个整数,计算可以无阻塞地读取的字符数。\n如果没有可用字符,它将返回0,如果有字符,则返回正数。\n即使有多个可读的字符,该方法也可以返回1。",vF.MPYTHON_UART_READLINE_HELPURL="",vF.MPYTHON_UART_READLINE_MESSAGE0="串口 %1 读取一行数据",vF.MPYTHON_UART_READLINE_TOOLTIP="读一行,以换行符结尾。\n返回值:读取行或 None 超时。",vF.MPYTHON_UART_READ_HELPURL="",vF.MPYTHON_UART_READ_MESSAGE0="串口 %1 读取数据",vF.MPYTHON_UART_READ_TOOLTIP="读取尽可能多的串口数据\n返回值:包含读入字节的字节列表。若读取超时则返回 None。",vF.MPYTHON_UART_READ_LENGTH_HELPURL="",vF.MPYTHON_UART_READ_LENGTH_MESSAGE0="串口 %1 读取数据 长度 %2",vF.MPYTHON_UART_READ_LENGTH_TOOLTIP="读取指定长度字节数据\n返回值:包含读入字节的字节列表。若读取超时则返回 None。",vF.MPYTHON_UART_WRITE_BYTE_HELPURL="",vF.MPYTHON_UART_WRITE_BYTE_MESSAGE0="串口 %1 写入单字节 %2",vF.MPYTHON_UART_WRITE_BYTE_TOOLTIP="参数取值为 0~255 整数\n将字节写入总线。\n返回值:写入或 None 超时的字节数。",vF.MPYTHON_UART_WRITE_BYTES_HELPURL="",vF.MPYTHON_UART_WRITE_BYTES_MESSAGE0="串口 %1 写入字节数组 %2",vF.MPYTHON_UART_WRITE_BYTES_TOOLTIP="将字节数组写入总线。\n返回值:写入或 None 超时的字节数。",vF.MPYTHON_BAUDRATE_HELPURL="",vF.MPYTHON_BAUDRATE_MESSAGE0="%1",vF.MPYTHON_BAUDRATE_TOOLTIP="",vF.MPYTHON_HIGH_LOW_HELPURL="",vF.MPYTHON_HIGH_LOW_MESSAGE0="%1",vF.MPYTHON_HIGH_LOW_TOOLTIP="",vF.MPYTHON_TEN_CONVERT_TO_HELPURL="",vF.MPYTHON_TEN_CONVERT_TO_MESSAGE0="10进制整数 %1 转化为 %2 字符串",vF.MPYTHON_TEN_CONVERT_TO_TOOLTIP="",vF.MPYTHON_BIN="二进制",vF.MPYTHON_OCT="八进制",vF.MPYTHON_HEX="十六进制",vF.MPYTHON_CONVERT_TO_TEN_HELPURL="",vF.MPYTHON_CONVERT_TO_TEN_MESSAGE0="%1 字符串 %2 转 10进制整数",vF.MPYTHON_CONVERT_TO_TEN_TOOLTIP="",vF.MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL="",vF.MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0="10进制整数 %2 转 %1 字节",vF.MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP="",vF.MPYTHON_INT_TO_CHR_HELPURL="",vF.MPYTHON_INT_TO_CHR_MESSAGE0="整型 %1 转 ASCII 单字符",vF.MPYTHON_INT_TO_CHR_TOOLTIP="ASCII:基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",vF.MPYTHON_CHR_TO_INT_HELPURL="",vF.MPYTHON_CHR_TO_INT_MESSAGE0="ASCII 单字符 %1 转 整型",vF.MPYTHON_CHR_TO_INT_TOOLTIP="ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",vF.MPYTHON_STR_TO_HEX_HELPURL="",vF.MPYTHON_STR_TO_HEX_MESSAGE0="字符串 %1 转 十六进制 字节",vF.MPYTHON_STR_TO_HEX_TOOLTIP="返回结果中用空格分隔两个十六进制数",vF.MPYTHON_HEX_TO_BIN_STR_HELPURL="",vF.MPYTHON_HEX_TO_BIN_STR_MESSAGE0="十六进制字符串 %1 转 二进制 字节",vF.MPYTHON_HEX_TO_BIN_STR_TOOLTIP="",vF.MPYTHON_DATA_TO_BASE64_HELPURL="",vF.MPYTHON_DATA_TO_BASE64_MESSAGE0="%1 以 base64 格式编码 返回字节对象",vF.MPYTHON_DATA_TO_BASE64_TOOLTIP="Base64编码是从二进制到字符的过程",vF.MPYTHON_BASE64_TO_DATA_HELPURL="",vF.MPYTHON_BASE64_TO_DATA_MESSAGE0="解码 base64 数据 %1 返回字节对象",vF.MPYTHON_BASE64_TO_DATA_TOOLTIP="Base64编码是从二进制到字符的过程",vF.MPYTHON_UJSON_DUMPS_HELPURL="",vF.MPYTHON_UJSON_DUMPS_MESSAGE0="%1 转 json 字符串",vF.MPYTHON_UJSON_DUMPS_TOOLTIP="JSON 格式的 key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 none)",vF.MPYTHON_UJSON_LOADS_HELPURL="",vF.MPYTHON_UJSON_LOADS_MESSAGE0="解析 json 字符串 %1 返回对象",vF.MPYTHON_UJSON_LOADS_TOOLTIP="JSON 格式的 key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 none)",vF.MPYTHON_CUSTOM_CODE_HELPURL="",vF.MPYTHON_CUSTOM_CODE_TOOLTIP="",vF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定义代码 %2 %3",vF.MPYTHON_CUSTOM_TYPE_IMPORT="置顶",vF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",vF.MPYTHON_CUSTOM_VALUE_MESSAGE0="自定义返回值 %1",vF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL="",vF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0="自定义终端部件 Terminal 虚拟管脚 V %1",vF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP="",vF.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL="",vF.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0="同步虚拟管脚的状态 V %1",vF.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP="",vF.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL="",vF.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0="当 Blynk 断开连接时",vF.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP="",vF.MPYTHON_BLYNK_ON_CONNECTED_HELPURL="",vF.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0="当 Blynk 连接时",vF.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP="",vF.MPYTHON_BLYNKTIMER_RUN_HELPURL="",vF.MPYTHON_BLYNKTIMER_RUN_MESSAGE0="运行 Blynk 定时器进程",vF.MPYTHON_BLYNKTIMER_RUN_TOOLTIP="建议放在 '一直重复' 中循环执行",vF.MPYTHON_BLYNK_GET_TIMERS_HELPURL="",vF.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0="可用的 Blynk 定时器",vF.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP="",vF.MPYTHON_BLYNK_STOP_TIMERS_HELPURL="",vF.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0="停止 Blynk 定时器 %1",vF.MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP='注意:\n定时器序号为自动获取,自上而下,从0开始且连续,不可"定时器0,定时器2",此处暴露序号参数为方便查看!\n参数:\nno_timers_err=False-如果所有计时器都停止,禁用异常触发',vF.MPYTHON_UART_INPUT_HELPURL="",vF.MPYTHON_UART_INPUT_MESSAGE0="从串口获取文本 提示语句 %1",vF.MPYTHON_UART_INPUT_TOOLTIP="",vF.MPYTHON_BLYNK_SET_PROPERTY_HELPURL="",vF.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0="给虚拟管脚添加 属性 %1 值 %2",vF.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP="放于 read 或 write 事件中,虚拟管脚由事件决定,与该管脚绑定的组件会拥有添加的属性",vF.MPYTHON_BLYNK_EMAIL_HELPURL="",vF.MPYTHON_BLYNK_EMAIL_MESSAGE0="向预设邮箱发邮件 %1 主题 %2 正文 %3",vF.MPYTHON_BLYNK_EMAIL_TOOLTIP="",vF.MPYTHON_BLYNK_RUN_HELPURL="",vF.MPYTHON_BLYNK_RUN_MESSAGE0="运行 Blynk 进程",vF.MPYTHON_BLYNK_RUN_TOOLTIP="建议放在 '一直重复' 中循环执行",vF.MPYTHON_BLYNK_APP_NOTIFY_HELPURL="",vF.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0="Blynk APP 显示通知 %1",vF.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP="",vF.MPYTHON_BLYNKTIMER_HELPURL="",vF.MPYTHON_BLYNKTIMER_MESSAGE0="Blynk 定时器 %1 %2 周期 %3 秒",vF.MPYTHON_BLYNKTIMER_TOOLTIP='注意:\n定时器序号为自动获取,自上而下,从0开始且连续,不可"定时器0,定时器2",此处暴露序号参数为方便查看!\n参数:\nno_timers_err=False-如果所有计时器都停止,禁用异常触发',vF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL="",vF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0="发送数据 %1 到 Blynk APP 的 虚拟管脚 V %2",vF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP="虚拟管脚:V0 ~ V255",vF.MPYTHON_BLYNK_SETUP_HELPURL="",vF.MPYTHON_BLYNK_SETUP_MESSAGE0="Blynk 设置 %1 服务器 %2 端口 %3 授权码 %4",vF.MPYTHON_BLYNK_SETUP_TOOLTIP="服务器可填 blynk-cloud.com(官网) 或者 blynk.mpython.cn(国内)\n默认端口为 8080\n注意:手机APP访问端口为 9443",vF.MPYTHON_BLYNK_APP_DATA_HELPURL="",vF.MPYTHON_BLYNK_APP_DATA_MESSAGE0="当 从 Blynk APP 收到 虚拟管脚 V %1 的值 %2",vF.MPYTHON_BLYNK_APP_DATA_TOOLTIP="虚拟管脚:V0 ~ V255",vF.MPYTHON_BLYNK_RECEIVED_MESSAGE0="当 收到 Blynk 虚拟管脚 V %1 的值",vF.MPYTHON_BLYNK_VALUE_MESSAGE0="从 Blynk 收到的值",vF.MPYTHON_BLYNK_VALUE_TOOLTIP="",vF.MPYTHON_BLYNK_VALUE_HELPURL="",vF.MPYTHON_ONENET_DISCONNECT_MESSAGE0="OneNET 断开连接",vF.MPYTHON_ONENET_DISCONNECT_TOOLTIP="",vF.MPYTHON_ONENET_DISCONNECT_HELPURL="",vF.MPYTHON_ONENET_MSG_MESSAGE0="从 OneNET 收到的消息",vF.MPYTHON_ONENET_MSG_TOOLTIP="",vF.MPYTHON_ONENET_MSG_HELPURL="",vF.MPYTHON_ONENET_RECV_MESSAGE0="当 从 OneNET 收到消息 %1 时",vF.MPYTHON3_ONENET_RECV_MESSAGE0="当 从 OneNET 收到消息 时",vF.MPYTHON_ONENET_RECV_TOOLTIP="",vF.MPYTHON_ONENET_RECV_HELPURL="",vF.MPYTHON_ONENET_RECV_MSG_MESSAGE0="当 从 OneNET 收到特定消息 %1 时",vF.MPYTHON_ONENET_RECV_MSG_TOOLTIP="",vF.MPYTHON_ONENET_RECV_MSG_HELPURL="",vF.MPYTHON_ONENET_PUB_VALUE_MESSAGE0="向 OneNET 发送数据流 名称 %1 值 %2",vF.MPYTHON_ONENET_PUB_VALUE_TOOLTIP="",vF.MPYTHON_ONENET_PUB_VALUE_HELPURL="",vF.MPYTHON_ONENET_PUB_DICT_MESSAGE0="向 OneNET 发送数据流 %1",vF.MPYTHON_ONENET_PUB_DICT_TOOLTIP="",vF.MPYTHON_ONENET_PUB_DICT_HELPURL="",vF.MPYTHON_ONENET_PUB_VALUE2_MESSAGE0="向 小程序 发送数据流 名称 %1 值 %2",vF.MPYTHON_ONENET_PUB_VALUE2_TOOLTIP="",vF.MPYTHON_ONENET_PUB_VALUE2_HELPURL="",vF.INT_TO_CHR_HELPURL="",vF.INT_TO_CHR_MESSAGE0="整数 %1 转 ASCII 单字符",vF.INT_TO_CHR_TOOLTIP="",vF.MPYTHON_ONENET_ACCEPT_MESSAGE="收到消息",vF.MPYTHON_ONENET="OneNET 设置",vF.MPYTHON_ONENET_WECHAT_APP="小程序 设置",vF.MPYTHON_ONENET_OPTION_BOARDS="可选掌控板",vF.MPYTHON_ONENET_TITLE="OneNET",vF.MPYTHON_SERVER="服务器",vF.MPYTHON_DEVICE_ID="设备ID",vF.MPYTHON_PRODUCT_ID="产品ID",vF.MPYTHON_API_KEY="产品APIKey",vF.MPYTHON_ONENET_CALLBACK="回调函数",vF.MPYTHON_TOPIC="主题",vF.MPYTHON_ONENET_CALLBACK_TITLE="OneNET回调函数",vF.MPYTHON_ONENET_OPTION_BOARDS_HELPURL="",vF.MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0="小程序 选择掌控板应用 %1",vF.MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP="",vF.MPYTHON_HCSR04_DISTANCE_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",vF.MPYTHON_HCSR04_DISTANCE_MESSAGE0="%1 hcsr04 超声波距离 测量单位 %2",vF.MPYTHON_HCSR04_DISTANCE_TOOLTIP="",vF.MPYTHON_HCSR04_DISTANCE_MM_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",vF.MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0="%1 hcsr04 超声波(mm)",vF.MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP="",vF.MPYTHON_HCSR04_OBJ_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",vF.MPYTHON_HCSR04_OBJ_MESSAGE0="hcsr04 超声波初始化 名称 %1 trigger %2 echo %3",vF.MPYTHON_HCSR04_OBJ_TOOLTIP="",vF.MPYTHON_PM2_5_MIC_HELPURL="",vF.MPYTHON_PM2_5_MIC_MESSAGE0="rx引脚%1 PM值浓度%2",vF.MPYTHON_PM2_5_MIC_TOOLTIP="",vF.MPYTHON_PM2_5_LitresAir_HELPURL="",vF.MPYTHON_PM2_5_LitresAir_MESSAGE0="rx引脚%1 0.1升空气中直径在%2 颗粒物个数",vF.MPYTHON_PM2_5_LitresAir_TOOLTIP="",vF.MPYTHON3_IR_REMOTE_RECV_MESSAGE0="当 红外接收端 %1 收到消息时 %2 执行 %3",vF.MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0="红外回调地址",vF.MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0="红外接收内容",vF.MPYTHON_IR_REMOTE_RECV_MESSAGE0="红外接收 %1 回调地址 %2 回调命令 %3",vF.MPYTHON_IR_REMOTE_RECV_HELPURL="",vF.MPYTHON_IR_REMOTE_RECV_TOOLTIP="",vF.MPYTHON_IR_REMOTE_SEND_MESSAGE0="红外发送 %1 地址 %2 命令 %3",vF.MPYTHON_IR_REMOTE_SEND_HELPURL="",vF.MPYTHON_IR_REMOTE_SEND_TOOLTIP="",vF.TEXT_FORMAT_MESSAGE0="格式化字符串 %1 % %2",vF.TEXT_FORMAT_TOOLTIP="",vF.TEXT_FORMAT_HELPURL="",vF.TEXT_FORMAT2_MESSAGE0="格式化字符串 %1 format %2",vF.TEXT_FORMAT2_TOOLTIP="",vF.TEXT_FORMAT2_HELPURL="",vF.TEXT_TO_BYTE_MESSAGE0="转字节 %1",vF.TEXT_TO_BYTE_TOOLTIP="支持数据类型:string",vF.TEXT_TO_BYTE_HELPURL="",vF.MPYTHON_BYTES_DECODE_HELPURL="",vF.MPYTHON_BYTES_DECODE_MESSAGE0="字节 %1 转 字符串",vF.MPYTHON_BYTES_DECODE_TOOLTIP="",vF.OTHER_TO_BYTE_MESSAGE0="非文本转字节 %1",vF.OTHER_TO_BYTE_TOOLTIP="",vF.OTHER_TO_BYTE_HELPURL="",vF.MPYTHON_ONENET_TOOLTIP="创建OneNET连接",vF.MPYTHON_ONENET_INIT_WIFI_MESSAGE0="物联网 确保连接到 Wi-Fi 名称 %1 密码 %2",vF.MPYTHON_ONENET_INIT_WIFI_TOOLTIP="",vF.MPYTHON_ONENET_INIT_WIFI_HELPURL="",vF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL="",vF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0="当从小程序收到 %1 和 %2 时",vF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP="",vF.MPYTHON_MAC_ADDRESS_HELPURL="",vF.MPYTHON_MAC_ADDRESS_MESSAGE0="MAC 地址",vF.MPYTHON_MAC_ADDRESS_TOOLTIP="",vF.MPYTHON_RADIO_REC_HELPURL="",vF.MPYTHON_RADIO_REC_MESSAGE0="无线广播 接收消息",vF.MPYTHON_RADIO_REC_TOOLTIP="所接收为字节型",vF.MPYTHON_RADIO_SEND_HELPURL="",vF.MPYTHON_RADIO_SEND_MESSAGE0="无线广播 发送 %1",vF.MPYTHON_RADIO_SEND_TOOLTIP="频道: 1~13",vF.MPYTHON_RADIO_CHANNEL_HELPURL="",vF.MPYTHON_RADIO_CHANNEL_MESSAGE0="设无线广播 频道为 %1",vF.MPYTHON_RADIO_CHANNEL_TOOLTIP="频道: 1~13",vF.MPYTHON_RADIO_ON_OFF_HELPURL="",vF.MPYTHON_RADIO_ON_OFF_MESSAGE0="%1 无线广播",vF.MPYTHON_RADIO_ON_OFF_TOOLTIP="频道: 1~13",vF.MPYTHON_RADIO_MSG_MESSAGE0="收到的无线广播消息",vF.MPYTHON_RADIO_MSG_TOOLTIP="",vF.MPYTHON_RADIO_MSG_HELPURL="",vF.MPYTHON3_RADIO_RECV_MESSAGE0="当 收到无线广播消息 时 %1 执行 %2",vF.MPYTHON_RADIO_RECV_MESSAGE0="当 收到无线广播消息 %1 时",vF.MPYTHON_RADIO_RECV_TOOLTIP="频道: 1~13",vF.MPYTHON_RADIO_RECV_HELPURL="",vF.MPYTHON_RADIO_RECV_MSG_MESSAGE0="当 收到特定无线广播消息 %1 时 %2 执行 %3",vF.MPYTHON_RADIO_RECV_MSG_TOOLTIP="频道: 1~13",vF.MPYTHON_RADIO_RECV_MSG_HELPURL="",vF.MPYTHON_UDP_INIT_HELPURL="",vF.MPYTHON_UDP_INIT_MESSAGE0="建立 UDP 连接",vF.MPYTHON_UDP_INIT_TOOLTIP="UDP连接基于Wi-Fi",vF.MPYTHON_UDP_SEND_HELPURL="",vF.MPYTHON_UDP_SEND_MESSAGE0="UDP 群发消息 %1",vF.MPYTHON_UDP_SEND_TOOLTIP="",vF.MPYTHON_UDP_SENDTO_HELPURL="",vF.MPYTHON_UDP_SENDTO_MESSAGE0="UDP 发送消息 %1 到 %2 端口 %3",vF.MPYTHON_UDP_SENDTO_TOOLTIP="",vF.MPYTHON_UDP_RECV_HELPURL="",vF.MPYTHON_UDP_RECV_MESSAGE0="UDP 接收消息",vF.MPYTHON_UDP_RECV_TOOLTIP="",vF.MPYTHON_UDP_RECV_EVENT_HELPURL="",vF.MPYTHON_UDP_RECV_EVENT_MESSAGE0="当从 UDP 收到消息时 %1 执行 %2",vF.MPYTHON_UDP_RECV_EVENT_TOOLTIP="",vF.MPYTHON_UDP_RECV_MSG_MESSAGE0="从 UDP 收到的消息",vF.MPYTHON_UDP_RECV_MSG_TOOLTIP="",vF.MPYTHON_UDP_RECV_MSG_HELPURL="",vF.MPYTHON_AUDIO_PLAY_chirp_MESSAGE0="鸟叫",vF.MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0="钢琴黑暗旋律配乐",vF.MPYTHON_AUDIO_PLAY_miaow_MESSAGE0="猫叫",vF.MPYTHON_AUDIO_PLAY_bark_MESSAGE0="小狗吠叫",vF.MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0="浑厚的打击音",vF.MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0="紧张效果的音效",vF.MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0="拍照快门声",vF.MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0="数百只苍蝇",vF.MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0="蟋蟀叫声",vF.MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0="摇晃低音声线",vF.MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0="听众欢呼掌声",vF.MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0="邮轮汽笛",vF.MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0="现代电话铃声",vF.MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0="拔萝卜",vF.MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0="两只老虎",vF.MPYTHON_AUDIO_SET_VOLUME_HELPURL="",vF.MPYTHON_AUDIO_SET_VOLUME_MESSAGE0="设音频音量 %1",vF.MPYTHON_AUDIO_SET_VOLUME_TOOLTIP="",vF.MPYTHON_DISPCHAR_MODE_1="普通",vF.MPYTHON_DISPCHAR_MODE_2="反转",vF.MPYTHON_DISPCHAR_MODE_3="透明",vF.MPYTHON_AUDIO_XUNFEI_TTS_HELPURL="",vF.MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0="TTS 语音播放 %1",vF.MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP="需要在 讯飞开放平台 www.xfyun.cn 上开通“在线语音合成”服务",vF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL="https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",vF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0="TTS 语音配置 APPID %1 APIKey %2",vF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP="输入在 讯飞开放平台 www.xfyun.cn 获取的 APPID 与 APIKey\n注意:要设置IP白名单",vF.MPYTHON_AUDIO_PLAY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",vF.MPYTHON_AUDIO_PLAY_MESSAGE0="音频 播放 %1",vF.MPYTHON_AUDIO_PLAY_TOOLTIP="需要有源音箱\nP8 左声道\nP9 右声道\nGND 接地\n播放参数: \n网络 MP3 的 url 或已上传至掌控板的 MP3, 如'music_1.mp3' ",vF.MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",vF.MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0="音频 播放 %1",vF.MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP="需要有源音箱\nP8 左声道\nP9 右声道\nGND 接地\n播放参数: \n网络 MP3 的 url 或已上传至掌控板的 MP3, 如'music_1.mp3' ",vF.MPYTHON_AUDIO_DEINIT_HELPURL="",vF.MPYTHON_AUDIO_DEINIT_MESSAGE0="音频 释放缓存",vF.MPYTHON_AUDIO_DEINIT_TOOLTIP="",vF.MPYTHON_AUDIO_INIT_HELPURL="",vF.MPYTHON_AUDIO_INIT_MESSAGE0="音频 初始化",vF.MPYTHON_AUDIO_INIT_TOOLTIP="为音频解码开辟缓存",vF.MPYTHON_AUDIO_CMD_HELPURL="",vF.MPYTHON_AUDIO_CMD_MESSAGE0="音频 %1",vF.MPYTHON_AUDIO_CMD_TOOLTIP="",vF.MPYTHON_AUDIO_START_RECORDING_HELPURL="",vF.MPYTHON_AUDIO_START_RECORDING_MESSAGE0="开始录音 录音时长%1秒",vF.MPYTHON_AUDIO_START_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。录音时长不能超过5秒",vF.MPYTHON_AUDIO_RECORDING_RESULT_HELPURL="",vF.MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0="录音结果",vF.MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",vF.MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL="",vF.MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0="将 %1 进行识别",vF.MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。",vF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL="",vF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0="识别录音结果",vF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",vF.MPYTHON_RECORD_INIT_HELPURL="",vF.MPYTHON_RECORD_INIT_MESSAGE0="录音 初始化",vF.MPYTHON_RECORD_INIT_TOOLTIP="录音初始化。\n需要掌控板v1.1以上硬件版本。",vF.MPYTHON_RECORD_DEINIT_HELPURL="",vF.MPYTHON_RECORD_DEINIT_MESSAGE0="录音 释放资源",vF.MPYTHON_RECORD_DEINIT_TOOLTIP="录音结束后释放资源。\n需要掌控板v1.1以上硬件版本。",vF.MPYTHON_RECORD_WAV_HELPURL="",vF.MPYTHON_RECORD_WAV_MESSAGE0="录制音频 存储路径 %1 时长 %2 秒",vF.MPYTHON_RECORD_WAV_TOOLTIP="录制音频,并以 WAV 格式存储。\n需要掌控板v1.1以上硬件版本。",vF.MPYTHON_ASR_HELPURL="",vF.MPYTHON_ASR_MESSAGE0="识别 %1 秒语音指令",vF.MPYTHON_ASR_TOOLTIP="可以识别3秒内的语音指令。\n需要掌控板v1.1以上硬件版本。",vF.mpython_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_button_A="P5(按键A)",vF.mpython_button_B="P11(按键B)",vF.mpython_PIN7_RGB="P7(板载RGB)",vF.MPYTHON_PWM_PIN_P7="P7 (掌控板)",vF.MPYTHON_PWM_PIN_P9="P9 (掌控实验箱)",vF.mpython_tem="温度",vF.mpython_hum="湿度",vF.mpython_pre="气压",vF.mpython_left_right="左右",vF.MPYTHON_LEFT="左",vF.MPYTHON_RIGHT="右",vF.mpython_front_back="前后",vF.mpython_vertical="垂直",vF.mpython_horizontal="水平",vF.mpython_run_in_back="后台运行",vF.mpython_run_in_front="前台运行",vF.mpython_draw="绘制",vF.mpython_clear="清除",vF.mpython_s="秒",vF.mpython_ms="毫秒",vF.mpython_us="微秒",vF.mpython_year="年",vF.mpython_month="月",vF.mpython_date="日",vF.mpython_hour="时",vF.mpython_minute="分",vF.mpython_week="星期数",vF.mpython_days="天数",vF.MPYTHON_ORDER="第",vF.MPYTHON_REVERSE_ORDER="倒数第",vF.MATH_RANDOM_RANDRANGE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.MATH_RANDOM_RANDRANGE_TOOLTIP="返回指定递增基数集合中的一个随机数,基数缺省值为1",vF.MATH_RANDOM_RANDRANGE_MESSAGE0="随机数 从递增区间 [%1 ,%2) 递增步长%3",vF.MATH_KEEP_DECIMAL_HELPURL="",vF.MATH_KEEP_DECIMAL_TOOLTIP="",vF.MATH_KEEP_DECIMAL_MESSAGE0="%1 保留 %2 位小数",vF.MPYTHON_MIN="最小值",vF.MPYTHON_MAX="最大值",vF.MPYTHON_LENTH="长度",vF.TUPLE_MIN_MAX_LEN_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.TUPLE_MIN_MAX_LEN_TOOLTIP="",vF.TUPLE_MIN_MAX_LEN_MESSAGE0="元组 %1 %2",vF.TUPLE_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.TUPLE_ITEM_EXIST_TOOLTIP="",vF.TUPLE_ITEM_EXIST_MESSAGE0="元组%1 包含%2",vF.LIST_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.LIST_ITEM_EXIST_TOOLTIP="",vF.LIST_ITEM_EXIST_MESSAGE0="列表%1 包含%2",vF.PARTS_OF_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.PARTS_OF_TUPLE_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.PARTS_OF_TUPLE_MESSAGE0="返回元组%1 取第%2 项到尾项",vF.PARTS_OF_TUPLE2_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.PARTS_OF_TUPLE2_TOOLTIP="递增顺序取项\n举例:\n 倒数第5到倒数第2;\n 第0到第5",vF.PARTS_OF_TUPLE2_MESSAGE0="返回元组%1 取%2 %3 项到 %4 %5 项",vF.PARTS_OF_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.PARTS_OF_LIST_TOOLTIP="递增顺序取项\n举例:\n 倒数第5到倒数第2;\n 第0到第5",vF.PARTS_OF_LIST_MESSAGE0="返回列表%1 取%2 %3 项到 %4 %5 项",vF.LIST_TO_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.LIST_TO_TUPLE_TOOLTIP="",vF.LIST_TO_TUPLE_MESSAGE0="列表%1 转元组",vF.tuple_create_with_MESSAGE0="定义元组 %1 = %2 ",vF.tuple_create_with_TOOLTIP="只包含一个元素时,需要在元素后面添加逗号",vF.tuple_create_with_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.tuple_order_item_MESSAGE0="元组%1 %2 %3 项",vF.tuple_order_item_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.tuple_order_item_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.LIST_ORDER_ITEM_MESSAGE0="列表%1 %2 %3 项",vF.LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SET_LIST_ORDER_ITEM_MESSAGE0="设列表%1 %2 %3 项为%4",vF.SET_LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.SET_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.INSERT_LIST_ORDER_ITEM_MESSAGE0="插入列表%1 %2 %3 项为%4",vF.INSERT_LIST_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.INSERT_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SET_TUPLE_ORDER_ITEM_MESSAGE0="设元组%1 %2 %3 项为%4",vF.SET_TUPLE_ORDER_ITEM_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.SET_TUPLE_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_CREATE_WITH_TOOLTIP="",vF.DICT_CREATE_WITH_MESSAGE0="定义字典 %1 = %2",vF.SET_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SET_CREATE_WITH_TOOLTIP="",vF.SET_CREATE_WITH_MESSAGE0="定义集合 %1 = %2",vF.SET_UPDATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SET_UPDATE_WITH_TOOLTIP="添加参数可为字符串、列表、元组、集合、字典(只添加key),已有元素则不进行操作",vF.SET_UPDATE_WITH_MESSAGE0="集合 %1 添加 %2",vF.INTERSECTION_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.INTERSECTION_OF_SETS_TOOLTIP="",vF.INTERSECTION_OF_SETS_MESSAGE0="取 %1 集合 %2 集合 %3",vF.MPYTHON_INTERSECTION="交集",vF.MPYTHON_UNION="并集",vF.MPYTHON_DIFFERENCE="差集",vF.SETS_UPDATE_WAYS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SETS_UPDATE_WAYS_TOOLTIP="",vF.SETS_UPDATE_WAYS_MESSAGE0="集合 %1 更新为 与集合 %2 的 %3",vF.SUBSET_SUPERSET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SUBSET_SUPERSET_TOOLTIP="",vF.SUBSET_SUPERSET_MESSAGE0="集合 %1 为集合 %2 的 %3",vF.MPYTHON_SUBSET="子集",vF.MPYTHON_SUPERSET="超集",vF.LEN_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.LEN_OF_SETS_TOOLTIP="",vF.LEN_OF_SETS_MESSAGE0="集合 %1 长度",vF.GET_SETS_POP_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.GET_SETS_POP_TOOLTIP="",vF.GET_SETS_POP_MESSAGE0="返回随机项并移除之 从集合 %1",vF.CREATE_EMPTY_SET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.CREATE_EMPTY_SET_TOOLTIP="",vF.CREATE_EMPTY_SET_MESSAGE0="创建空集合 %1",vF.BIT_INVERSION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.BIT_INVERSION_TOOLTIP="对数据的每个二进制位取反",vF.BIT_INVERSION_MESSAGE0="二进制取反 %1",vF.TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.SET_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP="项可为字符串、已创建变量变量、元组",vF.DICT_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序计数从0开始,倒序计数从1开始",vF.DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_KEY_VALUE_TOOLTIP="",vF.DICT_KEY_VALUE_MESSAGE0="字典%1 键%2 的值",vF.ADD_DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.ADD_DICT_KEY_VALUE_TOOLTIP="已有该键则更新该键",vF.ADD_DICT_KEY_VALUE_MESSAGE0="字典%1 添加键%2 值%3",vF.DICT_LENGTH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_LENGTH_TOOLTIP="",vF.DICT_LENGTH_MESSAGE0="字典%1 长度",vF.DICT_KEY_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_KEY_EXIST_TOOLTIP="",vF.DICT_KEY_EXIST_MESSAGE0="字典%1 包含键%2",vF.DICT_KEY_OR_VAL_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.DICT_KEY_OR_VAL_LIST_TOOLTIP="",vF.DICT_KEY_OR_VAL_LIST_MESSAGE0="字典%1 %2的列表",vF.DICT_KEYS="键",vF.DICT_VALUES="值",vF.mpython_lists_append_MESSAGE0="列表%1 末尾添加项%2",vF.mpython_lists_append_TOOLTIP="",vF.mpython_lists_append_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_lists_extend_MESSAGE0="列表%1 追加列表%2",vF.mpython_lists_extend_TOOLTIP="",vF.mpython_lists_extend_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_lists_clear_MESSAGE0="列表%1 清空",vF.mpython_lists_clear_TOOLTIP="",vF.mpython_lists_clear_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.MPYTHON_REMOVE_REPETITION_MESSAGE0="列表%1 移除重复",vF.MPYTHON_REMOVE_REPETITION_TOOLTIP="",vF.MPYTHON_REMOVE_REPETITION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_Timer_value_MESSAGE0="定时器 %1 的计数值",vF.mpython_Timer_value_TOOLTIP="获取并返回计时器当前计数值",vF.mpython_Timer_deinit_MESSAGE0="清除 定时器/事件 %1",vF.mpython_Timer_deinit_TOOLTIP="取消定时器的初始化。停止计时器,并禁用计时器外围设备",vF.mpython_Interrupt_AB_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",vF.mpython_Interrupt_AB_TOOLTIP="",vF.mpython_Interrupt_AB_MESSAGE0="当按键 %1 被 %2 时",vF.mpython_Interrupt_pin_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",vF.mpython_Interrupt_pin_TOOLTIP="上升沿触发:由低电平到高电平;下降沿触发:由高电平到低电平",vF.mpython_Interrupt_pin_MESSAGE0="当引脚 %1 电平 %2 时",vF.mpython_Interrupt_pin_IRQ_FALLING="↘ 从高到低",vF.mpython_Interrupt_pin_IRQ_RISING="↗ 从低到高",vF.mpython_IRQ_FALLING="按下",vF.mpython_IRQ_RISING="松开",vF.mpython_PERIODIC="重复执行",vF.mpython_ONE_SHOT="延时执行",vF.MPYTHON_IS_SHAKED_MESSAGE0="掌控板 %1",vF.MPYTHON_IS_SHAKED_HELPURL="",vF.MPYTHON_IS_SHAKED_TOOLTIP="",vF.MPYTHON_IS_SHAKED="被摇晃",vF.MPYTHON_IS_THROWN="被抛起",vF.MPYTHON_SHAKE_DETECTOR_MESSAGE0="当掌控板 %1 时",vF.MPYTHON_SHAKE_DETECTOR_HELPURL="",vF.MPYTHON_SHAKE_DETECTOR_TOOLTIP="",vF.MPYTHON_IS_TILTED_MESSAGE0="掌控板 %1",vF.MPYTHON_IS_TILTED_HELPURL="",vF.MPYTHON_IS_TILTED_TOOLTIP="",vF.MPYTHON_TILT_DETECTOR_MESSAGE0="当掌控板 %1 时",vF.MPYTHON_TILT_DETECTOR_HELPURL="",vF.MPYTHON_TILT_DETECTOR_TOOLTIP="",vF.MPYTHON_DIRECTION_FORWARD="向前倾斜",vF.MPYTHON_DIRECTION_BACK="向后倾斜",vF.MPYTHON_DIRECTION_RIGHT="向右倾斜",vF.MPYTHON_DIRECTION_LEFT="向左倾斜",vF.MPYTHON_DIRECTION_NONE="平放",vF.MPYTHON_TOUCH_EVENT_MESSAGE0="当触摸键 %1 被 %2 时",vF.MPYTHON_TOUCH_EVENT_HELPURL="",vF.MPYTHON_TOUCH_EVENT_TOOLTIP="",vF.MPYTHON_TOUCH_EVENT_PRESSED="触摸",vF.MPYTHON_TOUCH_EVENT_UNPRESSED="释放",vF.MPYTHON_CUSTOM_EVENT_MESSAGE0="事件 %1 : 当 %2 时",vF.MPYTHON_CUSTOM_EVENT_HELPURL="",vF.MPYTHON_CUSTOM_EVENT_TOOLTIP="自定义事件与定时器共用 1/2/4/7/8/9/10,不可同时占用一个端口。\n最大同时创建4个事件/定时器,如果存在冲突,请尝试换一个编号。",vF.mpython_music_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_music_range_pitch_TOOLTIP="时长为单个频率的时长",vF.mpython_music_range_pitch_MESSAGE0="播放音调 从%1 到%2 步长%3 时长%4 毫秒 引脚 %5",vF.mpython_neopixel_init_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_neopixel_init_TOOLTIP="",vF.mpython_neopixel_init_MESSAGE0="灯带初始化 名称%1 引脚%2 数量%3",vF.MPYTHON_NEOPIXEL_RAINBOW_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP="",vF.MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0="彩虹灯效 灯带%1 数量 %2 亮度 %3 偏移 %4",vF.MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",vF.MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP="亮度调节, 范围 0 ~ 100",vF.MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0="灯带 %1 设置亮度为 %2",vF.mpython_neopixel_single_TOOLTIP="",vF.mpython_neopixel_single_MESSAGE0="灯带%1 %2号 红%3 绿%4 蓝%5",vF.mpython_neopixel_single_gui_MESSAGE0="灯带 %1 %2号 颜色为 %3",vF.mpython_neopixel_single_gui_TOOLTIP="",vF.mpython_neopixel_show_TOOLTIP="",vF.mpython_neopixel_show_MESSAGE0="灯带%1 设置生效",vF.mpython_neopixel_off_TOOLTIP="",vF.mpython_neopixel_off_MESSAGE0="灯带%1 关闭",vF.mpython_neopixel_all_TOOLTIP="",vF.mpython_neopixel_all_MESSAGE0="灯带%1 全亮 红%2 绿%3 蓝%4",vF.mpython_neopixel_all_gui_TOOLTIP="",vF.mpython_neopixel_all_gui_MESSAGE0="灯带%1 全亮 颜色%2",vF.mpython_image_to_oled_MESSAGE0="打开图片 %1 宽 %2 高 %3",vF.mpython_image_to_oled_TOOLTIP="",vF.mpython_time_localtime_MESSAGE0="本地时间 %1",vF.mpython_time_localtime_TOOLTIP="星期数:返回0~6,周一为0,周日为6\n天数:获取当前日期是一年中的第几天\n建议先连接wifi并获取网络时间",vF.mpython_WiFi_config_MESSAGE0="Wi-Fi 配置信息 %1",vF.mpython_WiFi_config_TOOLTIP="netmask-子网掩码;gateway-网关",vF.mpython_time_ticks_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",vF.mpython_time_ticks_MESSAGE0="运行时间 %1",vF.mpython_time_ticks_TOOLTIP="",vF.MPYTHON_TIMER_DEF_MESSAGE0="定义定时器 %1",vF.MPYTHON_TIMER_INIT_MESSAGE0="启动定时器 %1 %2 周期 %3 毫秒",vF.mpython_Timer_MESSAGE0="设置定时器 %1 %2 周期 %3 毫秒",vF.mpython_Timer_TOOLTIP="创建定时器n,n=1-14。\n最大同时创建4个定时器,如果存在冲突,请尝试换一个编号。\n3用于内部程序,\n5/6用于伺服系统和ADC,\n11用于摇晃检测,\n12用于触摸键检测,\n13用于Radio和DHT11/DHT22定时取值(共用),\n14用于OneNET和倾斜检测(共用),\n其余端口与自定义事件共用。",vF.mpython_Timer_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",vF.mpython_sway_xyz_MESSAGE0="%1 摇晃掌控板",vF.mpython_sway_xyz_TOOLTIP="掌控板正面朝上,触摸键 'python' 靠近使用者,开始左右或前后摇晃掌控板",vF.mpython_init_bluetooth_MESSAGE0="初始化 蓝牙名称%1",vF.mpython_init_bluetooth_TOOLTIP="初始化 蓝牙名称",vF.mpython_OnOff_bluetooth_MESSAGE0="蓝牙设备 %1广播",vF.mpython_OnOff_bluetooth_TOOLTIP="蓝牙设备 开启或关闭广播",vF.mpython_HID_keyboard_bluetooth_MESSAGE0="键盘 按键%1",vF.mpython_HID_keyboard_bluetooth_TOOLTIP="HID键盘设备",vF.mpython_HID_consumer_bluetooth_MESSAGE0="消费类设备%1 状态%2",vF.mpython_HID_consumer_bluetooth_TOOLTIP="模拟HID消费类设备的控制器,如蓝牙遥控器",vF.mpython_HID_release_keyboard_bluetooth_MESSAGE0="键盘 释放按键",vF.mpython_HID_release_keyboard_bluetooth_TOOLTIP="键盘设备",vF.mpython_HID_mouse_bluetooth_MESSAGE0="鼠标%1",vF.mpython_HID_mouse_bluetooth_TOOLTIP="鼠标设备",vF.mpython_HID_release_mouse_bluetooth_MESSAGE0="鼠标 释放按键",vF.mpython_HID_release_mouse_bluetooth_TOOLTIP="鼠标设备",vF.mpython_HID_mouse_pointer_bluetooth_MESSAGE0="鼠标 指针移动 x%2 y%1",vF.mpython_HID_mouse_pointer_bluetooth_TOOLTIP="鼠标指针坐标x,y轴的相对位移,范围-1023 ~ 1023",vF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="键盘 按键%1 组合按键%2",vF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="如果想使用多个按键组合指令,可以用“|”或运算",vF.mpython_HID_keyboard_part_bluetooth_MESSAGE0="键盘 组合按键%1",vF.mpython_HID_keyboard_part_bluetooth_TOOLTIP="如果想使用多个按键组合指令,可以用“|”或运算",vF.mpython_HID_keyboard_part_bluetooth_HELPURL="",vF.mpython_init_wifi_MESSAGE0="连接 Wi-Fi 名称 %1 密码 %2",vF.mpython_init_wifi_TOOLTIP="让掌控板接入Wi-Fi环境",vF.MPYTHON_WIFI_IFCONFIG_MESSAGE0="Wi-Fi 设置静态IP %1 IP 地址 %2 子网掩码 %3 默认网关 %4 DNS %5",vF.MPYTHON_WIFI_IFCONFIG_TOOLTIP="",vF.MPYTHON_WIFI_IFCONFIG_HELPURL="",vF.mpython_dis_WiFi_MESSAGE0="断开 Wi-Fi 连接",vF.mpython_dis_WiFi_TOOLTIP="",vF.MPYTHON_ENABLE_APWIFI_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",vF.MPYTHON_ENABLE_APWIFI_TOOLTIP="密码可以为空,或者8位以上的字母或数字。\nAP模式仅用于掌控板之间的相互通信,不可以作为热点,令其它设备上网。",vF.MPYTHON_ENABLE_APWIFI_MESSAGE0="开启 AP模式 名称 %1 密码 %2 信道 %3",vF.mpython_disable_APWiFi_MESSAGE0="关闭 AP模式",vF.mpython_disable_APWiFi_TOOLTIP="",vF.mpython_ntptime_settime_MESSAGE0="同步网络时间 时区 %1 授时服务器 %2",vF.mpython_ntptime_settime_TOOLTIP="NTP时间同步是一种时间同步网络技术",vF.mpython_wifi_get_date_MESSAGE0="获取当前日期",vF.mpython_wifi_get_date_TOOLTIP="获取当前日期字符串 示例:2020年12月12日",vF.mpython_wifi_get_time_MESSAGE0="获取当前时间",vF.mpython_wifi_get_time_TOOLTIP="获取当前时间字符串",vF.mpython_ntptime_timezone_E1="东1区",vF.mpython_ntptime_timezone_E2="东2区",vF.mpython_ntptime_timezone_E3="东3区",vF.mpython_ntptime_timezone_E4="东4区",vF.mpython_ntptime_timezone_E5="东5区",vF.mpython_ntptime_timezone_E6="东6区",vF.mpython_ntptime_timezone_E7="东7区",vF.mpython_ntptime_timezone_E8="东8区",vF.mpython_ntptime_timezone_E9="东9区",vF.mpython_ntptime_timezone_E10="东10区",vF.mpython_ntptime_timezone_E11="东11区",vF.mpython_ntptime_timezone_E12="东12区",vF.mpython_ntptime_timezone_0="中时区",vF.mpython_ntptime_timezone_W1="西1区",vF.mpython_ntptime_timezone_W2="西2区",vF.mpython_ntptime_timezone_W3="西3区",vF.mpython_ntptime_timezone_W4="西4区",vF.mpython_ntptime_timezone_W5="西5区",vF.mpython_ntptime_timezone_W6="西6区",vF.mpython_ntptime_timezone_W7="西7区",vF.mpython_ntptime_timezone_W8="西8区",vF.mpython_ntptime_timezone_W9="西9区",vF.mpython_ntptime_timezone_W10="西10区",vF.mpython_ntptime_timezone_W11="西11区",vF.mpython_ntptime_timezone_W12="西12区",vF.FILE_TO_LIST_HELPURL="",vF.FILE_TO_LIST_TOOLTIP="读出指定路径的文本文件内容(仅限utf-8格式),并转为列表形式,以分隔符分隔。",vF.FILE_TO_LIST_MESSAGE0="读取文本文件 %1 为列表 ,以 %2 分隔",vF.FILE_TO_BIN_HELPURL="",vF.FILE_TO_BIN_TOOLTIP="以二进制格式读出指定路径的文件内容。";vF.FILE_TO_BIN_MESSAGE0="读取文件 %1 的二进制内容",vF.MPYTHON_INIT_FILE_HELPURL="",vF.MPYTHON_INIT_FILE_TOOLTIP="初始化一个文本文件,如果文件不存在则创建文件,如果文件存在则清空内容。",vF.MPYTHON_INIT_FILE_MESSAGE0="初始化文本文件 %1",vF.MPYTHON_WRITE_FILE_HELPURL="",vF.MPYTHON_WRITE_FILE_TOOLTIP="向指定路径的文本文件写入内容,如果文件不存在则创建文件。",vF.MPYTHON_WRITE_FILE_MESSAGE0="向文本文件 %1 写入内容 %2 ,以 %3 分隔",vF.MPYTHON_SDCARD_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",vF.MPYTHON_SDCARD_INIT_TOOLTIP="sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\n须确保 SPI 总线的引脚与 micro SD 卡物理连接正确,并预先使用 FAT 或 FAT32 文件系统格式化 micro SD 卡。",vF.MPYTHON_SDCARD_INIT_MESSAGE0="初始化 SD 卡",vF.MPYTHON_SDCARD_MOUNT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",vF.MPYTHON_SDCARD_MOUNT_TOOLTIP="挂载 SD 卡到指定路径。",vF.MPYTHON_SDCARD_MOUNT_MESSAGE0="挂载 SD 卡到路径 %1",vF.MPYTHON_ENTER="回车",vF.MPYTHON_COMMA="逗号",vF.MPYTHON_SEMICOLON="分号",vF.MPYTHON_SPACE="空格",vF.mpython_wifi_clock_MESSAGE0="Wi-Fi 模拟时钟 x %1 y %2 半径 %3",vF.mpython_wifi_clock_TOOLTIP="需连接 Wi-Fi 使用",vF.mpython_def_clock_MESSAGE0="初始化时钟%1 x %2 y %3 半径 %4",vF.mpython_def_clock_TOOLTIP="",vF.mpython_settime_clock_MESSAGE0="时钟%1 读取时间",vF.mpython_settime_clock_TOOLTIP="",vF.mpython_draw_clear_clock_MESSAGE0="%1 时钟 %2",vF.mpython_draw_clear_clock_TOOLTIP="",vF.mpython_tinywebio_start_MESSAGE0="启动 TinyWebIO 服务 %1",vF.mpython_tinywebio_start_TOOLTIP="启动该服务需连接Wi-Fi,TinyWebIO服务为App Inventor应用提供远程控制接口的掌控板工具包",vF.mpython_tinywebio_client_setup_HELPURL="",vF.mpython_tinywebio_client_setup_TOOLTIP="向服务器发布的数据项(逗号分隔)\nbuttona/b 按键状态\ntouchpadp/y/t/h/o/n 触摸按键值\nlight 光线值\nsound 声音值\naccelerometer 三轴加速度值\nid 掌控板标识\ntime 时间戳\npind 数字IO引脚\npina 模拟IO引脚\n----------\n从服务器读取的数据项(逗号分隔)\nrgb0/1/2 RGB灯珠\noled OLED显示屏\nmusic 音乐\nservo 舵机\npind 数字IO引脚\npina 模拟IO引脚",vF.mpython_tinywebio_client_setup_MESSAGE0="设置 TinyWebIO 客户端参数 %1 TinyWebDB服务器地址 %2 向服务器发布的数据项 %3 从服务器读取的数据项 %4 存取服务器的时间间隔(ms) %5",vF.mpython_tinywebio_client_action_HELPURL="",vF.mpython_tinywebio_client_action_TOOLTIP="",vF.mpython_tinywebio_client_action_MESSAGE0="%1 TinyWebIO 客户端",vF.mpython_tinywebio_client_action_start="启动",vF.mpython_tinywebio_client_action_stop="停止",vF.MPYTHON_CUSTOM_CODE_HELPURL="",vF.MPYTHON_CUSTOM_CODE_TOOLTIP="",vF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定义代码 %2 %3",vF.MPYTHON_CUSTOM_TYPE_IMPORT="置顶",vF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",vF.mpython_servo_angle0_MESSAGE0="设置舵机 %1 角度为 %2",vF.mpython_servo_angle_MESSAGE0="设置舵机 %1 角度为 %2 脉宽从 %3 到 %4 最大角度 %5",vF.mpython_servo_angle_TOOLTIP="电源线Vcc(红色)连接拓展板电源口V,地线GND(棕色)连接拓展板地线口G,控制信号线(橙色)连接所选的拓展板引脚",vF.mpython_dh11_hum_tem_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",vF.mpython_dh11_hum_tem_MESSAGE0="DHT11 %1 %2",vF.mpython_dh11_hum_tem_TOOLTIP="DHT11上的 + 连接拓展板的电源口 V ,- 连接拓展板的地线口 G ,out 连接拓展板的引脚 0(即选引脚)",vF.MPYTHON_DH22_HUM_TEM_MESSAGE0="DHT22 %1 %2",vF.MPYTHON_DH22_HUM_TEM_TOOLTIP="",vF.MPYTHON_DH22_HUM_TEM_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",vF.mpython_music_note_MESSAGE0="音符 %1 %2 : %3",vF.mpython_music_note_TOOLTIP="音符,如C4:4",vF.mpython_return_list_MESSAGE0="定义列表 %1 = %2",vF.mpython_return_list_TOOLTIP="",vF.mpython_display_Show_MESSAGE0="OLED 显示生效",vF.mpython_display_Show_TOOLTIP="",vF.mpython_display_DispChar_MESSAGE0="显示文本 x %1 y %2 内容 %3 模式 %4 %5",vF.mpython_display_DispChar_TOOLTIP="OLED分辨率128x64",vF.mpython_display_DispChar_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",vF.mpython_display_DispChar_5lines_MESSAGE0="OLED 第%1 行显示 %2 模式 %3 %4",vF.mpython_display_DispChar_5lines_TOOLTIP="OLED分辨率128x64",vF.mpython_line1="1",vF.mpython_line2="2",vF.mpython_line3="3",vF.mpython_line4="4",vF.mpython_line5="5",vF.MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0="OLED 清除第 %1 行",vF.MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP="OLED分辨率128x64",vF.MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL="",vF.mpython_display_fill_0="清空",vF.mpython_display_fill_1="全亮",vF.mpython_display_invert_0="黑底",vF.mpython_display_invert_1="白底",vF.mpython_display_show="生效",vF.mpython_display_fill_MESSAGE0="OLED 显示 %1",vF.mpython_display_fill_TOOLTIP="",vF.mpython_display_pixel_0="暗",vF.mpython_display_pixel_1="亮",vF.mpython_display_pixel_MESSAGE0="描点 x %1 y %2 为 %3",vF.mpython_display_pixel_TOOLTIP="",vF.mpython_display_hline_0="擦除",vF.mpython_display_hline_1="绘制",vF.mpython_display_hline_MESSAGE0="%1 水平线%2 x%3 y%4 长度%5",vF.mpython_display_hline_TOOLTIP="",vF.mpython_ProgressBar_MESSAGE0="进度条%1 x%2 y%3 宽%4 高%5 进度%6",vF.mpython_ProgressBar_TOOLTIP="",vF.mpython_stripBar_MESSAGE0="柱状条%1 x%2 y%3 宽%4 高%5 进度%6",vF.mpython_stripBar_TOOLTIP="",vF.MPYTHON_QR_CODE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",vF.MPYTHON_QR_CODE_TOOLTIP="",vF.MPYTHON_QR_CODE_MESSAGE0="在坐标 x %1 y %2 绘制二维码 %3 尺寸 %4",vF.MPYTHON_DISPLAY_MODE_0="擦除",vF.MPYTHON_DISPLAY_MODE_1="绘制",vF.MPYTHON_DISPLAY_HOLLOW="空心",vF.MPYTHON_DISPLAY_SOLID="实心",vF.MPYTHON_DISPLAY_HVLINE_MESSAGE0="%1 %2 线 %3 x %4 y %5 长度 %6",vF.MPYTHON_DISPLAY_HVLINE_TOOLTIP="",vF.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0="%1 %2 矩形 %3 x %4 y %5 宽 %6 高 %7",vF.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP="",vF.MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0="%1 %2 圆 %3 x %4 y %5 半径 %6",vF.MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP="",vF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0="%1 %2 三角 %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",vF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP="",vF.MPYTHON_RGB_0="0 #",vF.MPYTHON_RGB_1="1 #",vF.MPYTHON_RGB_2="2 #",vF.MPYTHON_RGB_ALL="所有",vF.MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0="设置 %1 RGB 灯颜色为 %2",vF.MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0="设置 %1 RGB 灯颜色为 R %2 G %3 B %4",vF.MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.MPYTHON_OFF_RGB_LIST_MESSAGE0="关闭 %1 RGB 灯",vF.MPYTHON_OFF_RGB_LIST_TOOLTIP="",vF.MPYTHON_MUSIC_PLAY_MESSAGE0="播放音乐 %1 引脚 %2",vF.MPYTHON_MUSIC_PLAY_TOOLTIP="播放内置的音乐",vF.MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0="播放音乐 %1 直到完成 , 引脚 %2",vF.MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP="播放内置的音乐",vF.MPYTHON_MUSIC_GE_CHANG_ZU_GUO="歌唱祖国",vF.MPYTHON_MUSIC_DONG_FANG_HONG="东方红",vF.MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE="彩云追月",vF.MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI="走进新时代",vF.MPYTHON_MUSIC_MO_LI_HUA="茉莉花",vF.MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO="沂蒙山小调",vF.mpython_display_vline_MESSAGE0="%1 垂直线%2 x%3 y%4 长度%5",vF.mpython_display_vline_TOOLTIP="",vF.mpython_display_line_MESSAGE0="%1 线%2 x1 %3 y1 %4 到 x2 %5 y2 %6",vF.mpython_display_line_TOOLTIP="",vF.mpython_display_rect_MESSAGE0="%1 边框%2 x %3 y %4 宽 %5 高 %6",vF.mpython_display_rect_TOOLTIP="",vF.mpython_display_RoundRect_MESSAGE0="%1 弧角边框%2 x %3 y %4 宽 %5 高 %6 半径%7",vF.mpython_display_RoundRect_TOOLTIP="",vF.mpython_display_fill_rect_MESSAGE0="%1 矩形%2 x %3 y %4 宽 %5 高 %6 ",vF.mpython_display_fill_rect_TOOLTIP="",vF.mpython_display_fill_circle_MESSAGE0="%1 实心圆%2 x %3 y %4 半径 %5",vF.mpython_display_fill_circle_TOOLTIP="",vF.mpython_display_circle_MESSAGE0="%1 空心圆%2 x %3 y %4 半径 %5",vF.mpython_display_circle_TOOLTIP="",vF.mpython_display_triangle_MESSAGE0="%1 空心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",vF.mpython_display_triangle_TOOLTIP="",vF.mpython_display_fill_triangle_MESSAGE0="%1 实心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",vF.mpython_display_fill_triangle_TOOLTIP="",vF.mpython_display_Bitmap_MESSAGE0="%1 图像 x%2 y%3 宽%4 高%5 16进制图像数据 %6",vF.mpython_display_Bitmap_TOOLTIP="将16进制图像数据显示在OLED屏的指定位置",vF.MPYTHON_GET_PBM_DATA_MESSAGE0="获取内置图像 %1 模式%2",vF.MPYTHON_GET_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp 格式的单色图像文件,获取指定路径的图像文件数据,返回一个元组对象。",vF.MPYTHON_GET_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",vF.MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0="获取自定义图像 %1 模式%2",vF.MPYTHON_DISPLAY_PBM_DATA_MESSAGE0="在坐标 x %1 y %2 显示图像 %3",vF.MPYTHON_DISPLAY_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的单色图像文件",vF.MPYTHON_DISPLAY_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",vF.MPYTHON_BITMAP_FROM_FILE_MESSAGE0="在坐标 x %1 y %2 显示图像 %5 宽 %3 高 %4",vF.MPYTHON_BITMAP_FROM_FILE_TOOLTIP="",vF.MPYTHON_BITMAP_FROM_FILE_HELPURL="",vF.mpython_horizontal="水平",vF.mpython_vertical="垂直",vF.mpython_display_FrameBuffer_MESSAGE0="构建帧 列表 %1 长 %2 宽 %3 扫描模式 %4",vF.mpython_display_FrameBuffer_TOOLTIP="用图像取模后数据的列表 ,创建128x64的帧缓存区,以储存图片帧",vF.MPYTHON_FONT_DIGIFACE_11="仿数码管 11像素",vF.MPYTHON_FONT_DIGIFACE_16="仿数码管 16像素",vF.MPYTHON_FONT_DIGIFACE_21="仿数码管 21像素",vF.MPYTHON_FONT_DIGIFACE_30="仿数码管 30像素",vF.MPYTHON_FONT_DIGIFACE_44="仿数码管 44像素",vF.MPYTHON_FONT_DIGIFACE_IT_30="仿数码管 斜体 30像素",vF.MPYTHON_FONT_DIGIFACE_IT_42="仿数码管 斜体 42像素",vF.MPYTHON_FONT_DVSM_12="DejaVu Sans Mono 12像素",vF.MPYTHON_FONT_DVSM_16="DejaVu Sans Mono 16像素",vF.MPYTHON_FONT_DVSM_21="DejaVu Sans Mono 21像素",vF.MPYTHON_FONT_DVSMB_12="DejaVu Sans Mono 黑体 12像素",vF.MPYTHON_FONT_DVSMB_16="DejaVu Sans Mono 黑体 16像素",vF.MPYTHON_FONT_DVSMB_21="DejaVu Sans Mono 黑体 21像素",vF.MPYTHON_FONT_WRAP="自动换行",vF.MPYTHON_FONT_NO_WRAP="不换行",vF.MPYTHON_FACE_1="心形",vF.MPYTHON_FACE_2="心形(小)",vF.MPYTHON_FACE_3="高兴",vF.MPYTHON_FACE_4="笑脸",vF.MPYTHON_FACE_5="伤心",vF.MPYTHON_FACE_6="困惑",vF.MPYTHON_FACE_7="生气",vF.MPYTHON_FACE_8="睡着",vF.MPYTHON_FACE_9="惊讶",vF.MPYTHON_FACE_10="愚蠢",vF.MPYTHON_FACE_11="极妙",vF.MPYTHON_FACE_12="无聊",vF.MPYTHON_FACE_ROCK="石头",vF.MPYTHON_FACE_PAPER="布",vF.MPYTHON_FACE_SCISSORS="剪刀",vF.MPYTHON_FACE_ROCK_S="石头(小)",vF.MPYTHON_FACE_PAPER_S="布(小)",vF.MPYTHON_FACE_SCISSORS_S="剪刀(小)",vF.MPYTHON_DISPLAY_FONT_MESSAGE0="在坐标 x %1 y %2 显示 %3 以 %4 字体 %5",vF.MPYTHON_DISPLAY_FONT_TOOLTIP="",vF.MPYTHON_DISPLAY_FONT_HELPURL="",vF.mpython_front="正向",vF.mpython_reverse="反转",vF.mpython_display_blit_MESSAGE0="显示帧 坐标x %1 y %2",vF.mpython_display_blit_TOOLTIP="",vF.mpython_front_reverse_MESSAGE0="像素点bit %1",vF.mpython_front_reverse_TOOLTIP="用于显示之前",vF.mpython_images_append_MESSAGE0="动图显示 帧数%1 周期%2 长%3 宽%4",vF.mpython_images_append_TOOLTIP="上传至掌控板的pbm图片需命名为IMAGE.数字,后缀为pbm。如:IMAGE.1.pbm。帧数为7则数字为1至7",vF.mpython_button_is_pressed_MESSAGE0="按键%1 被按下",vF.mpython_button_is_pressed_TOOLTIP="",vF.mpython_button_both_pressed_MESSAGE0="AB按键都按下",vF.mpython_button_both_pressed_TOOLTIP="",vF.mpython_touchPad_value_MESSAGE0="按键%1 被触摸",vF.mpython_touchPad_value_TOOLTIP="",vF.mpython_touchPad_value_num_MESSAGE0="按键%1 触摸值",vF.mpython_touchPad_value_num_TOOLTIP="",vF.mpython_read_digital_MESSAGE0="读取引脚%1 数字值",vF.mpython_read_digital_TOOLTIP="",vF.mpython_read_DS18B20_MESSAGE0="DS18B20 防水温度传感器 引脚 %1",vF.mpython_read_DS18B20_TOOLTIP="",vF.mpython_read_DS18B20_HELPURL="http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",vF.mpython_set_digital_MESSAGE0="设置引脚 %2 数字值为 %1",vF.mpython_set_digital_TOOLTIP="",vF.mpython_read_analog_MESSAGE0="读取引脚 %1 模拟值",vF.mpython_read_analog_TOOLTIP="",vF.mpython_set_analog_MESSAGE0="设置引脚 %2 模拟值(PWM)为 %1",vF.mpython_set_analog_TOOLTIP="模拟输出是通过IO引脚输出脉宽调制信号,输出指定的电压值,简称PWM。",vF.mpython_set_RGB_MESSAGE0="设置 %1 号 RGB 灯颜色为 R %2 G %3 B %4",vF.mpython_set_RGB_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.mpython_set_RGB_color_MESSAGE0="设置 %1 号 RGB 灯颜色为 %2",vF.mpython_set_RGB_color_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.mpython_set_RGB_all_MESSAGE0="设置所有 RGB 灯颜色为 R %1 G %2 B %3",vF.mpython_set_RGB_all_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.mpython_set_RGB_color_all_MESSAGE0="设置所有 RGB 灯颜色为 %1",vF.mpython_set_RGB_color_all_TOOLTIP="原生亮度的 1/30 能较好显示色差",vF.mpython_fresh_RGB_MESSAGE0="RGB 灯设置生效",vF.mpython_fresh_RGB_TOOLTIP="",vF.mpython_off_RGB_MESSAGE0="关闭 RGB 灯",vF.mpython_off_RGB_TOOLTIP="",vF.mpython_buzz_state_MESSAGE0="停止播放音乐",vF.mpython_buzz_state_TOOLTIP="",vF.mpython_buzz_freq_MESSAGE0="播放连续音调 %1 引脚 %2",vF.mpython_buzz_freq_TOOLTIP="",vF.mpython_buzz_tone_MESSAGE0="播放音调 %1",vF.mpython_buzz_tone_TOOLTIP="",vF.MPYTHON_MUSIC_TONE_TEMPO_HELPURL="",vF.MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP="默认是掌控板的P6引脚",vF.MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0="播放音符 %1 引脚 %2",vF.MPYTHON_MUSIC_TONE_HELPURL="",vF.MPYTHON_MUSIC_TONE_TOOLTIP="",vF.MPYTHON_MUSIC_TONE_MESSAGE0="音调 %1",vF.MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL="",vF.MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP="",vF.MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0="音符 %1 节拍 %2",vF.MPYTHON_MUSIC_TICK_HELPURL="",vF.MPYTHON_MUSIC_TICK_TOOLTIP="",vF.MPYTHON_MUSIC_TICK_MESSAGE0="节拍 %1",vF.MPYTHON_4_LINES_HELPURL="",vF.MPYTHON_4_LINES_TOOLTIP="",vF.MPYTHON_4_LINES_MESSAGE0="%1",vF.NUMBER_1="1",vF.NUMBER_1_2="1/2",vF.NUMBER_1_4="1/4",vF.NUMBER_2="2",vF.NUMBER_4="4",vF.mpython_read_sound_MESSAGE0="声音值",vF.mpython_read_sound_TOOLTIP="",vF.mpython_read_light_MESSAGE0="光线值",vF.mpython_read_light_TOOLTIP="",vF.mpython_accelerometer_get_MESSAGE0="%1 轴加速度",vF.mpython_accelerometer_get_TOOLTIP="",vF.mpython_accelerometer_get_z_MESSAGE0="z轴加速度",vF.mpython_accelerometer_get_z_TOOLTIP="",vF.mpython_accelerometer_get_y_MESSAGE0="y轴加速度",vF.mpython_accelerometer_get_y_TOOLTIP="",vF.mpython_accelerometer_get_x_MESSAGE0="x轴加速度",vF.mpython_accelerometer_get_x_TOOLTIP="",vF.MPYTHON_ACCELEROMETER_RANGE_2G="±2g",vF.MPYTHON_ACCELEROMETER_RANGE_4G="±4g",vF.MPYTHON_ACCELEROMETER_RANGE_8G="±8g",vF.MPYTHON_ACCELEROMETER_RANGE_16G="±16g",vF.MPYTHON_ACCELEROMETER_RES_10_BIT="10bits",vF.MPYTHON_ACCELEROMETER_RES_12_BIT="12bits",vF.MPYTHON_ACCELEROMETER_RES_14_BIT="14bits",vF.MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP="设置加速度范围,默认为 ±2g。",vF.MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0="设置加速度范围为 %1",vF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP="设置加速度分辨率,默认为 10bits。",vF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0="设置加速度分辨率为 %1",vF.MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP="校准加速度计的3个轴(x,y,z)的加速值偏差。\n一般情况下无需校准,只有遇到加速度偏差较大时才要校准。\n x , y , z 为调整偏差值,可修正范围为 ±1g。\n注意:校准数据断电后不会保存。",vF.MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0="校准加速度值 %1 X轴偏差 %2 Y轴偏差 %3 Z轴偏差 %4",vF.MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP="仅适用于掌控板2.0及以上版本",vF.MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0="%1 轴 磁力",vF.MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP="仅适用于掌控板2.0及以上版本",vF.MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0="指南针方向",vF.MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP="仅适用于掌控板2.0及以上版本",vF.MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0="校准指南针",vF.MPYTHON_MAGNETIC_PEELING_TOOLTIP="仅适用于掌控板2.0及以上版本",vF.MPYTHON_MAGNETIC_PEELING_MESSAGE0="去除当前环境磁场",vF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP="仅适用于掌控板2.0及以上版本",vF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0="磁场强度",vF.MPYTHON_TILT_ANGLE_HELPURL="",vF.MPYTHON_TILT_ANGLE_TOOLTIP="",vF.MPYTHON_TILT_ANGLE_MESSAGE0="%1 轴倾斜角",vF.mpython_random_choice_MESSAGE0="返回随机项%1",vF.mpython_random_choice_TOOLTIP="以String格式,返回列表或字符串中的随机项",vF.MACHINE_TIME_PULSE_US_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",vF.MACHINE_TIME_PULSE_US_MESSAGE0="%1 外部 %2 电平持续时间(微秒)",vF.MACHINE_TIME_PULSE_US_TOOLTIP="",vF.MPYTHON_I2C_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",vF.MPYTHON_I2C_INIT_MESSAGE0="初始化i2c 速率%1",vF.MPYTHON_I2C_INIT_TOOLTIP="",vF.MPYTHON_I2C_DEV_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",vF.MPYTHON_I2C_DEV_INIT_MESSAGE0="初始化%1 SCL %2 SDA %3 速率 %4",vF.MPYTHON_I2C_DEV_INIT_TOOLTIP="",vF.MPYTHON_I2C_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",vF.MPYTHON_I2C_SCAN_MESSAGE0="%1 扫描地址",vF.MPYTHON_I2C_SCAN_TOOLTIP="返回一个数组对象",vF.MPYTHON_I2C_DEINIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",vF.MPYTHON_I2C_DEINIT_MESSAGE0="关闭%1总线",vF.MPYTHON_I2C_DEINIT_TOOLTIP="",vF.MPYTHON_I2C_WRITETO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",vF.MPYTHON_I2C_WRITETO_MESSAGE0="从%1 %5 地址%2 写入%3 停止位%4",vF.MPYTHON_I2C_WRITETO_TOOLTIP="地址:Number\n写入:Number、String",vF.MPYTHON_I2C_READFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",vF.MPYTHON_I2C_READFROM_MESSAGE0="从%1 %5 地址%2 读取 字节数%3 停止位%4",vF.MPYTHON_I2C_READFROM_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",vF.MPYTHON_I2C_READFROM_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",vF.MPYTHON_I2C_READFROM_INTO_MESSAGE0="从%1 %6 地址%2 读入缓存区%3 字节数%4 停止位%5",vF.MPYTHON_I2C_READFROM_INTO_TOOLTIP="",vF.MPYTHON_I2C_WRITETO_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",vF.MPYTHON_I2C_WRITETO_MEN_MESSAGE0="从%1 %5 地址%2 寄存器%4 写入%3",vF.MPYTHON_I2C_WRITETO_MEN_TOOLTIP="地址:Number\n写入:Number、String",vF.MPYTHON_I2C_READFROM_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",vF.MPYTHON_I2C_READFROM_MEN_MESSAGE0="从%1 %5 地址%2 寄存器%4 读取 字节数%3",vF.MPYTHON_I2C_READFROM_MEN_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",vF.MPYTHON_I2C_READFROM_MEN_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",vF.MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0="从%1 %6 地址%2 寄存器%5 读入缓存区%3 字节数%4",vF.MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP="地址:Number\n返回:读取数据的 bytes 对象的字符串",vF.mpython_print_MESSAGE0="调试输出 %1",vF.mpython_print_TOOLTIP="通过串口调试,输出字符串",vF.MPYTHON_PRINT_TO_CHART_TOOLTIP="",vF.MPYTHON_PRINT_TO_CHART_EMPTY_TITLE="打印数据到图表",vF.MPYTHON_PRINT_TO_CHART_INPUT_WITH="打印数据到图表",vF.MPYTHON_PRINT_TO_CHART_ITEM_TITLE="数据",vF.MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP="",vF.MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD="数据内容",vF.MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP="",vF.MPYTHON_INIT_CHART_TOOLTIP="",vF.MPYTHON_INIT_CHART_EMPTY_TITLE="初始化图表列标题",vF.MPYTHON_INIT_CHART_INPUT_WITH="初始化图表列标题",vF.MPYTHON_INIT_CHART_ITEM_TITLE="标题",vF.MPYTHON_INIT_CHART_ITEM_TOOLTIP="",vF.MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD="数据列标题",vF.MPYTHON_INIT_CHART_CONTAINER_TOOLTIP="",vF.MPYTHON_MS="毫秒",vF.MPYTHON_US="微秒",vF.MPYTHON_TIME_DIFFERENCE_HELPURL="",vF.MPYTHON_TIME_DIFFERENCE_MESSAGE0="返回运行时间差 开始时间 %1 结束时间 %2",vF.MPYTHON_TIME_DIFFERENCE_TOOLTIP="测量连续调用ticks_ms()、ticks_us()间的周期",vF.MPYTHON_TYPE_HELPURL="",vF.MPYTHON_TYPE_MESSAGE0="值 %1 的类型",vF.MPYTHON_TYPE_TOOLTIP="",vF.MPYTHON_TYPE_IS_HELPURL="",vF.MPYTHON_TYPE_IS_MESSAGE0="值 %1 的类型为 %2",vF.MPYTHON_TYPE_IS_TOOLTIP="",vF.MPYTHON_EVAL_HELPURL="",vF.MPYTHON_EVAL_MESSAGE0="计算表达式 %1 的结果",vF.MPYTHON_EVAL_TOOLTIP="计算字符串表达式,并返回结果",vF.MPYTHON_RETURN_HELPURL="",vF.MPYTHON_RETURN_MESSAGE0="返回 %1",vF.MPYTHON_RETURN_TOOLTIP="",vF.MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL="",vF.MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0="I2C数字光线",vF.MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP="",vF.MPYTHON_WIFI_ALL_CONFIG_HELPURL="",vF.MPYTHON_WIFI_ALL_CONFIG_MESSAGE0="WI-FI配置信息",vF.MPYTHON_WIFI_ALL_CONFIG_TOOLTIP="以元组形式返回所有wifi配置信息",vF.MPYTHON_WIFI_ISCONNECTED_HELPURL="",vF.MPYTHON_WIFI_ISCONNECTED_MESSAGE0="已连接到 WI-FI",vF.MPYTHON_WIFI_ISCONNECTED_TOOLTIP="",vF.MPYTHON_INIT_ASSISTANT_WIFI_HELPURL="",vF.MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0="Wi-Fi连接 语音助手 Wi-Fi 名称 %1 密码 %2",vF.MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP="掌控板通过串口把WIF传给语音助手",vF.MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL="",vF.MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP="需要先在文件系统将文件上传到板。",vF.MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0="读取 语音助手 文本文件 %1",vF.MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL="",vF.MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0="数码管显示 %1",vF.MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP="-999~9999",vF.MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL="",vF.MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0="清空数码管",vF.MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP="",vF.MPYTHON_MACHINE_RESET_HELPURL="",vF.MPYTHON_MACHINE_RESET_MESSAGE0="复位",vF.MPYTHON_MACHINE_RESET_TOOLTIP="与按下外部 RESET按键效果一样",vF.MPYTHON_BLUEBIT_GET_COLOR_HELPURL="",vF.MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0="I2C RGB 颜色 %1",vF.MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP="",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL="",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0="I2C RGB 颜色",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP="以列表形式返回",vF.MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL="",vF.MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0="I2C HSV 颜色 %1",vF.MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP="色调(H),饱和度(S),明度(V)",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL="",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0="I2C HSV 颜色",vF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP="色调(H),饱和度(S),明度(V)",vF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0="I2C力传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0="I2C电流传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0="I2C电压传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0="I2C磁场传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0="I2C PH传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0="I2C电导率传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0="I2C气压传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL="",vF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0="I2C光电门传感器 拨码 %1",vF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP="I2C地址与编码开关的需要对应",vF.MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL="",vF.MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0="拓展板 电机速度 %1",vF.MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP="",vF.MPYTHON_M1M2_LED_OFF_HELPURL="",vF.MPYTHON_M1M2_LED_OFF_MESSAGE0="拓展板 关灯 %1",vF.MPYTHON_M1M2_LED_OFF_TOOLTIP="",vF.MPYTHON_M1M2_LED_ON_HELPURL="",vF.MPYTHON_M1M2_LED_ON_MESSAGE0="拓展板 设灯 %1 亮度 %2",vF.MPYTHON_M1M2_LED_ON_TOOLTIP="",vF.MPYTHON_MUSIC_PIN_P6="默认",vF.MPYTHON_MUSIC_PIN_P6_HELPURL="",vF.MPYTHON_MUSIC_PIN_P6_MESSAGE0="%1",vF.MPYTHON_MUSIC_PIN_P6_TOOLTIP="",vF.MPYTHON_SLEEP_MESSAGE0="等待 %1 %2",vF.MPYTHON_SLEEP_TOOLTIP="在进行下一个命令前,等待设定的时间。\n1秒(s) = 1,000毫秒(ms)\n1秒(s) = 1,000,000微秒(μs)\n毫秒,符号ms(millisecond)\n微秒,符号μs(microsecond)",vF.MICROBIT_MICROBIT_RUNNING_TIME_MESSAGE0="运行时间",vF.MICROBIT_MICROBIT_RUNNING_TIME_TOOLTIP="获取开机或复位后的运行时间(毫秒)。",vF.MICROBIT_MICROBIT_RUNNING_TIME_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.running_time",vF.MICROBIT_MICROBIT_TEMPERATURE_MESSAGE0="温度",vF.MICROBIT_MICROBIT_TEMPERATURE_TOOLTIP="获取 micro:bit 的温度(℃)。",vF.MICROBIT_MICROBIT_TEMPERATURE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.temperature",vF.MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0="播放音乐 %1 等待 %2 循环 %3 引脚 %4",vF.MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP="播放内置的音乐,可以设置等待模式和循环播放。",vF.MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",vF.MICROBIT_MUSIC_PITCH_MESSAGE0="播放音调 %1 %2 延时 %3 毫秒 引脚 %4",vF.MICROBIT_MUSIC_PITCH_TOOLTIP="在设定的时间长度里播放音调。",vF.MICROBIT_MUSIC_PITCH_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",vF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0="引脚 %5 播放音符列表 %1 等待 %2 %3 循环 %4",vF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP="播放音符列表,如C4:4、G4:8等,音符为字符串形式。默认是掌控板的P6引脚",vF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",vF.MICROBIT_MUSIC_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",vF.MICROBIT_MUSIC_RESET_MESSAGE0="恢复音乐设置",vF.MICROBIT_MUSIC_RESET_TOOLTIP="将所有音乐设置 (当前节拍, 音阶和周期) 恢复成默认值。",vF.MICROBIT_MUSIC_STOP_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",vF.MICROBIT_MUSIC_STOP_MESSAGE0="停止播放音乐 引脚 %1",vF.MICROBIT_MUSIC_STOP_TOOLTIP="默认是掌控板的P6引脚",vF.MICROBIT_MUSIC_SET_TEMPO_MESSAGE0="设置每一拍等同 %1 分音符,每分钟节拍数 %2",vF.MICROBIT_MUSIC_SET_TEMPO_TOOLTIP="设置回放速度 (节拍)。一定数量的滴答代表一拍,每拍每分钟播放次数 (BPM 每分钟节拍)。",vF.MICROBIT_MUSIC_SET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",vF.MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0="设置播放速度为 %1 倍",vF.MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP="4分音符为1拍,每分钟节拍数默认120,为1倍的播放速度",vF.MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",vF.MICROBIT_MUSIC_GET_TEMPO_MESSAGE0="获取当前节拍",vF.MICROBIT_MUSIC_GET_TEMPO_TOOLTIP="获取当前节拍: 每节拍滴答数, 每分钟节拍 (BPM)。",vF.MICROBIT_MUSIC_GET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",vF.MICROBIT_NEOPIXEL_INITIALISE_MESSAGE0="使用 引脚 %1 控制, neopixel 彩灯数 %2 ",vF.MICROBIT_NEOPIXEL_INITIALISE_TOOLTIP="控制 neopixels 彩灯。需要设定 neopixels 彩灯数量和控制脚。",vF.MICROBIT_NEOPIXEL_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",vF.MICROBIT_NEOPIXEL_CLEAR_MESSAGE0="清除 neopixels 彩灯 %1",vF.MICROBIT_NEOPIXEL_CLEAR_TOOLTIP="清除所有 neopixels 彩灯",vF.MICROBIT_NEOPIXEL_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",vF.MICROBIT_NEOPIXEL_SHOW_MESSAGE0="显示 neopixels 彩灯 %1",vF.MICROBIT_NEOPIXEL_SHOW_TOOLTIP="显示 / 更新全部 neopixels 彩灯。",vF.MICROBIT_NEOPIXEL_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",vF.MICROBIT_NEOPIXEL_SET_MESSAGE0="neopixels 彩灯控制 %1 设置位置 %2 红色 %3 绿色 %4 蓝色 %5",vF.MICROBIT_NEOPIXEL_SET_TOOLTIP="更新指定的 neopixel 彩灯的红、绿、蓝 (RGB) 颜色",vF.MICROBIT_NEOPIXEL_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",vF.MICROBIT_PIN_TOUCHED_MESSAGE0="引脚 %1 被触摸",vF.MICROBIT_PIN_TOUCHED_TOOLTIP="如果引脚被触摸将返回 “真”。",vF.MICROBIT_PIN_TOUCHED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.is_touched",vF.MICROBIT_PIN_WAS_PRESSED_MESSAGE0="引脚 %1 曾经被触摸",vF.MICROBIT_PIN_WAS_PRESSED_TOOLTIP="如果引脚曾经被触摸将返回 “真”。",vF.MICROBIT_PIN_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.was_pressed",vF.MICROBIT_PIN_GET_PRESSES_MESSAGE0="引脚 %1 被触摸的次数",vF.MICROBIT_PIN_GET_PRESSES_TOOLTIP="返回被触摸的次数,然后清零。",vF.MICROBIT_PIN_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.get_presses",vF.MICROBIT_PIN_READ_ANALOG_MESSAGE0="读取引脚 %1 模拟电压",vF.MICROBIT_PIN_READ_ANALOG_TOOLTIP="读取引脚的模拟输入电压。",vF.MICROBIT_PIN_READ_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.read_analog",vF.MICROBIT_PIN_WRITE_ANALOG_MESSAGE0="设置模拟量 %1 到引脚 %2",vF.MICROBIT_PIN_WRITE_ANALOG_TOOLTIP="写入模拟参数到指定引脚上。",vF.MICROBIT_PIN_WRITE_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.write_analog",vF.MICROBIT_PIN_READ_DIGITAL_MESSAGE0="读取引脚 %1 的数字输入",vF.MICROBIT_PIN_READ_DIGITAL_TOOLTIP="读取引脚的数字输入 (真 或 假)。",vF.MICROBIT_PIN_READ_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.read_digital",vF.MICROBIT_PIN_WRITE_DIGITAL_MESSAGE0="设置数字输出 %1 到引脚 %2",vF.MICROBIT_PIN_WRITE_DIGITAL_TOOLTIP="写入数字量 (真 或 假) 到指定引脚。",vF.MICROBIT_PIN_WRITE_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.write_digital",vF.MICROBIT_RADIO_ON_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.on",vF.MICROBIT_RADIO_ON_MESSAGE0="打开无线广播",vF.MICROBIT_RADIO_ON_TOOLTIP="打开无线广播。需要明确声明调用,因为它会消耗更多功率和占用更多内存。",vF.MICROBIT_RADIO_OFF_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.off",vF.MICROBIT_RADIO_OFF_MESSAGE0="关闭无线广播",vF.MICROBIT_RADIO_OFF_TOOLTIP="关闭无线广播,节省功耗和内存。",vF.MICROBIT_RADIO_CONFIG_MESSAGE0="配置无线广播消息长度 %1 %2 最大队列数量 %3 %4 信道 %5 %6 广播功率 %7 %8 地址 %9 %10 组 %11 %12 数据速率 %13",vF.MICROBIT_RADIO_CONFIG_TOOLTIP="配置无线广播。\n 长度指单个消息的最大长度; \n 队列指可以存放在消息队列中消息的数量; \n 信道指无线广播使用的无线频率; \n 功率指发射广播信号的强度; \n 地址:32位值; \n 组:8位值(0-255); \n 数据速率指数据传输的速度。",vF.MICROBIT_RADIO_CONFIG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.config",vF.MICROBIT_RADIO_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.reset",vF.MICROBIT_RADIO_RESET_MESSAGE0="复位无线广播",vF.MICROBIT_RADIO_RESET_TOOLTIP="恢复无线广播到默认设置。",vF.MICROBIT_RADIO_SEND_STRING_MESSAGE0="发送消息 %1",vF.MICROBIT_RADIO_SEND_STRING_TOOLTIP="广播文字消息。",vF.MICROBIT_RADIO_SEND_STRING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",vF.MICROBIT_RADIO_SEND_BYTES_MESSAGE0="发送字节 %1",vF.MICROBIT_RADIO_SEND_BYTES_TOOLTIP="广播字节。",vF.MICROBIT_RADIO_SEND_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",vF.MICROBIT_RADIO_RECEIVE_MESSAGE0="接收消息",vF.MICROBIT_RADIO_RECEIVE_TOOLTIP="接收消息。",vF.MICROBIT_RADIO_RECEIVE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",vF.MICROBIT_RADIO_RECEIVE_BYTES_MESSAGE0="接收字节",vF.MICROBIT_RADIO_RECEIVE_BYTES_TOOLTIP="接收字节。",vF.MICROBIT_RADIO_RECEIVE_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",vF.MICROBIT_SPEECH_SAY_MESSAGE0="说 %1",vF.MICROBIT_SPEECH_SAY_TOOLTIP="尝试说英语",vF.MICROBIT_SPEECH_SAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#speech.say",vF.MICROBIT_SPEECH_PRONOUNCE_MESSAGE0="读 %1",vF.MICROBIT_SPEECH_PRONOUNCE_TOOLTIP="精确发音。",vF.MICROBIT_SPEECH_PRONOUNCE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#phonemes",vF.MICROBIT_SPEECH_SING_MESSAGE0="唱 %1",vF.MICROBIT_SPEECH_SING_TOOLTIP="象机器人一样唱歌。",vF.MICROBIT_SPEECH_SING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#singing",vF.MICROBIT_GESTURE_SHAKE="摇晃",vF.MICROBIT_GESTURE_UP="上",vF.MICROBIT_GESTURE_DOWN="下",vF.MICROBIT_GESTURE_LEFT="左",vF.MICROBIT_GESTURE_RIGHT="右",vF.MICROBIT_GESTURE_FACE_UP="朝上",vF.MICROBIT_GESTURE_FACE_DOWN="朝下",vF.MICROBIT_GESTURE_FREEFAIL="自由下落",vF.MICROBIT_IMAGE_HEART="心形",vF.MICROBIT_IMAGE_HEART_SMALL="心(小)",vF.MICROBIT_IMAGE_HAPPY="高兴",vF.MICROBIT_IMAGE_SMILE="笑脸",vF.MICROBIT_IMAGE_SAD="伤心",vF.MICROBIT_IMAGE_CONFUSED="困惑",vF.MICROBIT_IMAGE_ANGRY="生气",vF.MICROBIT_IMAGE_ASLEEP="睡着",vF.MICROBIT_IMAGE_SUPRISED="惊讶",vF.MICROBIT_IMAGE_SILLY="愚蠢",vF.MICROBIT_IMAGE_FABULOUS="极妙",vF.MICROBIT_IMAGE_MEH="无聊",vF.MICROBIT_IMAGE_YES="是",vF.MICROBIT_IMAGE_NO="否",vF.MICROBIT_IMAGE_CLOCK12="12点",vF.MICROBIT_IMAGE_CLOCK11="11点",vF.MICROBIT_IMAGE_CLOCK10="10点",vF.MICROBIT_IMAGE_CLOCK9="9点",vF.MICROBIT_IMAGE_CLOCK8="8点",vF.MICROBIT_IMAGE_CLOCK7="7点",vF.MICROBIT_IMAGE_CLOCK6="6点",vF.MICROBIT_IMAGE_CLOCK5="5点",vF.MICROBIT_IMAGE_CLOCK4="4点",vF.MICROBIT_IMAGE_CLOCK3="3点",vF.MICROBIT_IMAGE_CLOCK2="2点",vF.MICROBIT_IMAGE_CLOCK1="1点",vF.MICROBIT_IMAGE_ARROW_N="箭头-北",vF.MICROBIT_IMAGE_ARROW_NE="箭头-东北",vF.MICROBIT_IMAGE_ARROW_E="箭头-东",vF.MICROBIT_IMAGE_ARROW_SE="箭头-东南",vF.MICROBIT_IMAGE_ARROW_S="箭头-南",vF.MICROBIT_IMAGE_ARROW_SW="箭头-西南",vF.MICROBIT_IMAGE_ARROW_W="箭头-西",vF.MICROBIT_IMAGE_ARROW_NW="箭头-西北",vF.MICROBIT_IMAGE_TRIANGLE="三角形",vF.MICROBIT_IMAGE_TRIANGLE_LEFT="左三角形",vF.MICROBIT_IMAGE_CHESSBOARD="棋盘",vF.MICROBIT_IMAGE_DIAMOND="菱形",vF.MICROBIT_IMAGE_DIAMOND_SMALL="菱形(小)",vF.MICROBIT_IMAGE_SQUARE="方形",vF.MICROBIT_IMAGE_SQUARE_SMALL="方形(小)",vF.MICROBIT_IMAGE_RABBIT="兔子",vF.MICROBIT_IMAGE_COW="牛",vF.MICROBIT_IMAGE_MUSIC_CROTCHET="四分音符",vF.MICROBIT_IMAGE_MUSIC_QUAVER="八分音符",vF.MICROBIT_IMAGE_MUSIC_QUAVERS="颤音",vF.MICROBIT_IMAGE_PITCHFORK="叉子",vF.MICROBIT_IMAGE_XMAS="圣诞树",vF.MICROBIT_IMAGE_PACMAN="吃豆人",vF.MICROBIT_IMAGE_TARGET="目标",vF.MICROBIT_IMAGE_TSHIRT="T恤衫",vF.MICROBIT_IMAGE_ROLLERSKATE="轮滑",vF.MICROBIT_IMAGE_DUCK="鸭子",vF.MICROBIT_IMAGE_HOUSE="房子",vF.MICROBIT_IMAGE_TORTOISE="乌龟",vF.MICROBIT_IMAGE_BUTTERFLY="蝴蝶",vF.MICROBIT_IMAGE_STICKFIGURE="线条画",vF.MICROBIT_IMAGE_GHOST="幽灵",vF.MICROBIT_IMAGE_SWORD="宝剑",vF.MICROBIT_IMAGE_GIRAFFE="长颈鹿",vF.MICROBIT_IMAGE_SKULL="头",vF.MICROBIT_IMAGE_UMBRELLA="伞",vF.MICROBIT_IMAGE_SNAKE="蛇",vF.MICROBIT_IMAGE_ALL_CLOCKS="所有时钟",vF.MICROBIT_IMAGE_ALL_ARROWS="所有箭头",vF.MICROBIT_PIN_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",vF.MICROBIT_PIN_SET_SERVO_TOOLTIP="设置舵机角度,范围为 0 ~ 180度",vF.MICROBIT_PIN_SET_SERVO_MESSAGE0="设置舵机 引脚 %1 角度为 %2",vF.MICROBIT_PIN_SET_MODE_HELPURL="",vF.MICROBIT_PIN_SET_MODE_TOOLTIP="引脚模式有三种:悬空、上拉、下拉",vF.MICROBIT_PIN_SET_MODE_MESSAGE0="设置引脚 %1 模式为 %2",vF.MICROBIT_PIN_MODE_NO="悬空",vF.MICROBIT_PIN_MODE_UP="上拉",vF.MICROBIT_PIN_MODE_DOWN="下拉",vF.MICROBIT_UART_INIT_MESSAGE0="初始化串口波特率为 %3 TX为 %1 RX为 %2",vF.MICROBIT_UART_INIT_TOOLTIP="",vF.MICROBIT_UART_INIT_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",vF.MICROBIT_UART_ANY_MSG_RECEIVED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",vF.MICROBIT_UART_ANY_MSG_RECEIVED_TOOLTIP="",vF.MICROBIT_UART_ANY_MSG_RECEIVED_MESSAGE0="串口接收到数据",vF.MICROBIT_UART_READ_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",vF.MICROBIT_UART_READ_MSG_TOOLTIP="",vF.MICROBIT_UART_READ_MSG_MESSAGE0="读取串口 %1 字节",vF.MICROBIT_UART_READ_MSG_TO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",vF.MICROBIT_UART_READ_MSG_TO_TOOLTIP="",vF.MICROBIT_UART_READ_MSG_TO_MESSAGE0="读取串口 %1 字节存至 %2",vF.MICROBIT_UART_WRITE_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",vF.MICROBIT_UART_WRITE_MSG_TOOLTIP="",vF.MICROBIT_UART_WRITE_MSG_MESSAGE0="串口发送数据 %1",vF.MICROBIT_ALL_BYTES="全部",vF.MICROBIT_ALINE_BYTES="一行",vF.LABPLUS_BUTTON_IS_PRESSED_MESSAGE0="引脚 %1 被触发",vF.LABPLUS_BUTTON_IS_PRESSED_TOOLTIP="如果指定按键按下返回 “真”,否则返回 “假”。",vF.LABPLUS_BUTTON_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.is_pressed",vF.LABPLUS_BUTTON_WAS_PRESSED_MESSAGE0="引脚 %1 曾经被触发",vF.LABPLUS_BUTTON_WAS_PRESSED_TOOLTIP="如果按键曾经按下过返回 “真”,否则返回 “假”。",vF.LABPLUS_BUTTON_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.was_pressed",vF.LABPLUS_BUTTON_GET_PRESSES_MESSAGE0="引脚 %1 被触发过的次数",vF.LABPLUS_BUTTON_GET_PRESSES_TOOLTIP="返回按键按下的总次数,然后清除计数。",vF.LABPLUS_BUTTON_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.get_presses",vF.LABPLUS_LED_MESSAGE0="设置LED灯 引脚 %2 输出 %1",vF.LABPLUS_LED_TOOLTIP="",vF.LABPLUS_LED_HELPURL="http://wiki.labplus.cn/index.php?title=LED",vF.LABPLUS_INFRARED_IS_TRIGGERED_MESSAGE0="红外探测 引脚 %1 被触发",vF.LABPLUS_INFRARED_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_INFRARED_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%BA%A2%E5%A4%96%E6%8E%A2%E6%B5%8B",vF.LABPLUS_HEAT_SENSITIVE_DETECTOR_MESSAGE0="热敏传感器 引脚 %1 的值",vF.LABPLUS_HEAT_SENSITIVE_DETECTOR_TOOLTIP="",vF.LABPLUS_HEAT_SENSITIVE_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%AD%E6%95%8F%E7%94%B5%E9%98%BB",vF.LABPLUS_I2C_LIGHT_SENSOR_MESSAGE0="I2C数字光线传感器的值(lux)",vF.LABPLUS_I2C_LIGHT_SENSOR_TOOLTIP="",vF.LABPLUS_I2C_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E5%AD%97%E5%85%89%E7%BA%BF",vF.LABPLUS_WATER_LEVEL_DETECTOR_MESSAGE0="水位传感器 引脚 %1 的值",vF.LABPLUS_WATER_LEVEL_DETECTOR_TOOLTIP="",vF.LABPLUS_WATER_LEVEL_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B0%B4%E4%BD%8D",vF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_MESSAGE0="烟雾探测器 引脚 %1 被触发",vF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",vF.LABPLUS_BUZZER_FOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",vF.LABPLUS_BUZZER_FOR_TOOLTIP="",vF.LABPLUS_BUZZER_FOR_MESSAGE0="以频率 %1 激活蜂鸣器 引脚0 %2 毫秒",vF.LABPLUS_BUZZER_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",vF.LABPLUS_BUZZER_ON_TOOLTIP="",vF.LABPLUS_BUZZER_ON_MESSAGE0="以频率 %1 激活蜂鸣器 引脚0",vF.LABPLUS_BUZZER_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",vF.LABPLUS_BUZZER_OFF_TOOLTIP="",vF.LABPLUS_BUZZER_OFF_MESSAGE0="关闭蜂鸣器 引脚0",vF.LABPLUS_TM_HM_SENSOR_MESSAGE0="I2C温湿度传感器的 %1 值",vF.LABPLUS_TM_HM_SENSOR_TOOLTIP="",vF.LABPLUS_TM_HM_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B8%A9%E6%B9%BF%E5%BA%A6",vF.LABPLUS_TM_HM_SENSOR_TM="温度",vF.LABPLUS_TM_HM_SENSOR_HM="湿度",vF.LABPLUS_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",vF.LABPLUS_SET_SERVO_TOOLTIP="",vF.LABPLUS_SET_SERVO_MESSAGE0="设置舵机 引脚 %1 角度为 %2",vF.LABPLUS_FINGERPRINT_SENSOR_MESSAGE0="指纹传感器 引脚 %1 验证通过",vF.LABPLUS_FINGERPRINT_SENSOR_TOOLTIP="",vF.LABPLUS_FINGERPRINT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8C%87%E7%BA%B9",vF.LABPLUS_SET_MOTOR_HELPURL="",vF.LABPLUS_SET_MOTOR_TOOLTIP="",vF.LABPLUS_SET_MOTOR_MESSAGE0="设置电机 %1 方向 %2 速度 %3",vF.LABPLUS_SET_MOTOR_CLOCKWISE="正转",vF.LABPLUS_SET_MOTOR_ANTI_CLOCKWISE="反转",vF.LABPLUS_STOP_MOTOR_HELPURL="",vF.LABPLUS_STOP_MOTOR_TOOLTIP="",vF.LABPLUS_STOP_MOTOR_MESSAGE0="停止电机",vF.LABPLUS_GET_RFID_ID_MESSAGE0="射频卡 引脚 %1 验证通过",vF.LABPLUS_GET_RFID_ID_TOOLTIP="",vF.LABPLUS_GET_RFID_ID_HELPURL="http://wiki.labplus.cn/index.php?title=RFID",vF.LABPLUS_GET_RFID_VALUE_MESSAGE0="电子钱包 引脚 %1 余额",vF.LABPLUS_GET_RFID_VALUE_TOOLTIP="",vF.LABPLUS_GET_RFID_VALUE_HELPURL="",vF.LABPLUS_SET_RFID_VALUE_MESSAGE0="设置电子钱包 引脚 %1 余额 %2 %3",vF.LABPLUS_SET_RFID_VALUE_TOOLTIP="",vF.LABPLUS_SET_RFID_VALUE_HELPURL="",vF.LABPLUS_SET_RFID_ADD="增加",vF.LABPLUS_SET_RFID_MINUS="减少",vF.LABPLUS_SOUND_IS_TRIGGERED_MESSAGE0="声音传感器 引脚 %1 被触发",vF.LABPLUS_SOUND_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_SOUND_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%BA%A6%E5%85%8B%E9%A3%8E",vF.LABPLUS_USB_SWITCH_HELPURL="",vF.LABPLUS_USB_SWITCH_TOOLTIP="",vF.LABPLUS_USB_SWITCH_MESSAGE0="%1 USB开关 引脚 %2",vF.LABPLUS_USB_SWITCH_ON="打开",vF.LABPLUS_USB_SWITCH_OFF="关闭",vF.LABPLUS_VOICE_RECORD_HELPURL="",vF.LABPLUS_VOICE_RECORD_TOOLTIP="",vF.LABPLUS_VOICE_RECORD_MESSAGE0="%1 语音录放器 引脚 %2",vF.LABPLUS_VOICE_RECORD_ON="打开",vF.LABPLUS_VOICE_RECORD_OFF="关闭",vF.LABPLUS_RGB_INITIALISE_MESSAGE0="使用 引脚 %1 控制,RGB 彩灯数 %2 ",vF.LABPLUS_RGB_INITIALISE_TOOLTIP="控制 RGB 彩灯。需要设定 neopixels 彩灯数量和控制脚。",vF.LABPLUS_RGB_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",vF.LABPLUS_RGB_CLEAR_MESSAGE0="清除 RGB 彩灯 %1",vF.LABPLUS_RGB_CLEAR_TOOLTIP="清除所有 RGB 彩灯",vF.LABPLUS_RGB_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",vF.LABPLUS_RGB_SHOW_MESSAGE0="显示 RGB 彩灯 %1",vF.LABPLUS_RGB_SHOW_TOOLTIP="显示 / 更新全部 RGB 彩灯。",vF.LABPLUS_RGB_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",vF.LABPLUS_RGB_SET_MESSAGE0="RGB 彩灯控制 %1 设置位置 %2 红色 %3 绿色 %4 蓝色 %5",vF.LABPLUS_RGB_SET_TOOLTIP="更新指定的 RGB 彩灯的红、绿、蓝 (RGB) 颜色",vF.LABPLUS_RGB_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",vF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_MESSAGE0="设置扩展端口 IO %1 为 %2",vF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_TOOLTIP="0表示输出引脚,1表示输入引脚",vF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",vF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT="输入",vF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT="输出",vF.LABPLUS_READ_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",vF.LABPLUS_READ_EXTENDED_PIN_TOOLTIP="",vF.LABPLUS_READ_EXTENDED_PIN_MESSAGE0="读取扩展端口值 IO %1",vF.LABPLUS_WRITE_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",vF.LABPLUS_WRITE_EXTENDED_PIN_TOOLTIP="",vF.LABPLUS_WRITE_EXTENDED_PIN_MESSAGE0="设置扩展端口 IO %1 值为 %2",vF.LABPLUS_I2C_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%B6%85%E5%A3%B0%E6%B3%A2",vF.LABPLUS_I2C_ULTRASONIC_TOOLTIP="",vF.LABPLUS_I2C_ULTRASONIC_MESSAGE0="I2C超声波传感器的值",vF.MICROBIT_SET_MUSIC_PIN_HELPURL="",vF.MICROBIT_SET_MUSIC_PIN_TOOLTIP="",vF.MICROBIT_SET_MUSIC_PIN_MESSAGE0="设置默认蜂鸣器引脚为 %1",vF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E4%BA%BA%E4%BD%93%E6%84%9F%E5%BA%94",vF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_MESSAGE0="人体感应 引脚 %1 被触发",vF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%97%A8%E7%A3%81%E5%BC%80%E5%85%B3",vF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_MESSAGE0="门磁开关 引脚 %1 被触发",vF.LABPLUS_SOUND_LEVEL_SENSOR_HELPURL="",vF.LABPLUS_SOUND_LEVEL_SENSOR_TOOLTIP="",vF.LABPLUS_SOUND_LEVEL_SENSOR_MESSAGE0="声音传感器 引脚 %1 的值",vF.LABPLUS_SMOKE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",vF.LABPLUS_SMOKE_SENSOR_TOOLTIP="",vF.LABPLUS_SMOKE_SENSOR_MESSAGE0="烟雾传感器 引脚 %1 的值",vF.LABPLUS_SOIL_MOISTURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9C%9F%E5%A3%A4%E6%B9%BF%E5%BA%A6",vF.LABPLUS_SOIL_MOISTURE_SENSOR_TOOLTIP="",vF.LABPLUS_SOIL_MOISTURE_SENSOR_MESSAGE0="土壤湿度传感器 引脚 %1 的值",vF.LABPLUS_FAN_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8E%92%E9%A3%8E%E6%89%87",vF.LABPLUS_FAN_SWITCH_TOOLTIP="",vF.LABPLUS_FAN_SWITCH_MESSAGE0="%1 风扇 引脚 %2",vF.LABPLUS_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.LABPLUS_VOICE_RECORD_ON_TOOLTIP="",vF.LABPLUS_VOICE_RECORD_ON_MESSAGE0="打开录放器 %1 引脚 %2",vF.LABPLUS_VOICE_RECORD_PLAY="播放",vF.LABPLUS_VOICE_RECORD_REC="录音",vF.LABPLUS_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.LABPLUS_VOICE_RECORD_OFF_TOOLTIP="",vF.LABPLUS_VOICE_RECORD_OFF_MESSAGE0="关闭录放器 引脚 %1",vF.LABPLUS_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.LABPLUS_MOTOR_ON_TOOLTIP="",vF.LABPLUS_MOTOR_ON_MESSAGE0="打开直流电机 %1 速度 %2 引脚 %3",vF.LABPLUS_MOTOR_ON_CLOCKWISE="正转",vF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="反转",vF.LABPLUS_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.LABPLUS_MOTOR_OFF_TOOLTIP="",vF.LABPLUS_MOTOR_OFF_MESSAGE0="停止直流电机 引脚 %1",vF.LABPLUS_READ_COLOR_FROM_I2C_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%A2%9C%E8%89%B2",vF.LABPLUS_READ_COLOR_FROM_I2C_TOOLTIP="",vF.LABPLUS_READ_COLOR_FROM_I2C_MESSAGE0="I2C颜色传感器读取并储存颜色",vF.LABPLUS_RGB_COLOR_HELPURL="http://wiki.labplus.cn/index.php?title=RGB_LED",vF.LABPLUS_RGB_COLOR_TOOLTIP="读取已储存的颜色",vF.LABPLUS_RGB_COLOR_MESSAGE0="RGB颜色 %1",vF.LABPLUS_SET_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",vF.LABPLUS_SET_I2C_DIGITS_TOOLTIP="",vF.LABPLUS_SET_I2C_DIGITS_MESSAGE0="设置I2C数码管的值为 %1",vF.LABPLUS_TURN_OFF_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",vF.LABPLUS_TURN_OFF_I2C_DIGITS_TOOLTIP="",vF.LABPLUS_TURN_OFF_I2C_DIGITS_MESSAGE0="关闭I2C数码管",vF.LABPLUS_UART_SET_MIDI_MELODIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",vF.LABPLUS_UART_SET_MIDI_MELODIC_TOOLTIP="",vF.LABPLUS_UART_SET_MIDI_MELODIC_MESSAGE0="设置MIDI模块音调为 %1",vF.LABPLUS_UART_PLAY_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",vF.LABPLUS_UART_PLAY_MIDI_NOTE_TOOLTIP="",vF.LABPLUS_UART_PLAY_MIDI_NOTE_MESSAGE0="MIDI模块 %2 音符 %1",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Do="Do",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Re="Re",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Mi="Mi",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Fa="Fa",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Sol="Sol",vF.LABPLUS_UART_PLAY_MIDI_NOTE_La="La",vF.LABPLUS_UART_PLAY_MIDI_NOTE_Si="Si";vF.LABPLUS_UART_PLAY_MIDI_NOTE="播放",vF.LABPLUS_UART_OFF_MIDI_NOTE="停止",vF.LABPLUS_UART_OFF_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",vF.LABPLUS_UART_OFF_MIDI_NOTE_TOOLTIP="",vF.LABPLUS_UART_OFF_MIDI_NOTE_MESSAGE0="MIDI模块停止播放音符 %1",vF.LABPLUS_UART_INIT_MIDI_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",vF.LABPLUS_UART_INIT_MIDI_TOOLTIP="",vF.LABPLUS_UART_INIT_MIDI_MESSAGE0="初始化MIDI模块 %1",vF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%BE%AA%E8%BF%B9",vF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_MESSAGE0="循迹传感器 引脚 %1 检测为黑",vF.LABPLUS_TEMPERATURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=LM35%E6%B8%A9%E5%BA%A6",vF.LABPLUS_TEMPERATURE_SENSOR_TOOLTIP="",vF.LABPLUS_TEMPERATURE_SENSOR_MESSAGE0="LM35温度传感器 引脚 %1 的值",vF.LABPLUS_ROTATE_DIMMER_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%97%8B%E9%92%AE%E7%94%B5%E4%BD%8D%E5%99%A8",vF.LABPLUS_ROTATE_DIMMER_TOOLTIP="",vF.LABPLUS_ROTATE_DIMMER_MESSAGE0="旋转电位器 引脚 %1 的值",vF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9C%87%E5%8A%A8",vF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",vF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_MESSAGE0="震动传感器 引脚 %1 被触发",vF.LABPLUS_LASER_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%BF%80%E5%85%89%E5%8F%91%E5%B0%84",vF.LABPLUS_LASER_SWITCH_TOOLTIP="",vF.LABPLUS_LASER_SWITCH_MESSAGE0="%1 激光开关 引脚 %2",vF.LABPLUS_4BUTTON_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",vF.LABPLUS_4BUTTON_TOOLTIP="",vF.LABPLUS_4BUTTON_MESSAGE0="四向按键模块 引脚 %1 按键 %2 被按下",vF.BLUE="A",vF.GREEN="B",vF.RED="C",vF.YELLOW="D",vF.LABPLUS_JOYSTICK_HELPURL="",vF.LABPLUS_JOYSTICK_TOOLTIP="",vF.LABPLUS_JOYSTICK_MESSAGE0="摇杆 引脚A0 %1 引脚A1 %2 %3 轴的值",vF.LABPLUS_UART_MP3_PLAY_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",vF.LABPLUS_UART_MP3_PLAY_TOOLTIP="",vF.LABPLUS_UART_MP3_PLAY_MESSAGE0="MP3模块(UART)播放第 %1 首音乐",vF.LABPLUS_UART_MP3_SET_VOLUME_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",vF.LABPLUS_UART_MP3_SET_VOLUME_TOOLTIP="",vF.LABPLUS_UART_MP3_SET_VOLUME_MESSAGE0="设置MP3模块(UART)音量为 %1",vF.LABPLUS_UART_MP3_SET_STATUS_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",vF.LABPLUS_UART_MP3_SET_STATUS_TOOLTIP="",vF.LABPLUS_UART_MP3_SET_STATUS_MESSAGE0="设置MP3模块(UART)状态为 %1",vF.PAUSE="暂停",vF.STOP="停止",vF.PLAY="继续播放",vF.PLAYNEXT="下一首",vF.PLAYPREV="上一首",vF.LABPLUS_UART_INIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.LABPLUS_UART_INIT_TOOLTIP="",vF.LABPLUS_UART_INIT_MESSAGE0="初始化串口波特率为 %3 TX为 %1 RX为 %2",vF.LABPLUS_VOICE_RECORD_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.LABPLUS_VOICE_RECORD_ON1_TOOLTIP="",vF.LABPLUS_VOICE_RECORD_ON1_MESSAGE0="打开录放器 %1 %2 引脚REC %3 引脚PLAY %4",vF.LABPLUS_VOICE_RECORD_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",vF.LABPLUS_VOICE_RECORD_OFF1_TOOLTIP="",vF.LABPLUS_VOICE_RECORD_OFF1_MESSAGE0="关闭录放器 %1 引脚REC %2 引脚PLAY %3",vF.LABPLUS_MOTOR_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.LABPLUS_MOTOR_ON1_TOOLTIP="",vF.LABPLUS_MOTOR_ON1_MESSAGE0="打开直流电机 %1 速度 %2 引脚AIN1 %3 引脚AIN2 %4",vF.LABPLUS_MOTOR_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",vF.LABPLUS_MOTOR_OFF1_TOOLTIP="",vF.LABPLUS_MOTOR_OFF1_MESSAGE0="停止直流电机 %1 引脚AIN1 %2 引脚AIN2 %3",vF.LABPLUS_SET_I2C_LCD1602_CURSOR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",vF.LABPLUS_SET_I2C_LCD1602_CURSOR_TOOLTIP="",vF.LABPLUS_SET_I2C_LCD1602_CURSOR_MESSAGE0="设置LCD游标位置%1 X %2 Y %3",vF.LABPLUS_SET_I2C_LCD1602_PRINT_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",vF.LABPLUS_SET_I2C_LCD1602_PRINT_TOOLTIP="",vF.LABPLUS_SET_I2C_LCD1602_PRINT_MESSAGE0="设置LCD显示 %1",vF.LABPLUS_SET_I2C_LCD1602_SCROLL_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",vF.LABPLUS_SET_I2C_LCD1602_SCROLL_TOOLTIP="配合循环次数使用",vF.LABPLUS_SET_I2C_LCD1602_SCROLL_MESSAGE0="%1滚动LCD显示内容",vF.LABPLUS_SET_I2C_LCD1602_SCROLL_ALEFT="向左",vF.LABPLUS_SET_I2C_LCD1602_SCROLL_RIGHTWARD="向右",vF.LABPLUS_SET_I2C_LCD1602_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",vF.LABPLUS_SET_I2C_LCD1602_CLEAR_TOOLTIP="",vF.LABPLUS_SET_I2C_LCD1602_CLEAR_MESSAGE0="清除LCD显示内容",vF.LABPLUS_UART_ANY_MSG_RECEIVED_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.LABPLUS_UART_ANY_MSG_RECEIVED_TOOLTIP="",vF.LABPLUS_UART_ANY_MSG_RECEIVED_MESSAGE0="%1 接收到数据",vF.BLUEBIT_UART="串口",vF.BLUEBIT_INFRARED_SIGNAL="红外信号",vF.BLUEBIT_BLUEBOOTH="蓝牙",vF.LABPLUS_UART_READ_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.LABPLUS_UART_READ_MSG_TOOLTIP="",vF.LABPLUS_UART_READ_MSG_MESSAGE0="读取 %1 数据",vF.LABPLUS_UART_WRITE_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",vF.LABPLUS_UART_WRITE_MSG_TOOLTIP="",vF.LABPLUS_UART_WRITE_MSG_MESSAGE0="%1 发送数据 %2",vF.LABPLUS_SET_I2C_LED_MATRIX_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",vF.LABPLUS_SET_I2C_LED_MATRIX_TOOLTIP="",vF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE0="设置点阵 %1 第一行显示%2 第二行显示%3 第三行显示%4 第四行显示%5 第五行显示%6 第六行显示%7 第七行显示%8 第八行显示%9 ",vF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE2="设置点阵 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",vF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",vF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_TOOLTIP="",vF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_MESSAGE0="清空点阵",vF.LABPLUS_UART_SET_OLED_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",vF.LABPLUS_UART_SET_OLED_TOOLTIP="",vF.LABPLUS_UART_SET_OLED_MESSAGE0="设置OLED屏 %1 X %2 Y %3 显示文本 %4 字体为 %5",vF.LABPLUS_UART_SET_OLED_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",vF.LABPLUS_UART_SET_OLED_CLEAR_TOOLTIP="",vF.LABPLUS_UART_SET_OLED_CLEAR_MESSAGE0="在OLED屏上擦除矩阵 %1 X1 %2 Y1 %3 X2 %4 Y2 %5",vF.LABPLUS_UART_SET_OLED_CLEAR_ALL_MESSAGE0="清空OLED屏",vF.LABPLUS_UART_SET_OLED_CLEAR_ALL_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",vF.LABPLUS_UART_SET_OLED_CLEAR_ALL_TOOLTIP="",vF.LABPLUS_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%A8%A1%E6%8B%9F%E5%85%89%E7%BA%BF",vF.LABPLUS_LIGHT_SENSOR_TOOLTIP="",vF.LABPLUS_LIGHT_SENSOR_MESSAGE0="模拟光线传感器 引脚 %1 的值",vF.LABPLUS_BUTTON_MODULE_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",vF.LABPLUS_BUTTON_MODULE_IS_PRESSED_TOOLTIP="",vF.LABPLUS_BUTTON_MODULE_IS_PRESSED_MESSAGE0="按键模块 引脚 %1 被按下",vF.MICROBIT_EXT2_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",vF.MICROBIT_EXT2_SET_SERVO_TOOLTIP="",vF.MICROBIT_EXT2_SET_SERVO_MESSAGE0="设置舵机 %1 的角度为 %2",vF.MICROBIT_EXT2_SET_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",vF.MICROBIT_EXT2_SET_MOTOR_TOOLTIP="",vF.MICROBIT_EXT2_SET_MOTOR_MESSAGE0="设置马达 %1 方向 %2 速度 %3",vF.MICROBIT_EXT2_STOP_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",vF.MICROBIT_EXT2_STOP_MOTOR_TOOLTIP="",vF.MICROBIT_EXT2_STOP_MOTOR_MESSAGE0="停止马达 %1",vF.MICROBIT_EXT2_SOUND_VALUE_MESSAGE0="声音传感器的值",vF.MICROBIT_EXT2_SOUND_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",vF.MICROBIT_EXT2_SOUND_VALUE_TOOLTIP="",vF.MICROBIT_EXT2_LIGHT_VALUE_MESSAGE0="光线传感器的值",vF.MICROBIT_EXT2_LIGHT_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",vF.MICROBIT_EXT2_LIGHT_VALUE_TOOLTIP="",vF.MICROBIT_INIT_I2C_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",vF.MICROBIT_INIT_I2C_TOOLTIP="",vF.MICROBIT_INIT_I2C_MESSAGE0="初始化I2C 频率 %1 引脚SDA %2 引脚SCL %3",vF.MICROBIT_I2C_READ_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",vF.MICROBIT_I2C_READ_TOOLTIP="",vF.MICROBIT_I2C_READ_MESSAGE0="I2C读取从地址 %1 读取 %2 字节",vF.MICROBIT_I2C_WRITE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",vF.MICROBIT_I2C_WRITE_TOOLTIP="",vF.MICROBIT_I2C_WRITE_MESSAGE0="I2C写入 %2 到地址 %1",vF.MICROBIT_CONVERT_BYTEARRAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",vF.MICROBIT_CONVERT_BYTEARRAY_TOOLTIP="",vF.MICROBIT_CONVERT_BYTEARRAY_MESSAGE0="bytearray %1",vF.BOTBIT_MOTOR_ON_HELPURL="",vF.BOTBIT_MOTOR_ON_TOOLTIP="范围:-2000~2000",vF.BOTBIT_MOTOR_ON_MESSAGE0="设置机器人 %1 右轮速度为 %2 左轮速度为 %3",vF.BOTBIT_MOTOR_LEFT="左",vF.BOTBIT_MOTOR_RIGHT="右",vF.BOTBIT_SERVO_UP="上方",vF.BOTBIT_SERVO_DOWN="下方",vF.BOTBIT_MOTOR_FORWARD="前进",vF.BOTBIT_MOTOR_BACKWARD="后退",vF.BOTBIT_HOLDBALL_HELPURL="",vF.BOTBIT_HOLDBALL_TOOLTIP="",vF.BOTBIT_HOLDBALL_MESSAGE0="双臂抱起",vF.BOTBIT_STEERING_ENGINEL_HELPURL="",vF.BOTBIT_STEERING_ENGINEL_TOOLTIP="角度范围为-45°~45°",vF.BOTBIT_STEERING_ENGINEL_MESSAGE0="设置 %1臂 %2的角度为 %3",vF.BOTBIT_SERVO_Y="Y轴舵机",vF.BOTBIT_SERVO_X="X轴舵机",vF.BOTBIT_STEERING_ENGINE_LEG_HELPURL="",vF.BOTBIT_STEERING_ENGINE_LEG_TOOLTIP="角度范围为-45°~45°",vF.BOTBIT_STEERING_ENGINE_LEG_MESSAGE0="设置 %1腿 %2舵机的角度为 %3",vF.BOTBIT_UPDATEPOSITION_HELPURL="",vF.BOTBIT_UPDATEPOSITION_TOOLTIP="",vF.BOTBIT_UPDATEPOSITION_MESSAGE0="刷新舵机角度",vF.BOTBIT_ULTRASONIC_HELPURL="",vF.BOTBIT_ULTRASONIC_TOOLTIP="",vF.BOTBIT_ULTRASONIC_MESSAGE0="超声波传感器的值",vF.BOTBIT_WALKING_HELPURL="",vF.BOTBIT_WALKING_TOOLTIP="周期越短, 速度越快, 推荐1000~2000",vF.BOTBIT_WALKING_MESSAGE0="舞步(walking) 步数%2 周期%3 方向%1 ",vF.BOTBIT_WALKING_FORWARD="前",vF.BOTBIT_WALKING_BACK="后",vF.BOTBIT_MOONWALKER_HELPURL="",vF.BOTBIT_MOONWALKER_TOOLTIP="推荐周期1000~2000, 幅度10~50",vF.BOTBIT_MOONWALKER_MESSAGE0="舞步(moonwalker) 步数%2 周期%3 幅度%4 方向%1 ",vF.BOTBIT_MOONWALKER_L="左",vF.BOTBIT_MOONWALKER_R="右",vF.BOTBIT_CRUSAITO_HELPURL="",vF.BOTBIT_CRUSAITO_TOOLTIP="推荐步数2~10, 幅度10~50",vF.BOTBIT_CRUSAITO_MESSAGE0="舞步(crusaito) 步数%2 周期%3 幅度%4 方向%1",vF.BOTBIT_CRUSAITO_CW="逆时针",vF.BOTBIT_CRUSAITO_ANTICW="顺时针",vF.BOTBIT_FLAPPING_HELPURL="",vF.BOTBIT_FLAPPING_TOOLTIP="推荐步数5~15, 幅度10~30, 周期1000~2000",vF.BOTBIT_FLAPPING_MESSAGE0="舞步(flapping) 步数%2 周期%3 幅度%4 方向%1",vF.BOTBIT_FLAPPING_FORWARD="前",vF.BOTBIT_FLAPPING_BACK="后",vF.BOTBIT_HOME_HELPURL="",vF.BOTBIT_HOME_TOOLTIP="",vF.BOTBIT_HOME_MESSAGE0="机器人舞步初始化",vF.LABPLUS_UART_SET_MIDI_VOL_HELPURL="http://wiki.labplus.cn/index.php?title=MIDI(%E7%94%B5%E5%AD%90%E7%90%B4)",vF.LABPLUS_UART_SET_MIDI_VOL_TOOLTIP="",vF.LABPLUS_UART_SET_MIDI_VOL_MESSAGE0="设置MIDI模块音量为 %1",vF.labplus_mapping_MESSAGE0="映射%1 从%2 , %3到%4 , %5",vF.labplus_mapping_TOOLTIP="将0~100中的10映射到0~200中并返回映射值",vF.labplus_mapping_HELPURL="",vF.JOINT_MIDI_PIANO="平台钢琴",vF.JOINT_MIDI_BRIGHTACOUSTICPIANO="亮音钢琴",vF.JOINT_MIDI_ELECTRICGRANDPIANO="电钢琴",vF.JOINT_MIDI_HARPSICHORD="大键琴",vF.JOINT_MIDI_Celesta="钢片琴",vF.JOINT_MIDI_Glockenspiel="钟琴",vF.JOINT_MIDI_Musicalbox="音乐盒",vF.JOINT_MIDI_Marimba="马林巴琴",vF.JOINT_MIDI_Xylophone="木琴",vF.JOINT_MIDI_TubularBell="管钟",vF.JOINT_MIDI_Dulcimer="洋琴",vF.JOINT_Vibraphone="颤音琴",vF.JOINT_MIDI_ORGAN="音栓风琴",vF.JOINT_Acoustic_Guitar="木吉他",vF.JOINT_Electric_Guitar="电吉他",vF.JOINT_Acoustic_Bass="民谣贝斯",vF.JOINT_String_Ensemble="弦乐合奏",vF.JOINT_Violin="小提琴",vF.JOINT_Trumpet="小号",vF.JOINT_Sax="萨克斯",vF.JOINT_Steel_Drums="钢鼓",vF.JOINT_Lead="合成音主旋律",vF.JOINT_Pad="合成音衬底",vF.LABPLUS_PLAY_BUZZER_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",vF.LABPLUS_PLAY_BUZZER_NOTE_TOOLTIP="",vF.LABPLUS_PLAY_BUZZER_NOTE_MESSAGE0="播放音调 %1",vF.Carbit_init_MESSAGE0="CarBit初始化",vF.Carbit_init_TOOLTIP="",vF.Carbit_init_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_setLeftMotor_MESSAGE0="B2电机速度 %1",vF.Carbit_setLeftMotor_TOOLTIP="范围:-100~100",vF.Carbit_setLeftMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_setRightMotor_MESSAGE0="B1电机速度 %1",vF.Carbit_setRightMotor_TOOLTIP="范围:-100~100",vF.Carbit_setRightMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_analog_light_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_analog_light_TOOLTIP="Q3对应Pin1,Q4对应Pin2",vF.Carbit_analog_light_MESSAGE0="%1 模拟光线的值",vF.Carbit_Speed_U10_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_Speed_U10_TOOLTIP="对应U10",vF.Carbit_Speed_U10_MESSAGE0="左轮速度",vF.Carbit_Speed_U11_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_Speed_U11_TOOLTIP="对应U11",vF.Carbit_Speed_U11_MESSAGE0="右轮速度",vF.Carbit_Distance_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_Distance_TOOLTIP="",vF.Carbit_Distance_MESSAGE0="超声波的值",vF.Carbit_tracking_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",vF.Carbit_tracking_TOOLTIP="",vF.Carbit_tracking_MESSAGE0="循迹参数 %1 直行速度 %2 最大限速 %3 转弯延时 %5 转弯速度系数 %4 ",vF.XUNFEI_SPEECH_TTS_HELPURL="",vF.XUNFEI_SPEECH_TTS_TOOLTIP="合成音频文件格式只能是 *.pcm",vF.XUNFEI_SPEECH_TTS_MESSAGE0="[讯飞语音] 合成音频 %1 APPID %2 APISecret %3 APIKey %4 文字内容 %5 转存为音频文件 %6",vF.XUNFEI_SPEECH_IAT_HELPURL="",vF.XUNFEI_SPEECH_IAT_TOOLTIP="可识别的音频格式有 *.pcm 与 *.wav",vF.XUNFEI_SPEECH_IAT_MESSAGE0="[讯飞语音] 识别音频 %1 APPID %2 APISecret %3 APIKey %4 待识别音频文件 %5",vF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",vF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",vF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[讯飞语音] 识别结果",vF.MPYTHON_ZKAI_LCD_INIT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdinittype1-freq15000000-colorlcdblack",vF.MPYTHON_ZKAI_LCD_INIT_MESSAGE0="LCD 屏幕初始化",vF.MPYTHON_ZKAI_LCD_INIT_TOOLTIP="初始化 LCD 屏幕显示",vF.MPYTHON_ZKAI_LCD_ROTATION_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",vF.MPYTHON_ZKAI_LCD_ROTATION_MESSAGE0="LCD 屏幕方向%1",vF.MPYTHON_ZKAI_LCD_ROTATION_TOOLTIP="设置 LCD 屏幕方向,取值范围 [0,3], 从0到3依次顺时针旋转",vF.MPYTHON_ZKAI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",vF.MPYTHON_ZKAI_SENSOR_RESET_MESSAGE0="摄像头 初始化",vF.MPYTHON_ZKAI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",vF.MPYTHON_ZKAI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",vF.MPYTHON_ZKAI_SENSOR_ENABLE_MESSAGE0="摄像头%1",vF.MPYTHON_ZKAI_SENSOR_ENABLE_TOOLTIP="获取图像",vF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdwidth",vF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_MESSAGE0="LCD 获取%1",vF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_TOOLTIP="返回 LCD 的宽度(水平分辨率);高度(垂直分辨率)",vF.MPYTHON_ZKAI_LCD_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",vF.MPYTHON_ZKAI_LCD_MI_MESSAGE0="LCD 设置镜像",vF.MPYTHON_ZKAI_LCD_MI_TOOLTIP="设置是否镜像",vF.MPYTHON_ZKAI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",vF.MPYTHON_ZKAI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",vF.MPYTHON_ZKAI_LCD_TEXT_TOOLTIP="仅支持字母和数字",vF.MPYTHON_ZKAI_SENSOR_OffOn_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%85%B3%E9%97%AD%E6%91%84%E5%83%8F%E5%A4%B4",vF.MPYTHON_ZKAI_SENSOR_OffOn_MESSAGE0="摄像头%1",vF.MPYTHON_ZKAI_SENSOR_OffOn_TOOLTIP="1 表示开启摄像头 0 表示关闭摄像头",vF.MPYTHON_ZKAI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",vF.MPYTHON_ZKAI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",vF.MPYTHON_ZKAI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",vF.MPYTHON_ZKAI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",vF.MPYTHON_ZKAI_SENSOR_RETURN_MESSAGE0="摄像头 获取%1",vF.MPYTHON_ZKAI_SENSOR_RETURN_TOOLTIP="(ZKAI)摄像头返回参数(宽高,获取帧缓冲,获取ID)",vF.MPYTHON_ZKAI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",vF.MPYTHON_ZKAI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",vF.MPYTHON_ZKAI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",vF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",vF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",vF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",vF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%A2%9E%E7%9B%8A%E5%80%BC",vF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_MESSAGE0="摄像头 获取增益值",vF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_TOOLTIP="获取摄像头增益值",vF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",vF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 水平镜像%1",vF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",vF.MPYTHON_ZKAI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",vF.MPYTHON_ZKAI_IMAGE_LAB_MESSAGE0="(掌控AI)寻找颜色 LAB值%1",vF.MPYTHON_ZKAI_IMAGE_LAB_TOOLTIP="image寻找颜色",vF.MPYTHON_ZKAI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",vF.MPYTHON_ZKAI_TRACE_COLOR_MESSAGE0="(掌控AI)追踪色块 LAB颜色%1 边界框小于%2 像素小于%3 过滤",vF.MPYTHON_ZKAI_TRACE_COLOR_TOOLTIP="追踪色块",vF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_HELPURL="",vF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(掌控AI)追踪颜色 显示%1",vF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",vF.MPYTHON_ZKAI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_ALL_MESSAGE0="(掌控AI)%1获取识别后色块的 所有参数",vF.MPYTHON_ZKAI_BLOB_ALL_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_X_MESSAGE0="(掌控AI)%1获取识别后色块的 x坐标",vF.MPYTHON_ZKAI_BLOB_X_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_Y_MESSAGE0="(掌控AI)%1获取识别后色块的 y坐标",vF.MPYTHON_ZKAI_BLOB_Y_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_W_MESSAGE0="(掌控AI)%1获取识别后色块的 宽度",vF.MPYTHON_ZKAI_BLOB_W_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_H_MESSAGE0="(掌控AI)%1获取识别后色块的 高度",vF.MPYTHON_ZKAI_BLOB_H_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_NUMBER_MESSAGE0="(掌控AI)%1获取识别后色块的 数量",vF.MPYTHON_ZKAI_BLOB_NUMBER_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_CENTER_X_MESSAGE0="(掌控AI)%1获取识别后色块的 中心x坐标",vF.MPYTHON_ZKAI_BLOB_CENTER_X_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_CENTER_Y_MESSAGE0="(掌控AI)%1获取识别后色块的 中心y坐标",vF.MPYTHON_ZKAI_BLOB_CENTER_Y_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",vF.MPYTHON_ZKAI_BLOB_ORTHOGON_MESSAGE0="(掌控AI)%1获取识别后色块的 矩形",vF.MPYTHON_ZKAI_BLOB_ORTHOGON_TOOLTIP="返回blob 类 -- 色块对象",vF.MPYTHON_ZKAI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_FACE_TRACKING_MESSAGE0="(掌控AI)选择训练模型 人脸",vF.MPYTHON_ZKAI2_FACE_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",vF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_MESSAGE0="(掌控AI)调用摄像头进行 人脸识别",vF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_TOOLTIP="可以识别并且追踪人脸,显示人脸大小等",vF.MPYTHON_ZKAI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_MESSAGE0="(掌控AI)获取识别后人脸的 所有参数",vF.MPYTHON_ZKAI2_RESULT_FACE_TOOLTIP="获取识别后人脸的 所有参数",vF.MPYTHON_ZKAI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_X_MESSAGE0="(掌控AI)获取识别后人脸的 x坐标",vF.MPYTHON_ZKAI2_RESULT_FACE_X_TOOLTIP="获取识别后人脸的 x坐标",vF.MPYTHON_ZKAI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_Y_MESSAGE0="(掌控AI)获取识别后人脸的 y坐标",vF.MPYTHON_ZKAI2_RESULT_FACE_Y_TOOLTIP="获取识别后人脸的 y坐标",vF.MPYTHON_ZKAI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_W_MESSAGE0="(掌控AI)获取识别后人脸的 宽度",vF.MPYTHON_ZKAI2_RESULT_FACE_W_TOOLTIP="获取识别后人脸的 宽度",vF.MPYTHON_ZKAI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_H_MESSAGE0="(掌控AI)获取识别后人脸的 高度",vF.MPYTHON_ZKAI2_RESULT_FACE_H_TOOLTIP="获取识别后人脸的 高度",vF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_MESSAGE0="(掌控AI)获取识别后人脸的 置信度",vF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_TOOLTIP="获取识别后人脸的 置信度",vF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_MESSAGE0="(掌控AI)获取识别后人脸的 数量",vF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_TOOLTIP="获取识别后人脸的 数量",vF.MPYTHON_ZKAI_LCD_DISPLAY_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddisplayimage-roiauto",vF.MPYTHON_ZKAI_LCD_DISPLAY_MESSAGE0="LCD 显示生效",vF.MPYTHON_ZKAI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示一张 image",vF.MPYTHON_ZKAI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",vF.MPYTHON_ZKAI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",vF.MPYTHON_ZKAI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",vF.MPYTHON_ZKAI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_20class_TRACKING_MESSAGE0="(掌控AI)选择训练模型 20类",vF.MPYTHON_ZKAI2_20class_TRACKING_TOOLTIP="可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",vF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(掌控AI)调用摄像头进行 20类识别",vF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_TOOLTIP="调用摄像头进行 20类识别",vF.MPYTHON_ZKAI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_MESSAGE0="(掌控AI)获取识别后20类的 所有参数",vF.MPYTHON_ZKAI2_RESULT_20CLASS_TOOLTIP="获取识别后20类的 所有参数",vF.MPYTHON_ZKAI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_X_MESSAGE0="(掌控AI)获取识别后20类的 x坐标",vF.MPYTHON_ZKAI2_RESULT_20CLASS_X_TOOLTIP="获取识别后20类的 x坐标",vF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_MESSAGE0="(掌控AI)获取识别后20类的 y坐标",vF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_TOOLTIP="获取识别后20类的 y坐标",vF.MPYTHON_ZKAI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_W_MESSAGE0="(掌控AI)获取识别后20类的 宽度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_W_TOOLTIP="获取识别后20类的 宽度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_H_MESSAGE0="(掌控AI)获取识别后20类的 高度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_H_TOOLTIP="获取识别后20类的 高度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_MESSAGE0="(掌控AI)获取识别后20类的 置信度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_TOOLTIP="获取识别后20类的 置信度",vF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(掌控AI)获取识别后20类的 数量",vF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_TOOLTIP="获取识别后20类的 数量",vF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_MESSAGE0="(掌控AI)获取识别后20类的 类型",vF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_TOOLTIP="获取识别后20类的 类型可以放入获取识别的参数,可以识别20个类型,分别是0-19为飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛,餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",vF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_MESSAGE0="(掌控AI)获取识别后20类的 类型数量",vF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_TOOLTIP="获取识别后20类的 类型数量",vF.MPYTHON_ZKAI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_NUMBER_DISCERN_MESSAGE0="(掌控AI)选择训练模型 手写数字",vF.MPYTHON_ZKAI2_NUMBER_DISCERN_TOOLTIP="选择训练模型 手写数字识别",vF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",vF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_MESSAGE0="(掌控AI)调用摄像头进行 手写数字识别",vF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_TOOLTIP="调用摄像头进行 手写数字识别",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_MESSAGE0="(掌控AI)获取识别后手写数字的 所有参数",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_TOOLTIP="手写数字识别参数",vF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_MESSAGE0="(掌控AI)获取识别后手写数字的 数字",vF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_TOOLTIP="手写数字识别 数字",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(掌控AI)获取识别后手写数字的 置信度",vF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_TOOLTIP="手写数字 识别数字 置信度",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_TOOLTIP="",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_MESSAGE0="(掌控AI)获取 识别%1",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_MESSAGE0="(掌控AI)获取 识别 所有参数",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_MESSAGE0="(掌控AI)人脸识别",vF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_TOOLTIP="可以放入获取识别的参数",vF.MPYTHON_ZKAI_IMAGE_20CLASS_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",vF.MPYTHON_ZKAI_IMAGE_20CLASS_TOOLTIP="(掌控AI)可以放入获取识别的参数,可以识别20个类型,分别是飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛, 餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",vF.MPYTHON_ZKAI_LCD_SHOW_REC_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawrectanglex-y-w-h-color-thickness1-fillfalse",vF.MPYTHON_ZKAI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",vF.MPYTHON_ZKAI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",vF.MPYTHON_ZKAI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",vF.MPYTHON_ZKAI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",vF.MPYTHON_ZKAI_LCD_SHOW_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawlinex0-y0-x1-y1-color-thickness1",vF.MPYTHON_ZKAI_LCD_CLEAR_ALL_MESSAGE0="LCD 显示清空",vF.MPYTHON_ZKAI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",vF.MPYTHON_ZKAI_LCD_CLEAR_ALL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdclear",vF.MPYTHON_ZKAI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",vF.MPYTHON_ZKAI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",vF.MPYTHON_ZKAI_LCD_return_colour_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagegetpixelx-y-rgbtuple",vF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",vF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",vF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcirclex-y-radius-color-thickness1-fillfalse",vF.MPYTHON_ZKAI_LCD_TEXT_MOST_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",vF.MPYTHON_ZKAI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",vF.MPYTHON_ZKAI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",vF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",vF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",vF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcrossx-y-color-size5-thickness1",vF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",vF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",vF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawarrowx0-y0-x1-y1-color-thickness1",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-2%EF%BC%9A-%E6%98%BE%E7%A4%BA%E5%9B%BE%E7%89%87",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagetorainbowcopyfalse",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="LCD 显示热图颜色",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="可以在液晶屏上显示一张 image的热图颜色",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagesavepath-roi-quality50",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagecopyroi-copytofbfalse",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",vF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_NEGATE="数字反转",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻转",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="线性极",vF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="对数极",vF.MPYTHON_ZKAI_SENSOR_PATTERN_GRAYSCALE="灰度",vF.MPYTHON_ZKAI_SENSOR_PATTERN_COLOR="彩色",vF.MPYTHON_ZKAI_SENSOR_ENABLE_START="开始抓取图像",vF.MPYTHON_ZKAI_SENSOR_ENABLE_STOP="停止抓取图像",vF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_H="水平镜像",vF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_V="垂直翻转",vF.MPYTHON_ZKAI_SENSOR_SETS_CONTRAST="对比度",vF.MPYTHON_ZKAI_SENSOR_SETS_BRIGHTNESS="亮度",vF.MPYTHON_ZKAI_SENSOR_SETS_SATURATION="饱和度",vF.MPYTHON_ZKAI2_FACE_YOLO="人脸识别",vF.MPYTHON_ZKAI2_CLASS_20_YOLO="20类识别",vF.MPYTHON_ZKAI2_MNIST_NET="数字识别",vF.MPYTHON_ZKAI2_PHOTOGRAPH_FACE_YOLO="人脸",vF.MPYTHON_ZKAI2_PHOTOGRAPH_CLASS_20_YOLO="20类",vF.MPYTHON_ZKAI_TRACE_COLOR_RECTANGLE="矩形",vF.MPYTHON_ZKAI_TRACE_COLOR_CROSS="十字",vF.MPYTHON_NAME_PYTHON_ENVIRONMENT_HELPURL="",vF.MPYTHON_NAME_PYTHON_ENVIRONMENT_MESSAGE0="声明python 运行环境",vF.MPYTHON_NAME_PYTHON_ENVIRONMENT_TOOLTIP="",vF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="I2C获取颜色",vF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="返回列表",vF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",vF.MPYTHON_LARK_GET_COLOR_MESSAGE0="I2C获取 %1",vF.MPYTHON_lARK_RED="红色",vF.MPYTHON__LARK_GREEN="绿色",vF.MPYTHON__LARK_BLUE="蓝色",vF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="I2C获取HSV",vF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="i2C获取HSV %1",vF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",vF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="I2C获取颜色",vF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",vF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="识别 %1",vF.MPYTHON_LARK_RED="红色",vF.MPYTHON_LARK_GREEN="绿色",vF.MPYTHON_LARK_BLUE="蓝色",vF.MPYTHON_LARK_ORANGE="橙色",vF.MPYTHON_LARK_YELLOW="黄色",vF.MPYTHON_LARK_PURPLE="紫色",vF.MPYTHON_LARK_CYAN="青色",vF.MPYTHON_LARK_NONE="无色",vF.MPYTHON_LARK_NULL="无法获取",vF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",vF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="I2C超声波",vF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="I2C设置 %1 速度 %2",vF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="I2C获取 %1 巡线值",vF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="右边",vF.mpython_LARK_GET_LINE_LEFT_ON_I2C="左边",vF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="I2C循迹传感 %1 遇到黑线",vF.MPYTHON_LARK_SEARCH_LEFT="左边",vF.MPYTHON_LARK_SEARCH_RIGHT="右边",vF.MPYTHON_LARK_SEARCH_LEFT2="两边都",vF.MPYTHON_LARK_SEARCH_RIGHT2="两边都没有",vF.MPYTHON_LARK_SEARCH_BOTH="两边都",vF.MPYTHON_LARK_SEARCH_NONE="两边都没有",vF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",vF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="千里马获取颜色",vF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",vF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="千里马获取 %1",vF.MPYTHON_lARK_CAR_RED="红色",vF.MPYTHON__LARK_CAR_GREEN="绿色",vF.MPYTHON__LARK_CAR_BLUE="蓝色",vF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="千里马获取HSV",vF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",vF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="千里马获取HSV %1",vF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",vF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="千里马识别颜色",vF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",vF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="千里马识别颜色 %1",vF.MPYTHON_LARK_CAR_RED="红色",vF.MPYTHON_LARK_CAR_GREEN="绿色",vF.MPYTHON_LARK_CAR_BLUE="蓝色",vF.MPYTHON_LARK_CAR_ORANGE="橙色",vF.MPYTHON_LARK_CAR_YELLOW="黄色",vF.MPYTHON_LARK_CAR_PURPLE="紫色",vF.MPYTHON_LARK_CAR_CYAN="青色",vF.MPYTHON_LARK_CAR_NONE="无识别",vF.MPYTHON_LARK_CAR_NULL="识别错误",vF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",vF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="千里马获取超声波",vF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="千里马获取 %1 循迹数值",vF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="右边",vF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="左边",vF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",vF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="千里马循迹传感器 %1 碰到黑线",vF.MPYTHON_LARK_CAR_SEARCH_LEFT="左边",vF.MPYTHON_LARK_CAR_SEARCH_RIGHT="右边",vF.MPYTHON_LARK_CAR_SEARCH_LEFT2="两边",vF.MPYTHON_LARK_CAR_SEARCH_NONE="两边都没有",vF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="电机驱动 %1 速度 %2",vF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",vF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="千里马 %1 速度 %2",vF.MPYTHON_LARK_CAR_MOTION_LEFT="左转",vF.MPYTHON_LARK_CAR_MOTION_RIGHT="右转",vF.MPYTHON_LARK_CAR_MOTION_FORWARD="前进",vF.MPYTHON_LARK_CAR_MOTION_BACKWARD="后退",vF.MPYTHON_LARK_CAR_MOTION_STOP="停止",vF.MPYTHON_DEFINE_THREAD_MESSAGE0="定义线程 %1",vF.MPYTHON_RUN_THREAD_MESSAGE0="运行线程 %1",vF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) 转换数字为bytes %1 %2 %3 %4 待转换数字 %5",vF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) 解包bytes为数字 %1 %2 %3 %4 待转换bytes %5",vF.LITTLE_ENDIAN="低位优先(默认)",vF.BIG_ENDIAN="高位优先",vF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[适用2.0板] 当掌控板 %1 时",vF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",vF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="向左倾斜",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="向右倾斜",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="向前倾斜",vF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="向后倾斜",vF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="正面朝上",vF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="正面朝下",vF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="被单击",vF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="被双击",vF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="坠落",vF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="横滚角",vF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="俯仰角",vF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",vF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",vF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="掌控板 %1",vF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",vF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",vF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="按键 %1 已经按下",vF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",vF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",vF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="按键 %1 曾经按下",vF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",vF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",vF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="按键 %1 按下过的次数",vF.MPYTHON2_BUTTON_EVENT_MESSAGE0="当按键 %1 被 %2 时",vF.MPYTHON2_BUTTON_EVENT_HELPURL="",vF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",vF.MPYTHON2_BUTTON_EVENT_PRESSED="按下",vF.MPYTHON2_BUTTON_EVENT_RELEASED="松开",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="触摸键 %1 已经按下",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="触摸键 %1 曾经按下",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="触摸键 %1 按下过的次数",vF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",vF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="触摸键 %1 值",vF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="当触摸键 %1 被 %2 时",vF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",vF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",vF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="触摸",vF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="释放",vF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="设置触摸键 %1 阀值为 %2",vF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",vF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",vF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",vF.BLE_UUID_TOOLTIP="",vF.BLE_SETUP_PERIPHERAL_HELPURL="",vF.BLE_SETUP_PERIPHERAL_TOOLTIP="",vF.BLE_SETUP_PERIPHERAL_MESSAGE0="构建 BLE 外围设备对象 %1 显示名称 %2 Service UUID %3",vF.BLE_ADD_CHARACTERISTIC_HELPURL="",vF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",vF.BLE_ADD_CHARACTERISTIC_MESSAGE0="定义 BLE 属性 %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",vF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",vF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",vF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE 外围设备 %1",vF.BLE_START_BROADCASTING="开始广播",vF.BLE_STOP_BROADCASTING="停止广播",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",vF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="读 BLE 设备的属性 %1",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",vF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="写 BLE 设备的属性 %1 %2 值 %3 Notify %4",vF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",vF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",vF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE 外围设备断开连接",vF.BLE_PERIPHERAL_MAC_HELPURL="",vF.BLE_PERIPHERAL_MAC_TOOLTIP="",vF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE 外围设备 MAC地址",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",vF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="当 BLE 与中央设备建立连接时 %1 连接句柄 %2 地址类型 %3 中央设备的MAC地址 %4",vF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",vF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",vF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="当 BLE 设备的属性值被改写时 %1 连接句柄 %2 被写属性句柄 %3 写入的数据 %4",vF.BLE_SETUP_CENTERAL_HELPURL="",vF.BLE_SETUP_CENTERAL_TOOLTIP="",vF.BLE_SETUP_CENTERAL_MESSAGE0="构建 BLE 中央设备对象 显示名称 %1",vF.BLE_CENTERAL_CONNECT_HELPURL="",vF.BLE_CENTERAL_CONNECT_TOOLTIP="",vF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE 中央设备连接到 %1 %2",vF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",vF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",vF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE 外围设备已连接 ?",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",vF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="设定 %1 为 已连接外围设备 属性对象 %2 Service UUID %3 Characteristic UUID %4",vF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",vF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",vF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="读 已连接外围设备的 属性 %1 值",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",vF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="写 已连接外围设备的 属性 %1 值 %2",vF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",vF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",vF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="当 已连接外围设备发起 Notify 通知事件时 %1 属性的值柄 %2 通知的属性值 %3",vF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",vF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",vF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="已连接的外围设备 %1",vF.BLE_CENTERAL_CLOSE_HELPURL="",vF.BLE_CENTERAL_CLOSE_TOOLTIP="",vF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE 中央设备 断开连接",vF.BLE_INFO_NAME="蓝牙名称",vF.BLE_INFO_MAC="MAC地址",vF.BLE_INFO_RSSI="信号强度",vF.BLE_INFO_ADDRTYPE="地址类型",vF.BLE_INFO_ADVTYPE="广播类型",vF.BLE_INFO_DATA="原始数据(元组)",vF.BLE_SETUP_UART_HELPURL="",vF.BLE_SETUP_UART_TOOLTIP="",vF.BLE_SETUP_UART_MESSAGE0="构建 BLE UART从机 显示名称 %1",vF.BLE_UART_IS_CONNECTED_HELPURL="",vF.BLE_UART_IS_CONNECTED_TOOLTIP="",vF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART 已连接 ?",vF.BLE_UART_ANY_HELPURL="",vF.BLE_UART_ANY_TOOLTIP="",vF.BLE_UART_ANY_MESSAGE0="BLE UART 可读字节数量",vF.BLE_UART_IRQ_HELPURL="",vF.BLE_UART_IRQ_TOOLTIP="",vF.BLE_UART_IRQ_MESSAGE0="当 BLE UART 接收到数据时 %1 执行 %2",vF.BLE_UART_READ_HELPURL="",vF.BLE_UART_READ_TOOLTIP="从 UART 另一端发送过来的消息",vF.BLE_UART_READ_MESSAGE0="已接收数据",vF.BLE_UART_WRITE_HELPURL="",vF.BLE_UART_WRITE_TOOLTIP="",vF.BLE_UART_WRITE_MESSAGE0="BLE UART 发送字节 %1",vF.BLE_UART_CLOSE_HELPURL="",vF.BLE_UART_CLOSE_TOOLTIP="",vF.BLE_UART_CLOSE_MESSAGE0="BLE UART 断开连接",vF.BLE_SETUP_UART_MASTER_HELPURL="",vF.BLE_SETUP_UART_MASTER_TOOLTIP="",vF.BLE_SETUP_UART_MASTER_MESSAGE0="构建 BLE UART主机 连接到 %1 %2",vF.BLE_SETUP_HID_HELPURL="",vF.BLE_SETUP_HID_TOOLTIP="",vF.BLE_SETUP_HID_MESSAGE0="构建 BLE HID %1 对象 %2 显示名称 %3 电池电量 %4",vF.BLE_HID_MOUSE="鼠标",vF.BLE_HID_KEYBOARD="键盘",vF.BLE_HID_CONSUMER="遥控器",vF.BLE_HID_ADVERTISE_HELPURL="",vF.BLE_HID_ADVERTISE_TOOLTIP="",vF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID设备 %1",vF.BLE_HID_CONNECT_EVENT_HELPURL="",vF.BLE_HID_CONNECT_EVENT_TOOLTIP="",vF.BLE_HID_CONNECT_EVENT_MESSAGE0="当 BLE HID设备 连接时",vF.BLE_HID_DISCONNECT_HELPURL="",vF.BLE_HID_DISCONNECT_TOOLTIP="",vF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID设备 断开连接",vF.BLE_HID_BATTERY_LEVEL_HELPURL="",vF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",vF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID设备 电池电量",vF.BLE_HID_MOUSE_BUTTONS_HELPURL="",vF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",vF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="鼠标键 %1",vF.BLE_HID_MOUSE_CLICK_HELPURL="",vF.BLE_HID_MOUSE_CLICK_TOOLTIP="",vF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID 鼠标 点击按键 %1",vF.BLE_HID_MOUSE_PRESS_HELPURL="",vF.BLE_HID_MOUSE_PRESS_TOOLTIP="",vF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID 鼠标 长按按键 %1",vF.BLE_HID_MOUSE_RELEASE_HELPURL="",vF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",vF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID 鼠标 释放按键 %1",vF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",vF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",vF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID 鼠标 释放所有按键",vF.BLE_HID_MOUSE_MOVE_HELPURL="",vF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - 光标移动量,范围 ±127 。\nwheel - 滚轮,范围 ±127 。",vF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID 鼠标 光标移动 %1 X轴移动量 %2 Y轴移动量 %3 滚轮 %4",vF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",vF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",vF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="键盘按键 %1",vF.BLE_HID_KEYBOARD_SEND_HELPURL="",vF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",vF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID 键盘 按下按键 %1",vF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",vF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",vF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID 键盘 同时按下按键 %1 %2 %3",vF.BLE_HID_KEYBOARD_PRESS_HELPURL="",vF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",vF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID 键盘 长按按键 %1",vF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",vF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",vF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID 键盘 释放按键 %1",vF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",vF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",vF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID 键盘 释放所有按键",vF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",vF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",vF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="遥控器键 %1",vF.BLE_HID_CONSUMER_SEND_HELPURL="",vF.BLE_HID_CONSUMER_SEND_TOOLTIP="",vF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID 遥控器点击 %1",vF.BLE_SETUP_IBEACON_HELPURL="",vF.BLE_SETUP_IBEACON_TOOLTIP="",vF.BLE_SETUP_IBEACON_MESSAGE0="构建 BLE iBeacon设备 %1 UUID %2 major %3 minor %4",vF.BLE_IBEACON_ADVERTISE_HELPURL="",vF.BLE_IBEACON_ADVERTISE_TOOLTIP="",vF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon设备 %1",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="返回电量,单位mV",vF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="拓展板的电压值(mV)",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="返回编码后的红外脉冲数据buff",vF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="拓展板 红外脉冲任意编码 %1 载波频率(Hz) %2 code总数 %3 循环码位置 %4 code列表 %5 编码波形数据 %6",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="返回编码后的红外脉冲数据buff\n用户码:0~255\n命令码:0~255",vF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="拓展板 红外脉冲NEC编码 %1 用户码 %2 命令码 %3",vF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",vF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",vF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="拓展板 发送红外脉冲数据 %1 %2",vF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="只发一次",vF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="持续发送",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="当发送重复码后,使用此函数来停止发送。",vF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="拓展板 停止发送红外脉冲数据",vF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",vF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="学习开始后,需等待4秒,之后返回学习结果。";vF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="拓展板 开始红外学习",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="拓展板 红外学习有结果 ?",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP="返回学习后的“红外编码数据”,须在 learn 函数后使用。",vF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="拓展板 学习到的红外编码数据",vF.MPYTHON_MLX90615_SET_HELPURL="",vF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 非接触测温传感器 设置发射系数%1",vF.MPYTHON_MLX90615_SET_TOOLTIP="",vF.MPYTHON_MLX90615_GET_HELPURL="",vF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 非接触测温传感器 获取系数",vF.MPYTHON_MLX90615_GET_TOOLTIP="",vF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",vF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 非接触测温传感器 获取测温",vF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",vF.MPYTHON_MQ135_INIT_HELPURL="",vF.MPYTHON_MQ135_INIT_MESSAGE0="MQ135初始化 输出引脚%1 温度%2 ℃ 湿度%3 %",vF.MPYTHON_MQ135_INIT_TOOLTIP="MQ135上的VCC 连接扩展板的电源口 V ,GND连接扩展板的地线口 G ,AO输出连接扩展板的引脚 P0/P1(即选引脚)\nMQ135主要用于检测空气中的二氧化碳、酒精、苯、氮氧化物、氨等气体的浓度",vF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 返回 %1",vF.MPYTHON_MQ135_OPTIONS_HELPURL="",vF.MPYTHON_MQ135_OPTIONS_TOOLTIP="返回探测到的二氧化碳的百万分之一(假设只有空气中的二氧化碳) ppm浓度",vF.MPYTHON_MQ135_GET_RZERO="校正传感器电阻",vF.MPYTHON_MQ135_GET_CORRECTED_RZERO="校正传感器电阻(校准温度、湿度)",vF.MPYTHON_MQ135_GET_PPM="二氧化碳、酒精、苯、氮氧化物、氨等气体ppm浓度",vF.MPYTHON_MQ135_GET_CORRECTED_PPM="二氧化碳、酒精、苯、氮氧化物、氨等气体ppm浓度(校准温度、湿度)",vF.mpython_gyroscope_get_HELPURL="",vF.mpython_gyroscope_get_MESSAGE0="%1 轴角速度",vF.mpython_gyroscope_get_TOOLTIP="v2.3版本以上掌控版适用",vF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",vF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",vF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",vF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",vF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",vF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",vF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",vF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",vF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",vF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="设置角速度范围,默认为 ±256dps。仅适用于掌控板2.3及以上版本",vF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="设置角速度范围为 %1",vF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",vF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="校准陀螺仪角速度计的3个轴(x,y,z)的角速度值偏差。\n一般情况下无需校准,只有遇到角速度偏差较大时才要校准。\n x , y , z 为调整偏差值,可修正范围为 ±1024dps。\n注意:v2.3版本以后适用",vF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="校准角速度值 %1 X轴偏差 %2 Y轴偏差 %3 Z轴偏差 %4";const XF=vF,VF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"是數字",TEXT_IS_ALPHA:"是字母",TEXT_IS_ALNUM:"是數字和字母的組合",TEXT_LIST_START:"初始化列表 [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"初始化元組 (",TEXT_TUPLE_END:")",TEXT_DICT_START:"初始化字典 {",TEXT_DICT_END:"}",TEXT_SET_START:"初始化集合 {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",ADD_COMMENT:"添加註釋",CHANGE_VALUE_TITLE:"更改值:",CLEAN_UP:"整理塊",COLLAPSE_ALL:"折疊塊",COLLAPSE_BLOCK:"折疊塊",COLOUR_BLEND_COLOUR1:"顏色1",COLOUR_BLEND_COLOUR2:"顏色2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"比例",COLOUR_BLEND_TITLE:"混合",COLOUR_BLEND_TOOLTIP:"用一個給定的比率(0.0-1.0)混合兩種顏色。",COLOUR_PICKER_HELPURL:"https://zh.wikipedia.org/wiki/顏色",COLOUR_PICKER_TOOLTIP:"從調色板中選擇一種顏色。",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"隨機顏色",COLOUR_RANDOM_TOOLTIP:"隨機選擇一種顏色。",COLOUR_RGB_BLUE:"藍色",COLOUR_RGB_GREEN:"綠色",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"紅色",COLOUR_RGB_TITLE:"顏色",COLOUR_RGB_TOOLTIP:"通過指定紅色、綠色和藍色的量創建一種顏色。所有的值必須介於0和100之間。",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"中斷循環",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"繼續下一次循環",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"中斷包含它的循環。",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"跳過這個循環的剩余部分,並繼續下一次叠代。",CONTROLS_FLOW_STATEMENTS_WARNING:"警告:此塊僅可用於在一個循環內。",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"為每個項目 %1 在列表中 %2",CONTROLS_FOREACH_TOOLTIP:"遍歷每個列表中的項目,將變量“%1”設定到該項中,然後執行某些語句。",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"使用 %1 從範圍 %2 到 %3 每隔 %4",CONTROLS_FOR_TOOLTIP:"從起始數到結尾數中取出變量“%1”的值,按指定的時間間隔,執行指定的塊。",CONTROLS_IF_ELSEIF_TOOLTIP:"在if語句塊中增加一個條件。",CONTROLS_IF_ELSE_TOOLTIP:"添加一個最終的,包括所有情況的節到if塊中。",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",CONTROLS_IF_IF_TOOLTIP:"增加、刪除或重新排列各節來重新配置“if”塊。",CONTROLS_IF_MSG_ELSE:"否則",CONTROLS_IF_MSG_ELSEIF:"否則如果",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",CONTROLS_IF_MSG_IF:"如果",CONTROLS_IF_TOOLTIP_1:"如果值為真,執行一些語句。",CONTROLS_IF_TOOLTIP_2:"如果值為真,則執行第一塊語句。否則,則執行第二塊語句。",CONTROLS_IF_TOOLTIP_3:"如果第一個值為真,則執行第一塊的語句。否則,如果第二個值為真,則執行第二塊的語句。",CONTROLS_IF_TOOLTIP_4:"如果第一個值為真,則執行第一塊對語句。否則,如果第二個值為真,則執行語句的第二塊。如果沒有值為真,則執行最後一塊的語句。",CONTROLS_REPEAT_FOREVER:"一直重復",CONTROLS_REPEAT_FOREVER_TOOLTIP:"一直執行一些語句。",CONTROLS_REPEAT_HELPURL:"https://zh.wikipedia.org/wiki/For循環",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"重復 %1 次",CONTROLS_REPEAT_TOOLTIP:"多次執行一些語句。",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"重復直到",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"重復當",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"只要值為假,執行一些語句。",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"只要值為真,執行一些語句。",DELETE_ALL_BLOCKS:"刪除所有%1塊嗎?",DELETE_BLOCK:"刪除塊",DELETE_VARIABLE:"刪除“%1”變量",DELETE_VARIABLE_CONFIRMATION:"刪除“%2”變量的%1種用途麽?",DELETE_X_BLOCKS:"刪除塊",DISABLE_BLOCK:"禁用塊",DUPLICATE_BLOCK:"復制",ENABLE_BLOCK:"啟用塊",EXPAND_ALL:"展開塊",EXPAND_BLOCK:"展開塊",EXTERNAL_INPUTS:"多行輸入",HELP:"幫助",INLINE_INPUTS:"單行輸入",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"創建空列表",TUPLE_CREATE_EMPTY_TITLE:"創建空元組",DICT_CREATE_EMPTY_TITLE:"創建空字典",SET_CREATE_EMPTY_TITLE:"創建空集合",LISTS_CREATE_EMPTY_TOOLTIP:"返回一個列表,長度為 0,不包含任何數據記錄",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"列表",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"元組",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"字典",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"集合",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個列表塊。",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個元組塊。",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個字典塊。",SET_CREATE_WITH_CONTAINER_TOOLTIP:"增加、刪除或重新排列各部分以此重新配置這個集合塊。",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"初始化列表",TUPLE_CREATE_WITH_INPUT_WITH:"初始化元組",DICT_CREATE_WITH_INPUT_WITH:"初始化字典",SET_CREATE_WITH_INPUT_WITH:"初始化集合",LISTS_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到列表中。",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到元組中。",DICT_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到字典中。",SET_CREATE_WITH_ITEM_TOOLTIP:"將一個項添加到集合中。",LISTS_CREATE_WITH_TOOLTIP:"建立一個具有任意數量項目的列表。",LISTS_GET_INDEX_FIRST:"第一",LISTS_GET_INDEX_FROM_END:"倒數第",LISTS_GET_INDEX_FROM_START:"第",LISTS_GET_INDEX_GET:"獲得",LISTS_GET_INDEX_GET_REMOVE:"取出並移除",LISTS_GET_INDEX_LAST:"最後",LISTS_GET_INDEX_RANDOM:"隨機",LISTS_GET_INDEX_REMOVE:"移除",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"在列表 %1 中移除 %2 項",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"返回列表中的第一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_FROM:"返回在列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"返回列表中的最後一項。",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"隨機返回列表中的一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"移除並返回列表中的第一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM:"移除並返回列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"移除並返回列表中的最後一個項目。",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"移除並返回列表中的一個隨機項目中。",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"移除列表中的第一項",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM:"移除在列表中的指定位置的項。",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"移除列表中的最後一項",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"刪除列表中的一個隨機的項。",LISTS_GET_SUBLIST_END_FROM_END:"到倒數第#",LISTS_GET_SUBLIST_END_FROM_START:"到#",LISTS_GET_SUBLIST_END_LAST:"到最後",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"從頭獲得子列表",LISTS_GET_SUBLIST_START_FROM_END:"從倒數#取得子列表",LISTS_GET_SUBLIST_START_FROM_START:"從#取得子列表",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"復制列表中指定的部分。",LISTS_INDEX_FROM_END_TOOLTIP:"%1是最後一項。",LISTS_INDEX_FROM_START_TOOLTIP:"%1是第一個項目。",LISTS_INDEX_OF_FIRST:"找出第一個項出現",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"找出最後一個項出現",LISTS_INDEX_OF_TOOLTIP:"返回在列表中的第一/最後一個匹配項的索引值。如果找不到項目則返回0",LISTS_INLIST:"在列表中",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1是空的",LISTS_ISEMPTY_TOOLTIP:"如果改列表為空,則返回真。",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"%1的長度",LISTS_LENGTH_TOOLTIP:"返回列表的長度。",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"建立列表 項 %1 重復 %2 次",LISTS_REPEAT_TOOLTIP:"建立包含指定重復次數的值的列表。",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"為",LISTS_SET_INDEX_INSERT:"插入在",LISTS_SET_INDEX_SET:"設置",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"在列表的起始處添加該項。",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM:"插入在列表中指定位置的項。",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"將該項追加到列表的末尾。",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"在列表中隨機插入項。",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"設置列表中的第一個項目。",LISTS_SET_INDEX_TOOLTIP_SET_FROM:"設置在列表中指定位置的項。",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"設置列表中的最後一項。",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"設置列表中一個隨機的項目。",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"升序",LISTS_SORT_ORDER_DESCENDING:"降序",LISTS_SORT_TITLE:"排序%1 %2 %3",LISTS_SORT_TOOLTIP:"排序一個列表的拷貝。",LISTS_SORT_TYPE_IGNORECASE:"按字母排序,忽略大小寫",LISTS_SORT_TYPE_NUMERIC:"按數字排序",LISTS_SORT_TYPE_TEXT:"按字母排序",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"從文本制作列表",LISTS_SPLIT_TEXT_FROM_LIST:"從列表組合文本",LISTS_SPLIT_TOOLTIP_JOIN:"加入文本列表至一個文本,由分隔符分隔。",LISTS_SPLIT_TOOLTIP_SPLIT:"拆分文本到文本列表,按每個分隔符拆分。",LISTS_SPLIT_WITH_DELIMITER:"用分隔符",LOGIC_BOOLEAN_FALSE:"假",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"返回真或假。",LOGIC_BOOLEAN_TRUE:"真",LOGIC_COMPARE_HELPURL:"https://zh.wikipedia.org/wiki/不等",LOGIC_COMPARE_TOOLTIP_EQ:"如果兩個輸入結果相等,則返回真。",LOGIC_COMPARE_TOOLTIP_GT:"如果第一個輸入結果比第二個大,則返回真。",LOGIC_COMPARE_TOOLTIP_GTE:"如果第一個輸入結果大於或等於第二個輸入結果,則返回真。",LOGIC_COMPARE_TOOLTIP_LT:"如果第一個輸入結果比第二個小,則返回真。",LOGIC_COMPARE_TOOLTIP_LTE:"如果第一個輸入結果小於或等於第二個輸入結果,則返回真。",LOGIC_COMPARE_TOOLTIP_NEQ:"如果兩個輸入結果不相等,則返回真。",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"非%1",LOGIC_NEGATE_TOOLTIP:"如果輸入結果為假,則返回真;如果輸入結果為真,則返回假。",LOGIC_NULL:"空",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"返回空值。",LOGIC_OPERATION_AND:"和",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"或",LOGIC_OPERATION_TOOLTIP_AND:"如果兩個輸入結果都為真,則返回真。",LOGIC_OPERATION_TOOLTIP_OR:"如果至少有一個輸入結果為真,則返回真。",LOGIC_TERNARY_CONDITION:"測試",LOGIC_TERNARY_HELPURL:"https://zh.wikipedia.org/wiki/條件運算符",LOGIC_TERNARY_IF_FALSE:"如果為假",LOGIC_TERNARY_IF_TRUE:"如果為真",LOGIC_TERNARY_TOOLTIP:"檢查“test”中的條件。如果條件為真,則返回“if true”的值,否則,則返回“if false”的值。",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://zh.wikipedia.org/wiki/算術",MATH_ARITHMETIC_TOOLTIP_ADD:"返回兩個數字的和。",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"返回兩個數字的商。",MATH_ARITHMETIC_TOOLTIP_MINUS:"返回兩個數字的區別。",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"返回兩個數字的乘積。",MATH_ARITHMETIC_TOOLTIP_POWER:"返回第一個數的第二個數次冪。",MATH_CHANGE_HELPURL:"https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95",MATH_CHANGE_TITLE:"將變量 %1 的值增加 %2",MATH_CHANGE_TOOLTIP:"將一個數添加到變量“%1”。",MATH_CONSTANT_HELPURL:"https://zh.wikipedia.org/wiki/數學常數",MATH_CONSTANT_TOOLTIP:"返回一個常見常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(無窮大)。",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"限制數字 %1 介於 (低) %2 到 (高) %3",MATH_CONSTRAIN_TOOLTIP:"限制數字介於兩個指定的數字之間",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"強制轉換數據類型",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"%1 ÷ %2 商的整數部分",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"可被整除",MATH_IS_EVEN:"是偶數",MATH_IS_NEGATIVE:"為負",MATH_IS_ODD:"是奇數",MATH_IS_POSITIVE:"為正",MATH_IS_PRIME:"是質數",MATH_IS_TOOLTIP:"如果數字是偶數、奇數、非負整數、正數、負數或如果它可被某數字整除,則返回真或假。",MATH_IS_WHOLE:"為整數",MATH_MODULO_HELPURL:"https://zh.wikipedia.org/wiki/模除",MATH_MODULO_TITLE:"%1 ÷ %2 的余數",MATH_MODULO_TOOLTIP:"返回這兩個數字相除後的余數。",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"對數字進行位運算",MATH_NUMBER_HELPURL:"https://zh.wikipedia.org/wiki/數",MATH_NUMBER_TOOLTIP:"一個數字。",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"列表中的平均數",MATH_ONLIST_OPERATOR_MAX:"列表中的最大值",MATH_ONLIST_OPERATOR_MEDIAN:"列表中位數",MATH_ONLIST_OPERATOR_MIN:"列表中的最小值",MATH_ONLIST_OPERATOR_MODE:"列表模式",MATH_ONLIST_OPERATOR_RANDOM:"列表的隨機項",MATH_ONLIST_OPERATOR_STD_DEV:"列表中的標準差",MATH_ONLIST_OPERATOR_SUM:"列表中的數的總和",MATH_ONLIST_TOOLTIP_AVERAGE:"返回列表中的數值的平均值。",MATH_ONLIST_TOOLTIP_MAX:"返回列表中最大數。",MATH_ONLIST_TOOLTIP_MEDIAN:"返回列表中的中位數。",MATH_ONLIST_TOOLTIP_MIN:"返回列表中最小數。",MATH_ONLIST_TOOLTIP_MODE:"返回列表中的最常見的項的列表。",MATH_ONLIST_TOOLTIP_RANDOM:"從列表中返回一個隨機的元素。",MATH_ONLIST_TOOLTIP_STD_DEV:"返回列表的標準偏差。",MATH_ONLIST_TOOLTIP_SUM:"返回列表中的所有數字的和。",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://zh.wikipedia.org/wiki/隨機數生成器",MATH_RANDOM_FLOAT_TITLE_RANDOM:"隨機小數",MATH_RANDOM_FLOAT_TOOLTIP:"返回介於(包含)0.0到1.0之間的隨機數。",MATH_RANDOM_INT_HELPURL:"https://zh.wikipedia.org/wiki/隨機數生成器",MATH_RANDOM_INT_TITLE:"從 %1 到 %2 之間的隨機整數",MATH_RANDOM_INT_TOOLTIP:"返回兩個指定的範圍(含)之間的隨機整數。",MATH_ROUND_HELPURL:"https://zh.wikipedia.org/wiki/數值修約",MATH_ROUND_OPERATOR_ROUND:"四舍五入",MATH_ROUND_OPERATOR_ROUNDDOWN:"向下舍入",MATH_ROUND_OPERATOR_ROUNDUP:"向上舍入",MATH_ROUND_TOOLTIP:"數字向上或向下舍入。",MATH_SINGLE_HELPURL:"https://zh.wikipedia.org/wiki/平方根",MATH_SINGLE_OP_ABSOLUTE:"絕對",MATH_SINGLE_OP_ROOT:"平方根",MATH_SINGLE_TOOLTIP_ABS:"返回一個數的絕對值。",MATH_SINGLE_TOOLTIP_EXP:"返回數的e次冪。",MATH_SINGLE_TOOLTIP_LN:"返回一個數的自然對數。",MATH_SINGLE_TOOLTIP_LOG10:"返回數字的對數。",MATH_SINGLE_TOOLTIP_NEG:"返回數的邏輯非。",MATH_SINGLE_TOOLTIP_POW10:"返回數的10次冪。",MATH_SINGLE_TOOLTIP_ROOT:"返回數的平方根。",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://zh.wikipedia.org/wiki/三角函數",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"返回一個數的反余弦值。",MATH_TRIG_TOOLTIP_ASIN:"返回一個數的反正弦值。",MATH_TRIG_TOOLTIP_ATAN:"返回指定角度的反正切值。",MATH_TRIG_TOOLTIP_COS:"返回指定角度的余弦值(非弧度)。",MATH_TRIG_TOOLTIP_SIN:"返回指定角度的正弦值(非弧度)。",MATH_TRIG_TOOLTIP_TAN:"返回指定角度的正切值(非弧度)。",NEW_VARIABLE:"創建變量...",NEW_VARIABLE_TITLE:"新變量的名稱:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"允許聲明",PROCEDURES_BEFORE_PARAMS:"參數:",PROCEDURES_CALLNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLNORETURN_TOOLTIP:"運行用戶定義的函數“%1”。",PROCEDURES_CALLRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_CALLRETURN_TOOLTIP:"運行用戶定義的函數“%1”,並使用它的輸出值。",PROCEDURES_CALL_BEFORE_PARAMS:"與:",PROCEDURES_CREATE_DO:"創建“%1”",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"定義函數",PROCEDURES_DEFNORETURN_TOOLTIP:"創建一個不帶輸出值的函數。",PROCEDURES_DEFRETURN_HELPURL:"https://zh.wikipedia.org/wiki/子程序",PROCEDURES_DEFRETURN_RETURN:"返回",PROCEDURES_DEFRETURN_TOOLTIP:"創建一個有輸出值的函數。",PROCEDURES_DEF_DUPLICATE_WARNING:"警告: 此函數具有重復參數。",PROCEDURES_HIGHLIGHT_DEF:"突出顯示函數定義",PROCEDURES_IFRETURN_HELPURL:"http://c2.com/cgi/wiki?GuardClause",PROCEDURES_IFRETURN_TOOLTIP:"如果值為真,則返回第二個值。",PROCEDURES_IFRETURN_WARNING:"警告: 僅在定義函數內可使用此塊。",PROCEDURES_MUTATORARG_TITLE:"輸入名稱:",PROCEDURES_MUTATORARG_TOOLTIP:"添加函數輸入。",PROCEDURES_MUTATORCONTAINER_TITLE:"輸入",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"添加、刪除或重新排此函數的輸入。",REDO:"重做",REMOVE_COMMENT:"刪除註釋",RENAME_VARIABLE:"重命名變量...",RENAME_VARIABLE_TITLE:"將所有“%1”變量重命名為:",TEXT_APPEND_APPENDTEXT:"追加文本",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"",TEXT_APPEND_TOOLTIP:"將一些文本追加到變量“%1”。",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"轉為小寫",TEXT_CHANGECASE_OPERATOR_TITLECASE:"轉為首字母大寫",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"轉為大寫",TEXT_CHANGECASE_TOOLTIP:"使用不同的大小寫復制這段文字。",TEXT_CHARAT_FIRST:"獲得第一個字符",TEXT_CHARAT_FROM_END:"獲得倒數第#個字符",TEXT_CHARAT_FROM_START:"獲得字符#",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"從文本",TEXT_CHARAT_LAST:"獲得最後一個字符",TEXT_CHARAT_RANDOM:"獲取隨機的字母",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"返回位於指定位置的字母。",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"將一個項添加到文本中。",TEXT_CREATE_JOIN_TITLE_JOIN:"加入",TEXT_CREATE_JOIN_TOOLTIP:"添加、移除或重新排列各節來重新配置這個文本塊。",TEXT_GET_SUBSTRING_END_FROM_END:"到倒數第#個字符",TEXT_GET_SUBSTRING_END_FROM_START:"到字符#",TEXT_GET_SUBSTRING_END_LAST:"到最後一個字符",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"從文本",TEXT_GET_SUBSTRING_START_FIRST:"取得一段字串自第一個字符",TEXT_GET_SUBSTRING_START_FROM_END:"取得一段字串自倒數第#個字符",TEXT_GET_SUBSTRING_START_FROM_START:"取得一段字串自#",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"返回指定的部分文本。",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"在文本",TEXT_INDEXOF_OPERATOR_FIRST:"中查找 最先 出現",TEXT_INDEXOF_OPERATOR_LAST:"中查找 最後 出現",TEXT_INDEXOF_TAIL:"的位置",TEXT_INDEXOF_TOOLTIP:"返回在第二個字串中的第一/最後一個匹配項的索引值。如果未找到則返回%1。",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1是空的",TEXT_ISEMPTY_TOOLTIP:"如果提供的文本為空,則返回真。",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"轉為文本",TEXT_JOIN_TOOLTIP:"通過串起任意數量的項以建立一段文字。",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"%1的長度",TEXT_LENGTH_TOOLTIP:"返回提供文本的字母數(包括空格)。",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"打印%1",MPYTHON_INPUT_MESSAGE0:"輸入%1",TEXT_PRINT_TOOLTIP:"打印指定的文字、數字或其他值。",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"提示用戶輸入數字。",TEXT_PROMPT_TOOLTIP_TEXT:"提示用戶輸入一些文本。",TEXT_PROMPT_TYPE_NUMBER:"輸入數字並顯示提示消息",TEXT_PROMPT_TYPE_TEXT:"輸入數字並顯示提示消息",TEXT_TEXT_HELPURL:"https://zh.wikipedia.org/wiki/字符串",TEXT_TEXT_TOOLTIP:"一個字母、單詞或一行文本。",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"消除兩側空格",TEXT_TRIM_OPERATOR_LEFT:"消除左側空格",TEXT_TRIM_OPERATOR_RIGHT:"消除右側空格",TEXT_TRIM_TOOLTIP:"復制這段文字的同時刪除兩端多余的空格。",TODAY:"今天",UNDO:"撤銷",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"創建“設定%1”",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"返回此變量的值。",VARIABLES_SET:"將變量 %1 設定為 %2",VARIABLES_SET_CREATE_GET:"創建“獲得%1”",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"設置此變量,以使它和輸入值相等。",VARIABLE_ALREADY_EXISTS:"已存在名為“%1”的變量。"};VF.PROCEDURES_DEFRETURN_TITLE=VF.PROCEDURES_DEFNORETURN_TITLE,VF.CONTROLS_IF_IF_TITLE_IF=VF.CONTROLS_IF_MSG_IF,VF.CONTROLS_WHILEUNTIL_INPUT_DO=VF.CONTROLS_REPEAT_INPUT_DO,VF.CONTROLS_IF_MSG_THEN=VF.CONTROLS_REPEAT_INPUT_DO,VF.TRY_EXCEPT_TRY="try",VF.CONTROLS_IF_ELSE_TITLE_ELSE=VF.CONTROLS_IF_MSG_ELSE,VF.CONTROLS_IF_ELSE_TITLE_ELSE=VF.CONTROLS_IF_MSG_ELSE,VF.PROCEDURES_DEFRETURN_PROCEDURE=VF.PROCEDURES_DEFNORETURN_PROCEDURE,VF.LISTS_GET_SUBLIST_INPUT_IN_LIST=VF.LISTS_INLIST,VF.LISTS_GET_INDEX_INPUT_IN_LIST=VF.LISTS_INLIST,VF.PROCEDURES_DEFRETURN_DO=VF.PROCEDURES_DEFNORETURN_DO,VF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=VF.CONTROLS_IF_MSG_ELSEIF,VF.LISTS_GET_INDEX_HELPURL=VF.LISTS_INDEX_OF_HELPURL,VF.CONTROLS_FOREACH_INPUT_DO=VF.CONTROLS_REPEAT_INPUT_DO,VF.LISTS_SET_INDEX_INPUT_IN_LIST=VF.LISTS_INLIST,VF.CONTROLS_FOR_INPUT_DO=VF.CONTROLS_REPEAT_INPUT_DO,VF.LISTS_CREATE_WITH_ITEM_TITLE=VF.VARIABLES_DEFAULT_NAME,VF.TUPLE_CREATE_WITH_ITEM_TITLE=VF.VARIABLES_DEFAULT_NAME,VF.DICT_CREATE_WITH_ITEM_TITLE=VF.VARIABLES_DEFAULT_NAME,VF.SET_CREATE_WITH_ITEM_TITLE=VF.VARIABLES_DEFAULT_NAME,VF.TEXT_APPEND_VARIABLE=VF.VARIABLES_DEFAULT_NAME,VF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=VF.VARIABLES_DEFAULT_NAME,VF.MATH_CHANGE_TITLE_ITEM=VF.VARIABLES_DEFAULT_NAME,VF.LISTS_INDEX_OF_INPUT_IN_LIST=VF.LISTS_INLIST,VF.PROCEDURES_DEFRETURN_COMMENT=VF.PROCEDURES_DEFNORETURN_COMMENT,VF.MPYTHON_MAIN_HELPURL="",VF.MPYTHON_MAIN_TOOLTIP="這個圖形塊不是必須使用。但使用這個圖形塊,能使得程序結構更規整。",VF.MPYTHON_MAIN_MESSAGE0="主程式",VF.MPYTHON_OPEN="開啟",VF.MPYTHON_CLOSE="關閉",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT="左移",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT="右移",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_UP="上移",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN="下移",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE="數字反轉",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻轉",VF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="線性極",VF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="對數極",VF.MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE="灰度",VF.MPYTHON_AI_SENSOR_PATTERN_COLOR="彩色",VF.MPYTHON_AI_SENSOR_ENABLE_START="開始抓取圖像",VF.MPYTHON_AI_SENSOR_ENABLE_STOP="停止抓取圖像",VF.MPYTHON_AI_SENSOR_LEVEL_MI_H="水平鏡像",VF.MPYTHON_AI_SENSOR_LEVEL_MI_V="垂直翻轉",VF.MPYTHON_AI_SENSOR_SETS_CONTRAST="對比度",VF.MPYTHON_AI_SENSOR_SETS_BRIGHTNESS="亮度",VF.MPYTHON_AI_SENSOR_SETS_SATURATION="飽和度",VF.MPYTHON_AI2_FACE_YOLO="人臉識別",VF.MPYTHON_AI2_CLASS_20_YOLO="20類識別",VF.MPYTHON_AI_TRACE_COLOR_RECTANGLE="矩形",VF.MPYTHON_AI_TRACE_COLOR_CROSS="十字",VF.TEXT_APPEND_TEXT_HELPURL="",VF.TEXT_APPEND_TEXT_TOOLTIP="",VF.TEXT_APPEND_TEXT_MESSAGE0="%1 追加文本 %2",VF.CHINA_CITY_MESSAGE0="%1 %2",VF.CHINA_CITY_TOWN_MESSAGE0="%1 %2 %3 返回 %4",VF.CHINA_CITY_CNNAME="中文簡稱",VF.CHINA_CITY_PINYIN="拼音",VF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_1="简体中文",VF.MPYTHON_SENIVERSE_WEATHER_LANGUAGE_2="正體中文",VF.MPYTHON_SENIVERSE_CITY_WEATHER_HELPURL="",VF.MPYTHON_SENIVERSE_CITY_WEATHER_TOOLTIP="",VF.MPYTHON_SENIVERSE_CITY_WEATHER_MESSAGE0="[心知天氣] %1 信息 %2 地理位置 %3 API私鑰 %4 %5 語言 %6 %7 溫度單位 %8",VF.MPYTHON_SENIVERSE_WEATHER_API_1="天氣實況",VF.MPYTHON_SENIVERSE_WEATHER_API_2="3天天氣預報",VF.MPYTHON_SENIVERSE_WEATHER_API_3="6項生活指數",VF.MPYTHON_SENIVERSE_WEATHER_UNIT_1="攝氏度",VF.MPYTHON_SENIVERSE_WEATHER_UNIT_2="華氏度",VF.MPYTHON_DEFINE_SENIVERSE_WEATHER_HELPURL="",VF.MPYTHON_DEFINE_SENIVERSE_WEATHER_TOOLTIP="",VF.MPYTHON_DEFINE_SENIVERSE_WEATHER_MESSAGE0="設定 %1 為 %2",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_HELPURL="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_TOOLTIP="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO_MESSAGE0="%1 [心知天氣] 通用字段 %2",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_HELPURL="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_TOOLTIP="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO1_MESSAGE0="%1 [心知天氣] 天氣實況 %2",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_HELPURL="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_TOOLTIP="風向角度,範圍0~360\n風速,單位km/h(當unit=c時)、mph(當unit=f時)",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO2_MESSAGE0="%1 [心知天氣] 3天天氣預報 %2 的 %3",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_HELPURL="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_TOOLTIP="",VF.MPYTHON_GET_SENIVERSE_WEATHER_INFO3_MESSAGE0="%1 [心知天氣] 6項生活指數 %2",VF.MPYTHON_SENIVERSE_WEATHER_city_name="城市名稱",VF.MPYTHON_SENIVERSE_WEATHER_city_id="城市ID",VF.MPYTHON_SENIVERSE_WEATHER_country="國家代碼",VF.MPYTHON_SENIVERSE_WEATHER_path="行政歸屬",VF.MPYTHON_SENIVERSE_WEATHER_timezone="時區",VF.MPYTHON_SENIVERSE_WEATHER_timezone_offset="UTC偏移量",VF.MPYTHON_SENIVERSE_WEATHER_last_update_date="數據更新日期",VF.MPYTHON_SENIVERSE_WEATHER_last_update="數據更新時間",VF.MPYTHON_SENIVERSE_WEATHER_object="原始字典對象",VF.MPYTHON_SENIVERSE_WEATHER_text="天氣現象",VF.MPYTHON_SENIVERSE_WEATHER_code="天氣現象代碼",VF.MPYTHON_SENIVERSE_WEATHER_temperature="溫度",VF.MPYTHON_SENIVERSE_WEATHER_today="今天",VF.MPYTHON_SENIVERSE_WEATHER_tomorrow="明天",VF.MPYTHON_SENIVERSE_WEATHER_the_day_after_tomorrow="後天",VF.MPYTHON_SENIVERSE_WEATHER_date="日期",VF.MPYTHON_SENIVERSE_WEATHER_text_day="白天天氣現象",VF.MPYTHON_SENIVERSE_WEATHER_code_day="白天天氣現象代碼",VF.MPYTHON_SENIVERSE_WEATHER_text_night="晚間天氣現象",VF.MPYTHON_SENIVERSE_WEATHER_code_night="晚間天氣現象代碼",VF.MPYTHON_SENIVERSE_WEATHER_high="當天最高溫度",VF.MPYTHON_SENIVERSE_WEATHER_low="當天最低溫度",VF.MPYTHON_SENIVERSE_WEATHER_wind_direction="風向",VF.MPYTHON_SENIVERSE_WEATHER_wind_direction_degree="風向角度",VF.MPYTHON_SENIVERSE_WEATHER_wind_speed="風速",VF.MPYTHON_SENIVERSE_WEATHER_wind_scale="風力等級",VF.MPYTHON_SENIVERSE_WEATHER_car_washing="洗車指數",VF.MPYTHON_SENIVERSE_WEATHER_dressing="穿衣指數",VF.MPYTHON_SENIVERSE_WEATHER_flu="感冒指數",VF.MPYTHON_SENIVERSE_WEATHER_sport="運動指數",VF.MPYTHON_SENIVERSE_WEATHER_travel="旅遊指數",VF.MPYTHON_SENIVERSE_WEATHER_uv="紫外線指數",VF.MPYTHON_RED="紅",VF.MPYTHON_GREEN="綠",VF.MPYTHON_BLUE="藍",VF.MPYTHON_BLUEBIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0="I2C射頻卡 讀取電子錢包 數據",VF.MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP="讀取塊數據,長度16位元組",VF.MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0="I2C射頻卡 寫入電子錢包 數據%1",VF.MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP="寫入塊數據,長度16位元組",VF.MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0="I2C射頻卡 給電子錢包%1 金額%2",VF.MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP="",VF.MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0="充值",VF.MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0="扣費",VF.MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0="I2C射頻卡 獲取電子錢包餘額",VF.MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP="",VF.MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0="I2C射頻卡 獲取序號",VF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP="",VF.MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0="I2C射頻卡 初始化電子錢包",VF.MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP="",VF.MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0="I2C射頻卡 掃描",VF.MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP="",VF.MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",VF.MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0="I2C超聲波",VF.MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP="",VF.MPYTHON_BLUEBIT_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0="%1 被觸發 引腳%2",VF.MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP="",VF.MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0="%1 模擬值 引腳%2",VF.MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP="",VF.MPYTHON_BLUEBIT_READ_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0="設置LED燈 輸出%1 引腳%2",VF.MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP="",VF.MPYTHON_BLUEBIT_SET_ANALOG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0="循跡傳感器 檢測為黑 引腳%1",VF.MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP="",VF.MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_SET_TRUE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0="打開 %1 引腳 %2",VF.MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP="",VF.MPYTHON_BLUEBIT_SET_FALSE_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0="關閉 %1 引腳 %2",VF.MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP="",VF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP="",VF.MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0="打開錄放器 %1 %2 REC %3 PLAY %4",VF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP="",VF.MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0="關閉錄放器 %1 REC %2 PLAY %3",VF.MPYTHON_BLUEBIT_VOICE_RECORD_PLAY="播放",VF.MPYTHON_BLUEBIT_VOICE_RECORD_REC="錄音",VF.MPYTHON_BLUEBIT_IR_RECEIVE="紅外探測",VF.MPYTHON_BLUEBIT_SOUND="麥克風",VF.MPYTHON_BLUEBIT_LINE_FOLLOWER="循跡",VF.MPYTHON_BLUEBIT_VIBRATION="震動",VF.MPYTHON_BLUEBIT_RFID="射頻卡",VF.MPYTHON_BLUEBIT_FINGERPRINT_SCANNER="指紋",VF.MPYTHON_BLUEBIT_PIR="人體感應",VF.MPYTHON_BLUEBIT_MAGNETIC="門磁開關",VF.MPYTHON_BLUEBIT_BUTTON="按鍵",VF.MPYTHON_BLUEBIT_RELAY="繼電器",VF.MPYTHON_BLUEBIT_LIMIT_SWITCH="限位開關",VF.MPYTHON_BLUEBIT_FAN="風扇",VF.MPYTHON_BLUEBIT_LASER="激光",VF.MPYTHON_BLUEBIT_NTC_TEMP="熱敏電阻",VF.MPYTHON_BLUEBIT_WATER="水位",VF.MPYTHON_BLUEBIT_SOIL_MOISTURE="土壤濕度",VF.MPYTHON_BLUEBIT_ROTATE_DIMMER="旋鈕電位器",VF.MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER="直滑電位器",VF.MPYTHON_BLUEBIT_ANALOG_LIGHT="模擬光線",VF.MPYTHON_BLUEBIT_LM35_TEMP="LM35溫度",VF.MPYTHON_BLUEBIT_SMOKE="煙霧",VF.MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE="正轉",VF.MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE="反轉",VF.MPYTHON_BLUEBIT_READ_SOIL_HELPURL="",VF.MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP="新的土壤濕度",VF.MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0="土壤濕度(新)%1",VF.MPYTHON_BLUEBIT_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP="速度:-100~100 映射至 -1023~1023",VF.MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0="打開直流電機 %1 速度 %2 引腳AIN1 %3 引腳AIN2 %4",VF.MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP="",VF.MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0="停止直流電機 %1 引腳AIN1 %2 引腳AIN2 %3",VF.MPYTHON_BLUEBIT_SET_FAN_HELPURL="",VF.MPYTHON_BLUEBIT_SET_FAN_TOOLTIP="",VF.MPYTHON_BLUEBIT_SET_FAN_MESSAGE0="拓展板 打開風扇 %1",VF.MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL="",VF.MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP="",VF.MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0="拓展板 關閉風扇 %1",VF.MPYTHON_BLUEBIT_4BUTTON_HELPURL="http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",VF.MPYTHON_BLUEBIT_4BUTTON_TOOLTIP="",VF.MPYTHON_BLUEBIT_4BUTTON_MESSAGE0="四向按鍵模塊 引腳 %1 按鍵 %2 被按下",VF.BLUE="A",VF.GREEN="B",VF.RED="C",VF.YELLOW="D",VF.MPYTHON_BLUEBIT_JOYSTICK_HELPURL="",VF.MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP="",VF.MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0="搖桿 引腳A0 %1 引腳A1 %2 %3 軸的值",VF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL="",VF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP="速度:0~100",VF.MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0="拓展板 打開直流電機 %1 %2 速度 %3",VF.MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL="",VF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP="速度:0~100",VF.MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0="拓展板 關閉直流電機",VF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL="",VF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP="速度:-1023~1023",VF.MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0="編碼電機 模式 %1 撥碼 %2 M1速度 %3 M2速度 %4",VF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL="",VF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP="停止編碼電機轉動",VF.MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0="停止編碼電機轉動 %1",VF.MPYTHON_BLUEBIT_HUM_TEM_HELPURL="",VF.MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP="",VF.MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0="I2C %1",VF.MPYTHON_BLUEBIT_TEMPERATURE="溫度",VF.MPYTHON_BLUEBIT_HUMIDITY="濕度",VF.MPYTHON_BLUEBIT_INIT_MIDI_HELPURL="",VF.MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0="初始化MIDI TX引脚 %1",VF.MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP="",VF.MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL="",VF.MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0="設MIDI音量 %1",VF.MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP="音量 0~127",VF.MIDI_PIANO="平臺鋼琴",VF.MIDI_BRIGHTACOUSTICPIANO="亮音鋼琴",VF.MIDI_ELECTRICGRANDPIANO="電鋼琴",VF.MIDI_HARPSICHORD="大鍵琴",VF.MIDI_CELESTA="鋼片琴",VF.MIDI_GLOCKENSPIEL="鍾琴",VF.MIDI_MUSICALBOX="音樂盒",VF.MIDI_MARIMBA="馬林巴琴",VF.MIDI_XYLOPHONE="木琴",VF.MIDI_TUBULARBELL="管鐘",VF.MIDI_DULCIMER="洋琴",VF.MIDI_VIBRAPHONE="顫音琴",VF.MIDI_ORGAN="音栓風琴",VF.MIDI_ACOUSTIC_GUITAR="木吉他",VF.MIDI_ELECTRIC_GUITAR="電吉他",VF.MIDI_ACOUSTIC_BASS="民謠貝斯",VF.MIDI_STRING_ENSEMBLE="弦樂合奏",VF.MIDI_VIOLIN="小提琴",VF.MIDI_TRUMPET="小號",VF.MIDI_SAX="薩克斯",VF.MIDI_STEEL_DRUMS="鋼鼓",VF.MIDI_LEAD="合成音主旋律",VF.MIDI_PAD="合成音襯底",VF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL="",VF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0="設MIDI樂器 %1",VF.MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP="",VF.MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL="",VF.MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0="MIDI %1 音調 %2",VF.MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP="",VF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL="",VF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0="設點陣亮度等級 %1",VF.MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP="亮度等級 0~15",VF.MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL="",VF.MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0="點陣 %1",VF.MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP="",VF.MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL="",VF.MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0="設置點陣 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",VF.MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP="",VF.MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL="",VF.MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0="點陣設置生效",VF.MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP="",VF.MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0="設MP3音量 %1",VF.MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP="音量:0~30",VF.MPYTHON_BLUEBIT_MP3_INIT_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0="初始化MP3 TX引脚 %1",VF.MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP="掌控板的 tx 引脚連接音樂模塊的 RXI 引脚",VF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0="MP3 音量 %1",VF.MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP="",VF.MPYTHON_PLUS_1="加1",VF.MPYTHON_MINUS_1="減1",VF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0="MP3 播放第 %1 首歌",VF.MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP="",VF.MPYTHON_BLUEBIT_MP3_CMD_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0="MP3 播放 %1",VF.MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP="",VF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL="",VF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0="Mp3 單曲循環 %1",VF.MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP="",VF.MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL="",VF.MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0="設擴展端口 IO %2 為 %1",VF.MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP="IO: 0~7",VF.MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL="",VF.MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0="擴展端口值 IO %1",VF.MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP="",VF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL="",VF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0="設擴展端口 IO %2 為 %1",VF.MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP="",VF.MPYTHON_LCD_OBJECT_HELPURL="",VF.MPYTHON_LCD_OBJECT_MESSAGE0="LCD1602 初始化",VF.MPYTHON_LCD_OBJECT_TOOLTIP="",VF.MPYTHON_LCD_PRINT_HELPURL="",VF.MPYTHON_LCD_PRINT_MESSAGE0="LCD1602 顯示 %1",VF.MPYTHON_LCD_PRINT_TOOLTIP="",VF.MPYTHON_LCD_HOME_HELPURL="",VF.MPYTHON_LCD_HOME_MESSAGE0="LCD1602 光標 回到原點",VF.MPYTHON_LCD_HOME_TOOLTIP="",VF.MPYTHON_LCD_CURSOR_HELPURL="",VF.MPYTHON_LCD_CURSOR_MESSAGE0="LCD1602 光標 %1",VF.MPYTHON_LCD_CURSOR_TOOLTIP="",VF.MPYTHON_LCD_SET_CURSOR_HELPURL="",VF.MPYTHON_LCD_SET_CURSOR_MESSAGE0="LCD1602 起始點 行 %2 列 %1",VF.MPYTHON_LCD_SET_CURSOR_TOOLTIP="行列從0開始計數",VF.MPYTHON_LCD_CLEAR_HELPURL="",VF.MPYTHON_LCD_CLEAR_MESSAGE0="LCD1602 清屏",VF.MPYTHON_LCD_CLEAR_TOOLTIP="",VF.MPYTHON_LCD_CURSOR_BLINK="閃爍",VF.MPYTHON_LCD_CURSOR_NO_BLINK="不閃爍",VF.MPYTHON_RIGHT_TO_LEFT="從右向左",VF.MPYTHON_LEFT_TO_RIGHT="從左向右",VF.MPYTHON_LCD_TEXT_DIRECTION_HELPURL="",VF.MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0="LCD1602 文字方向 %1",VF.MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP="",VF.MPYTHON_LCD_MOVE_HELPURL="",VF.MPYTHON_LCD_MOVE_MESSAGE0="LCD1602 向 %1 滾動一格",VF.MPYTHON_LCD_MOVE_TOOLTIP="",VF.MPYTHON_IR_TRANS_HELPURL="",VF.MPYTHON_IR_TRANS_MESSAGE0="紅外發送 單字節字符串 %1 tx 引脚 %2",VF.MPYTHON_IR_TRANS_TOOLTIP="\n單字節字符串:\n'A', 'b', '1'等\n",VF.OUTPUT_PIN_HELPURL="",VF.OUTPUT_PIN_MESSAGE0="%1",VF.OUTPUT_PIN_TOOLTIP="",VF.INPUT_PIN_HELPURL="",VF.INPUT_PIN_MESSAGE0="%1",VF.INPUT_PIN_TOOLTIP="",VF.READ_ANALOG_PIN_HELPURL="",VF.READ_ANALOG_PIN_MESSAGE0="%1",VF.READ_ANALOG_PIN_TOOLTIP="",VF.SET_DIGITAL_HELPURL="",VF.SET_DIGITAL_MESSAGE0="%1",VF.SET_DIGITAL_TOOLTIP="",VF.SET_ANALOG_HELPURL="",VF.SET_ANALOG_MESSAGE0="%1",VF.SET_ANALOG_TOOLTIP="",VF.ALL_PIN_HELPURL="",VF.ALL_PIN_MESSAGE0="%1",VF.ALL_PIN_TOOLTIP="",VF.PWM_PIN_HELPURL="",VF.PWM_PIN_MESSAGE0="%1",VF.PWM_PIN_TOOLTIP="",VF.DH11_HUM_TEM_PIN_HELPURL="",VF.DH11_HUM_TEM_PIN_MESSAGE0="%1",VF.DH11_HUM_TEM_PIN_TOOLTIP="",VF.UART_TX_PIN_HELPURL="",VF.UART_TX_PIN_MESSAGE0="%1",VF.UART_TX_PIN_TOOLTIP="",VF.UART_RX_PIN_HELPURL="",VF.UART_RX_PIN_MESSAGE0="%1",VF.UART_RX_PIN_TOOLTIP="",VF.I2C_PIN_HELPURL="",VF.I2C_PIN_MESSAGE0="%1",VF.I2C_PIN_TOOLTIP="",VF.MQTT_COMMON_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",VF.MQTT_COMMON_SETUP_MESSAGE0="MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",VF.MQTT_COMMON_SETUP_TOOLTIP="",VF.MQTT_TENCENT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",VF.MQTT_TENCENT_SETUP_MESSAGE0="MQTT 騰訊物聯網 %1 服務器 %2 Port %3 AppId %4 Device %5 -- 傳出參數 -- %6 ReportTopic %7 ControlTopic %8",VF.MQTT_TENCENT_SETUP_TOOLTIP="",VF.MQTT_TENCENT_SETUPS_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",VF.MQTT_TENCENT_SETUPS_MESSAGE0="MQTT 騰訊物聯網 %1 服務器 %2 Port %3 AppId %4 Device %5 -- 傳出參數 -- %6 ReportTopic %7 ControlTopic %8",VF.MQTT_TENCENT_SETUPS_TOOLTIP="",VF.MQTT_SETUP_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_SETUP_MESSAGE0="MQTT-Easy IoT %1 服務器 %2 Client ID %5 Iot_id %3 Iot_pwd %4",VF.MQTT_SETUP_TOOLTIP="",VF.MQTT_CONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_CONNECT_MESSAGE0="連接 MQTT",VF.MQTT_CONNECT_TOOLTIP="",VF.MQTT_PUBLISH_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_PUBLISH_MESSAGE0="發佈 %1 至 主題 %2",VF.MQTT_PUBLISH_TOOLTIP="",VF.MQTT_REC_FROM_TOPIC_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_REC_FROM_TOPIC_MESSAGE0="當從主題 %1 接收到 %2 時",VF.MQTT_REC_FROM_TOPIC_TOOLTIP="",VF.MQTT_RECEIVE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_RECEIVE_MESSAGE0="當從主題 %1 接收到 %2 時",VF.MQTT_RECEIVE_TOOLTIP='參數"主題"只接受變量',VF.MQTT_RECEIVED_MESSAGE0="當從主題 %1 接收到消息 時",VF.MQTT_MESSAGE_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_MESSAGE_MESSAGE0="從 MQTT 收到的消息",VF.MQTT_MESSAGE_TOOLTIP="",VF.MQTT_WAIT_MSG_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_WAIT_MSG_MESSAGE0="等待主題消息 以 %1 模式",VF.MQTT_WAIT_MSG_TOOLTIP="建議放在'一直重複'中運行",VF.MQTT_DISCONNECT_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",VF.MQTT_DISCONNECT_MESSAGE0="MQTT 斷開連接",VF.MQTT_DISCONNECT_TOOLTIP="",VF.MQTT_LAST_WILL_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",VF.MQTT_LAST_WILL_MESSAGE0="設置 MQTT 主題 %2 離綫消息 %1",VF.MQTT_LAST_WILL_TOOLTIP="設置 MQTT last will 消息。應該在 connect() 之前調用。",VF.MPYTHON_SIOT_CONNECT_HELPURL="",VF.MPYTHON_SIOT_CONNECT_TOOLTIP="",VF.MPYTHON_SIOT_CONNECT_MESSAGE0="創建 SIoT 連接 %1 客戶端ID %2 服務器 %3 用戶 %4 密碼 %5",VF.MPYTHON_SIOT_ISCONNECTED_HELPURL="",VF.MPYTHON_SIOT_ISCONNECTED_TOOLTIP="",VF.MPYTHON_SIOT_ISCONNECTED_MESSAGE0="SIoT 連接成功 ?",VF.MPYTHON_SIOT_SUBSCRIBE_HELPURL="",VF.MPYTHON_SIOT_SUBSCRIBE_TOOLTIP="",VF.MPYTHON_SIOT_SUBSCRIBE_MESSAGE0="SIoT 訂閱主題",VF.MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE="點擊左邊星號 訂閱 SIoT 主題",VF.MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH="SIoT 訂閱 主題1",VF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE="主題",VF.MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP="",VF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD="最多訂閱 5 個主題",VF.MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP="",VF.MPYTHON_SIOT_DISCONNECT_HELPURL="",VF.MPYTHON_SIOT_DISCONNECT_TOOLTIP="",VF.MPYTHON_SIOT_DISCONNECT_MESSAGE0="SIoT 斷開連接",VF.MPYTHON_SIOT_MESSAGE_HELPURL="",VF.MPYTHON_SIOT_MESSAGE_TOOLTIP="",VF.MPYTHON_SIOT_MESSAGE_MESSAGE0="從 SIoT 收到的消息",VF.MPYTHON_SIOT_TOPIC1="主題1",VF.MPYTHON_SIOT_TOPIC2="主題2",VF.MPYTHON_SIOT_TOPIC3="主題3",VF.MPYTHON_SIOT_TOPIC4="主題4",VF.MPYTHON_SIOT_TOPIC5="主題5",VF.MPYTHON_SIOT_PUBLISH_HELPURL="",VF.MPYTHON_SIOT_PUBLISH_TOOLTIP="",VF.MPYTHON_SIOT_PUBLISH_MESSAGE0="SIoT 發送消息 %1 到 %2",VF.MPYTHON_SIOT_PUBLISH_TO_MESSAGE0="SIoT 發送消息 %1 到 主題 %2",VF.MPYTHON_SIOT_RECEIVE_HELPURL="",VF.MPYTHON_SIOT_RECEIVE_TOOLTIP="",VF.MPYTHON_SIOT_RECEIVE_MESSAGE0="當從 SIoT %1 收到消息時 %2 執行 %3",VF.MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0="當從 SIoT 主題 %1 收到消息時 %2 執行 %3",VF.MPYTHON_IR_RECV_HELPURL="",VF.MPYTHON_IR_RECV_MESSAGE0="紅外接收 整型 rx 引脚 %1",VF.MPYTHON_IR_RECV_TOOLTIP="第一次接收總爲空",VF.MPYTHON_BLUEBIT_OLED_PRINT_HELPURL="",VF.MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0="bluebit OLED 顯示 %1 x %2 y %3",VF.MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP="",VF.MPYTHON_BLUEBIT_OLED_INIT_HELPURL="",VF.MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0="bluebit OLED 初始化 tx %1 rx %2",VF.MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP="",VF.MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL="",VF.MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0="bluebit OLED 清空",VF.MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP="",VF.MPYTHON_BLUEBIT_OLED_BMP_HELPURL="",VF.MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0="bluebit OLED 顯示圖像 x %1 y %2 寬 %3 高 %4 16進制圖像數據 %5",VF.MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP="",VF.mpython_bme280_hum_tem_pre_MESSAGE0="气象 %1",VF.mpython_bme280_hum_tem_pre_TOOLTIP="气压单位Pa, 温度单位摄氏度, 环境湿度单位%",VF.mpythonbox_sound_MESSAGE0="聲音值",VF.mpythonbox_sound_TOOLTIP="採樣數據,为0~4095。",VF.mpythonbox_sound_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",VF.MPYTHONBOX_SLIDER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",VF.MPYTHONBOX_SLIDER_MESSAGE0="滑杆",VF.MPYTHONBOX_SLIDER_TOOLTIP="返回滑杆電阻採樣值。範圍0~4095。",VF.MPYTHONBOX_5BUTTON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",VF.MPYTHONBOX_5BUTTON_MESSAGE0="五向按鍵%1",VF.MPYTHONBOX_5BUTTON_TOOLTIP="",VF.MPYTHONBOX_MOTOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",VF.MPYTHONBOX_MOTOR_MESSAGE0="馬達 速度%1",VF.MPYTHONBOX_MOTOR_TOOLTIP="馬達速度,範圍±100。正值表示正轉,負值則反。",VF.MPYTHONBOX_ULTRASONIC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",VF.MPYTHONBOX_ULTRASONIC_MESSAGE0="超聲波",VF.MPYTHONBOX_ULTRASONIC_TOOLTIP="超聲波測距,獲取超聲波感測器測距值,組織cm。範圍3~340CM",VF.MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",VF.MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0="人體紅外",VF.MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP="返回人體紅外觸發值。當為1時,表示已觸發;當為0時,表示未觸發。",VF.MPYTHONBOX_RGB_pixel_HELPURL="",VF.MPYTHONBOX_RGB_pixel_MESSAGE0="設定第 %1列 %2行 R%3 G%4 B%5",VF.MPYTHONBOX_RGB_pixel_TOOLTIP="設定第多少列,行的RGB顏色",VF.MPYTHONBOX_RGB_get_pixel_HELPURL="",VF.MPYTHONBOX_RGB_get_pixel_MESSAGE0="返回 第%1列 %2行 RGB颜色",VF.MPYTHONBOX_RGB_get_pixel_TOOLTIP="返回第多少列,行位置的RGB顏色",VF.MPYTHONBOX_RGB_ImageText_HELPURL="",VF.MPYTHONBOX_RGB_ImageText_MESSAGE0="滾動顯示文本%1 速度%2",VF.MPYTHONBOX_RGB_ImageText_TOOLTIP="滾動顯示文字,亮度為0不亮,9最亮",VF.MPYTHONBOX_RGB_SetImage_HELPURL="",VF.MPYTHONBOX_RGB_SetImage_TOOLTIP="",VF.MPYTHONBOX_RGB_SetImage_MESSAGE0="創建圖像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",VF.MPYTHONBOX_RGB_Image_HELPURL="",VF.MPYTHONBOX_RGB_Image_MESSAGE0="顯示影像%1",VF.MPYTHONBOX_RGB_Image_TOOLTIP="顯示影像",VF.MPYTHONBOX_RGB_SetImage_HELPURL="",VF.MPYTHONBOX_RGB_SetImage_MESSAGE0="創建影像 %1 第一行%2第二行%3第三行%4第四行%5第五行%6",VF.MPYTHONBOX_RGB_SetImage_TOOLTIP="創建新影像,每行每位數代表第幾比特燈,默認紅色;亮度為0不亮,9最亮。",VF.MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0="顯示影像/文本 %1",VF.MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP="顯示影像或文字消息。",VF.MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL="",VF.MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0="顯示影像 %1",VF.MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP="顯示影像。",VF.MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL="",VF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0="複製影像 %1",VF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP="複製影像。",VF.MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL="",VF.MPYTHONBOX_RGB_ImageCot_HELPURL="",VF.MPYTHONBOX_RGB_ImageCot_MESSAGE0="切剪影像%1 列%2 行%3 宽%4 高%5",VF.MPYTHONBOX_RGB_ImageCot_TOOLTIP="切剪影像",VF.MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0="內寘影像 %1",VF.MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP="選擇一個內寘的影像。",VF.MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL="",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0="平移影像 %1 %2 %3 位",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP="向特定方向移動影像,並返回移動後的結果。",VF.MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL="",VF.MPYTHONBOX_RGB_clear_HELPURL="",VF.MPYTHONBOX_RGB_clear_MESSAGE0="關閉所有 RGB 燈",VF.MPYTHONBOX_RGB_clear_TOOLTIP="",VF.MPYTHONBOX_RGB_pixel_return_HELPURL="",VF.MPYTHONBOX_RGB_pixel_return_MESSAGE0="返回第 %1列 %2行 顏色",VF.MPYTHONBOX_RGB_pixel_return_TOOLTIP="返回第多少列,行的RGB顏色",VF.MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",VF.MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0="%1軸加速度",VF.MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP="单位g,范围-2~+2g。",VF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",VF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0="%1軸角速度",VF.MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP="范围±500°/秒",VF.MPYTHONBOX_EULER_ANGLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",VF.MPYTHONBOX_EULER_ANGLE_MESSAGE0="%1歐拉角",VF.MPYTHONBOX_EULER_ANGLE_TOOLTIP="返回當前歐拉角(Pitch,Roll,Yaw),單位角度",VF.MPYTHONBOX_QUATERNION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",VF.MPYTHONBOX_QUATERNION_MESSAGE0="%1四元數",VF.MPYTHONBOX_QUATERNION_TOOLTIP="返回當前四元數(w,x,y,z)",VF.MPYTHONBOX_CAMERA_LED_HELPURL="",VF.MPYTHONBOX_CAMERA_LED_MESSAGE0="攝像燈%1",VF.MPYTHONBOX_CAMERA_LED_TOOLTIP="led燈,分為打開和關閉兩種狀態",VF.LIST_FIRST_INDEX_HELPURL="",VF.LIST_FIRST_INDEX_MESSAGE0="項 %1 在列表 %2 %3 出現的位置",VF.LIST_FIRST_INDEX_TOOLTIP="",VF.MPYTHON_AI_LCD_INIT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",VF.MPYTHON_AI_LCD_INIT_MESSAGE0="螢幕 初始化 ",VF.MPYTHON_AI_LCD_INIT_TOOLTIP="初始化 螢幕顯示",VF.MPYTHON_AI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",VF.MPYTHON_AI_SENSOR_RESET_MESSAGE0="監視器 初始化",VF.MPYTHON_AI_SENSOR_RESET_TOOLTIP="初始化單目監視器",VF.MPYTHON_AI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",VF.MPYTHON_AI_SENSOR_ENABLE_MESSAGE0="監視器%1",VF.MPYTHON_AI_SENSOR_ENABLE_TOOLTIP="获取影像",VF.MPYTHON_AI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",VF.MPYTHON_AI_LCD_TEXT_MESSAGE0="顯示文字 x %1 y %2 内容 %3",VF.MPYTHON_AI_LCD_TEXT_TOOLTIP="僅支持字母和數位",VF.MPYTHON_AI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",VF.MPYTHON_AI_SENSOR_SKIP_MESSAGE0="監視器 跳過幀數%1 毫秒%2内的影像",VF.MPYTHON_AI_SENSOR_SKIP_TOOLTIP="監視器跳過指定幀數或者跳過指定時間內的影像",VF.MPYTHON_AI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",VF.MPYTHON_AI_SENSOR_RETURN_MESSAGE0="测 監視器 获取%1",VF.MPYTHON_AI_SENSOR_RETURN_TOOLTIP="(AI)監視器返回参数(宽高,图像帧的格式,图像帧的大小)",VF.MPYTHON_AI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",VF.MPYTHON_AI_SENSOR_SETS_MESSAGE0="監視器 设置%1 为%2",VF.MPYTHON_AI_SENSOR_SETS_TOOLTIP="设置監視器对比度,亮度,饱和度范围为[-2,+2]",VF.MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",VF.MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0="監視器 自動增益%1",VF.MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP="1開啟監視器自動增益0關閉監視器自動增益",VF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",VF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0="監視器 白平衡%1",VF.MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP="設定攝像自動白平衡模式,默認打開。True為打開,False為關閉自動白平衡。若您想追跡顏色,則需關閉白平衡。",VF.MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",VF.MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0="監視器 %1 %2",VF.MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP="1表示開啟水准鏡像 0表示關閉水准鏡像",VF.MPYTHON_AI_LCD_DISPLAY_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",VF.MPYTHON_AI_LCD_DISPLAY_MESSAGE0="屏幕 顯示生效",VF.MPYTHON_AI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上顯示",VF.MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",VF.MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0="图像 顯示生效 x%1 y%2 宽%3 高%4",VF.MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP="可以在液晶屏上顯示一張圖片",VF.MPYTHON_AI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",VF.MPYTHON_AI_SENSOR_IMAGES_MESSAGE0="監視器 獲取影像",VF.MPYTHON_AI_SENSOR_IMAGES_TOOLTIP="控制監視器捕捉影像",VF.MPYTHON_AI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0="人臉識別",VF.MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP="",VF.MPYTHON_AI_LCD_SHOW_REC_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",VF.MPYTHON_AI_LCD_SHOW_REC_TOOLTIP="在影像上繪製矩形",VF.MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",VF.MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP="在影像上繪製線條",VF.MPYTHON_AI_LCD_SHOW_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0="螢幕 顯示清空",VF.MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP="將液晶屏清空為黑色或者指定的顏色",VF.MPYTHON_AI_LCD_CLEAR_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 顏色",VF.MPYTHON_AI_LCD_return_colour_TOOLTIP="返回某個座標點的顏色",VF.MPYTHON_AI_LCD_return_colour_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0="圓形%1 x%2 y%3 半径%4 顏色为 R%5 G%6 B%7 加粗%8",VF.MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP="在影像上繪製圓形",VF.MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_TEXT_MOST_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0="顯示文字 x %1 y %2 内容 %3 顏色为R%4 G%5 B%6 字号%7",VF.MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP="僅支持字母和數位",VF.MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0="十字線 x%1 y%2 顏色为R%3 G%4 B%5 尺寸%6 加粗%7",VF.MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP="在影像上繪製十字線",VF.MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0="箭頭 x1%1 y1%2 到x2%3 y2%4 顏色为R%5 G%6 B%7 加粗%8",VF.MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP="在影像上繪製一個箭頭",VF.MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",VF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL=".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",VF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="顯示影像 路徑%1",VF.MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="顯示影像",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="圖像轉換為%1",VF.MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="黑白翻轉是將二進位影像0(黑色)變為1(白色),1(白色)變為0(黑色),非常快速地翻轉二進位影像中的所有點數值。",VF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",VF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0="影像 從笛卡爾座標到%1 座標重新投影 反向%2",VF.MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP="",VF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",VF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0="影像 膨胀 級別%1",VF.MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP="膨脹就是對影像高亮部分進行“領域擴張”,效果圖擁有比原圖更大的高亮區域。",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0="影像 中点濾波 級別%1 滤波%2",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP="控制影像混合的最小/最大程度。0只適用於最小濾波,1僅用於最大濾波。",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0="影像 众数濾波 級別%1",VF.MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP="在影像上運行眾數濾波,用相鄰點數的模式替換每個點數。",VF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",VF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0="影像 模糊滤波 级别%1",VF.MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP="使用盒式濾波器的標準平均值模糊濾波。",VF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",VF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0="影像 卡通化 級別%1 起始點數差异%2 相鄰點數差异%3",VF.MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP="使图像卡通化",VF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",VF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0="影像 3D旋轉 上下旋轉%1 左右旋轉%2 度数%3 左右移动%4 上下移动%5 缩放%6",VF.MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP="通過執行幀緩衝區的3D旋轉來糾正影像中的透視問題。",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0="將影像的副本保存到SD卡 图像名%1 影像顯示區域 x%2 y%3 宽%4 高%5",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP="將影像的副本保存到SD卡",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="創建一個影像對象的副本 複製影像區域 x%1 y%2 宽%3 高%4",VF.MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="創建一個影像對象的副本",VF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="手寫數位識別",VF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="手寫數位識別",VF.MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",VF.MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0="屏幕 x%1 y%2 显示颜色 R%3 G%4 B%5",VF.MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP="屏幕显示颜色",VF.MPYTHON_AI_LCD_COLOUR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",VF.MPYTHON_AI_LCD_COLOUR_MESSAGE0="屏幕 初始化 显示颜色 R%1 G%2 B%3",VF.MPYTHON_AI_LCD_COLOUR_TOOLTIP="屏幕显示颜色",VF.MPYTHON_AI_SENSOR_PATTERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",VF.MPYTHON_AI_SENSOR_PATTERN_MESSAGE0="監視器 初始化 點數模式 %1",VF.MPYTHON_AI_SENSOR_PATTERN_TOOLTIP="用於設定監視器點數模式,有黑白和rgb彩色",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="追跡色塊 顯示%1",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",VF.MPYTHON_AI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_FACE_TRACKING_MESSAGE0="(實驗箱)選擇訓練模型 人臉",VF.MPYTHON_AI2_FACE_TRACKING_TOOLTIP="可以識別並且追蹤人臉,顯示人臉大小等",VF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0="(實驗箱)調用攝像頭進行 人臉識別",VF.MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP="調用攝像頭進行 人臉識別",VF.MPYTHON_AI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_MESSAGE0="(實驗箱)獲取識別後人臉的 所有參數",VF.MPYTHON_AI2_RESULT_FACE_TOOLTIP="獲取識別後人臉的 所有參數",VF.MPYTHON_AI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_X_MESSAGE0="(實驗箱)獲取識別後人臉的 x座標",VF.MPYTHON_AI2_RESULT_FACE_X_TOOLTIP="獲取識別後人臉的 x座標",VF.MPYTHON_AI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0="(實驗箱)獲取識別後人臉的 y座標",VF.MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP="獲取識別後人臉的 y座標",VF.MPYTHON_AI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_W_MESSAGE0="(實驗箱)獲取識別後人臉的 寬度",VF.MPYTHON_AI2_RESULT_FACE_W_TOOLTIP="獲取識別後人臉的 寬度",VF.MPYTHON_AI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_H_MESSAGE0="(實驗箱)獲取識別後人臉的 高度",VF.MPYTHON_AI2_RESULT_FACE_H_TOOLTIP="獲取識別後人臉的 高度",VF.MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0="(實驗箱)獲取識別後人臉的 置信度",VF.MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP="獲取識別後人臉的 置信度",VF.MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0="(實驗箱)獲取識別後人臉的 數量",VF.MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP="獲取識別後人臉的 數量",VF.MPYTHON_AI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_20class_TRACKING_MESSAGE0="(實驗箱)選擇訓練模型 20類",VF.MPYTHON_AI2_20class_TRACKING_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",VF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(實驗箱)調用攝像頭進行 20類識別",VF.MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP="調用攝像頭進行 20類識別",VF.MPYTHON_AI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_MESSAGE0="(實驗箱)獲取識別後20類的 所有參數",VF.MPYTHON_AI2_RESULT_20CLASS_TOOLTIP="獲取識別後20類的 所有參數",VF.MPYTHON_AI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0="(實驗箱)獲取識別後20類的 x座標",VF.MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP="獲取識別後20類的 x座標",VF.MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0="(實驗箱)獲取識別後20類的 y座標",VF.MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP="獲取識別後20類的 y座標",VF.MPYTHON_AI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0="(實驗箱)獲取識別後20類的 寬度",VF.MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP="獲取識別後20類的 寬度",VF.MPYTHON_AI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0="(實驗箱)獲取識別後20類的 高度",VF.MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP="獲取識別後20類的 高度",VF.MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0="(實驗箱)獲取識別後20類的 置信度",VF.MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP="獲取識別後20類的 置信度",VF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(實驗箱)獲取識別後20類的 數量",VF.MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP="獲取識別後20類的 數量",VF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0="(實驗箱)獲取識別後20類的 類型",VF.MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",VF.MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0="(實驗箱)獲取識別後20類的 類型數量",VF.MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP="獲取識別後20類的 類型數量",VF.MPYTHON_AI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0="(實驗箱)選擇訓練模型 手寫數字",VF.MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP="選擇訓練模型 手寫數字",VF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0="(實驗箱)調用攝像頭進行 手寫數字識別",VF.MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP="調用攝像頭進行 手寫數字識別",VF.MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0="(實驗箱)獲取識別後手寫數字的 所有參數",VF.MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP="獲取識別後手寫數字的 所有參數",VF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0="(實驗箱)獲取識別後手寫數字的 數字",VF.MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP="獲取識別後手寫數字的 數字",VF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(實驗箱)獲取識別後手寫數字的 置信度",VF.MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP="獲取識別後手寫數字的 置信度",VF.MPYTHON_AI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",VF.MPYTHON_AI_IMAGE_LAB_MESSAGE0="寻找颜色 LAB值%1",VF.MPYTHON_AI_IMAGE_LAB_TOOLTIP="image寻找颜色",VF.MPYTHON_AI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",VF.MPYTHON_AI_TRACE_COLOR_MESSAGE0="(實驗箱)追蹤色塊 LAB顏色%1 邊界框小於%2 像素小於%3 過濾",VF.MPYTHON_AI_TRACE_COLOR_TOOLTIP="追蹤色塊",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL="",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(實驗箱)追蹤色塊 顯示%1",VF.MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",VF.MPYTHON_AI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_ALL_MESSAGE0="(實驗箱)%1獲取識別後色塊的 所有參數",VF.MPYTHON_AI_BLOB_ALL_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_X_MESSAGE0="(實驗箱)%1獲取識別後色塊的 x座標",VF.MPYTHON_AI_BLOB_X_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_Y_MESSAGE0="(實驗箱)%1獲取識別後色塊的 y座標",VF.MPYTHON_AI_BLOB_Y_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_W_MESSAGE0="(實驗箱)%1獲取識別後色塊的 寬度",VF.MPYTHON_AI_BLOB_W_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_H_MESSAGE0="(實驗箱)%1獲取識別後色塊的 高度",VF.MPYTHON_AI_BLOB_H_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_NUMBER_MESSAGE0="(實驗箱)%1獲取識別後色塊的 數量",VF.MPYTHON_AI_BLOB_NUMBER_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_CENTER_X_MESSAGE0="(實驗箱)%1獲取識別後色塊的 中心x座標",VF.MPYTHON_AI_BLOB_CENTER_X_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0="(實驗箱)%1獲取識別後色塊的 中心y座標",VF.MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_AI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0="(實驗箱)%1獲取識別後色塊的 矩形",VF.MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_DRILL_WEIGHT_MESSAGE0="初始化 訓練 %1",VF.MPYTHON_DRILL_WEIGHT_TOOLTIP="",VF.MPYTHON_DRILL_WEIGHT_HELPURL="",VF.MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL="",VF.MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0="實例化 線性迴歸直線",VF.MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP="",VF.MPYTHON_DRILL_TITLE_HELPURL="",VF.MPYTHON_DRILL_TITLE_MESSAGE0="標題%1 字號%2",VF.MPYTHON_DRILL_TITLE_TOOLTIP="",VF.MPYTHON_DRILL_LABEL_HELPURL="",VF.MPYTHON_DRILL_LABEL_MESSAGE0="標籤%1 標題%2 字號%3",VF.MPYTHON_DRILL_LABEL_TOOLTIP="",VF.MPYTHON_DRILL_DRILL_REALITY_HELPURL="",VF.MPYTHON_DRILL_DRILL_REALITY_MESSAGE0="真實數據 符號標記%1 顏色爲 r%2 g%3 b%4 標題%5",VF.MPYTHON_DRILL_DRILL_REALITY_TOOLTIP="",VF.MPYTHON_DRILL_PREDICTED_REALITY_HELPURL="",VF.MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0="預測線性迴歸直線 符號標記%1 顏色爲 r%2 g%3 b%4 標題%5",VF.MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP="",VF.MPYTHON_DRILL_LEGEND_HELPURL="",VF.MPYTHON_DRILL_LEGEND_MESSAGE0="展示圖例",VF.MPYTHON_DRILL_LEGEND_TOOLTIP="",VF.MPYTHON_DRILL_SHOW_HELPURL="",VF.MPYTHON_DRILL_SHOW_MESSAGE0="顯示圖片",VF.MPYTHON_DRILL_SHOW_TOOLTIP="",VF.MPYTHON_DRILL_DRILL_PRINT_HELPURL="",VF.MPYTHON_DRILL_DRILL_PRINT_MESSAGE0="返回對應鍵值%1",VF.MPYTHON_DRILL_DRILL_PRINT_TOOLTIP="",VF.MPYTHON_DRILL_DRILL_full_line="實線",VF.MPYTHON_DRILL_DRILL_dash_line="破折線",VF.MPYTHON_DRILL_DRILL_chain_line="點劃線",VF.MPYTHON_DRILL_DRILL_imaginary_line="虛線",VF.MPYTHON_DRILL_DRILL_dot="點",VF.MPYTHON_DRILL_DRILL_pixel="像素",VF.MPYTHON_DRILL_DRILL_solid_rim="實心圈",VF.MPYTHON_DRILL_DRILL_down_triangle="下三角",VF.MPYTHON_DRILL_DRILL_up_triangle="上三角",VF.MPYTHON_DRILL_DRILL_right_triangle="右三角",VF.MPYTHON_DRILL_DRILL_left_triangle="左三角",VF.MPYTHON_DRILL_DRILL_down_flower_triangle="下花三角",VF.MPYTHON_DRILL_DRILL_up_flower_triangle="上花三角",VF.MPYTHON_DRILL_DRILL_right_flower_triangle="右花三角",VF.MPYTHON_DRILL_DRILL_left_flower_triangle="左花三角",VF.MPYTHON_DRILL_DRILL_solid_square="實心方形",VF.MPYTHON_DRILL_DRILL_solid_pentagon="實心五角",VF.MPYTHON_DRILL_DRILL_star="星形",VF.MPYTHON_DRILL_DRILL_vertical_hexagon="豎六邊形",VF.MPYTHON_DRILL_DRILL_across_hexagon="橫六邊形",VF.MPYTHON_DRILL_DRILL_cross="十字",VF.MPYTHON_DRILL_DRILL_X="X",VF.MPYTHON_DRILL_DRILL_rhombus="菱形",VF.MPYTHON_DRILL_DRILL_thin_rhombus="瘦菱形",VF.MPYTHON_DRILL_DRILL_vertical_line="垂直線",VF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0="初始化 鳶尾花數據集",VF.MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP="採用Python的Sklearn機器學習庫中自帶的數據集——鳶尾花數據集。簡單分析數據集之間特徵的關係圖,根據花瓣長度,花瓣寬度,花萼長度,花萼寬度四個特徵進行繪圖虹膜植物數據集可以從龍骨數據集數據集網站獲取,也可以直接從Sklearn。數據集機器學習包得到。數據集共包含4個特徵變量,1個類別變量,共150個有樣本。類別變量分別對應鳶尾花的三個亞屬,分別是山鳶尾(Iris-setosa),變色鳶尾(Iris-versicolor)和維吉尼亞鳶尾(Iris-virginica)分別用(0,1,2)來做映射",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0="鳶尾花 主成分分析",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0="鳶尾花 因子分析 3D",VF.MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0="鳶尾花 因子分析",VF.MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0="預測圖示 鳶尾花類型%1 呈現內容 x%3 y%4 呈現種類%2 顏色爲 r%5 g%6 b%7 標題%8 向上合併%9",VF.MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0="預測圖示 呈現內容 x%1 y%2 呈現種類%3 顏色爲 r%4 g%5 b%6 標題%7",VF.MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0="3D 預測圖示 呈現內容 x朝向%1 y朝向%2 z朝向%3 顏色爲 r%4 g%5 b%6 標題%7",VF.MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0="標題%1 字號%2",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0="標籤%1 標題%2 字號%3",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0="3D 標題%1 字號%2",VF.MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0="3D 標籤%1 標題%2 字號%3",VF.MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0="展示圖例",VF.MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0="顯示圖片",VF.MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP="",VF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL="",VF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0="花萼和花瓣的x, y座標",VF.MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP="共150條記錄,分別代表50條山鳶尾(Iris-setosa),變色鳶尾(Iris-versicolor),維吉尼亞鳶尾(Iris-virginica)",VF.MPYTHONS_FLOWER_DE_LUCE_Iris_setosa="山鳶尾",VF.MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor="變色鳶尾",VF.MPYTHONS_FLOWER_DE_LUCE_Iris_virginica="維吉尼亞鳶尾",VF.MPYTHONS_FLOWER_DE_LUCE_scatter_diagram="散點圖",VF.MPYTHONS_FLOWER_DE_LUCE_kde_diagram="kde圖",VF.MPYTHONS_FLOWER_DE_LUCE_box_diagram="箱圖",VF.MPYTHONS_FLOWER_DE_LUCE_merge="合並",VF.MPYTHONS_FLOWER_DE_LUCE_not_merge="不合並",VF.MPYTHONS_FLOWER_DE_LUCE_calyx_length="花萼長度",VF.MPYTHONS_FLOWER_DE_LUCE_calyx_width="花萼寬度",VF.MPYTHONS_FLOWER_DE_LUCE_petal_length="花瓣長度",VF.MPYTHONS_FLOWER_DE_LUCE_petal_width="花瓣寬度",VF.MPYTHONS_CONVERT_PICTURE_HELPURL="",VF.MPYTHONS_CONVERT_PICTURE_MESSAGE0="將圖片轉換爲28²二值圖%1 待處理的圖片存儲路徑%2 處理後的圖片存儲路徑%3 格式%4",VF.MPYTHONS_CONVERT_PICTURE_TOOLTIP="掌控板通過串口把WIF傳給語音助手",VF.MPYTHONS_NUMBER_REPERTOIRE_HELPURL="",VF.MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0="查找解析 手寫數字數 據存儲路徑%1",VF.MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP="使用手寫數字字符庫",VF.MPYTHONS_SHOW_NUMBER_PATH_HELPURL="",VF.MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0="手寫數字圖像 存儲路徑%1",VF.MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP="",VF.MPYTHONS_SHOW_NUMBER_HELPURL="",VF.MPYTHONS_SHOW_NUMBER_MESSAGE0="顯示手寫數字圖像",VF.MPYTHONS_SHOW_NUMBER_TOOLTIP="",VF.MPYTHONS_NUMBER_RECOGNITION_HELPURL="",VF.MPYTHONS_NUMBER_RECOGNITION_MESSAGE0="識別手寫數字圖像 存儲路徑%1",VF.MPYTHONS_NUMBER_RECOGNITION_TOOLTIP="",VF.MPYTHONS_NUMBER_PLACEHOLDER_HELPURL="",VF.MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0="創建變量%1 初始化 神經網絡張量 變量名%2",VF.MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP="",VF.MPYTHON_DRILL_RESHAPE_MESSAGE0="創建變量%1 將輸入照片變量%2 轉換爲 神經網絡輸出張量%3",VF.MPYTHON_DRILL_RESHAPE_TOOLTIP="",VF.MPYTHON_DRILL_RESHAPE_HELPURL="",VF.MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0="創建變量%1 共享變量%2 初始化模式%3",VF.MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP="",VF.MPYTHON_NUMBER_CONV_WEIGHT_HELPURL="",VF.MPYTHON_NUMBER_INITIALIZER_MESSAGE0="產生截斷正態分佈隨機數 輸出張量%1 標準差%2",VF.MPYTHON_NUMBER_INITIALIZER_TOOLTIP="",VF.MPYTHON_NUMBER_INITIALIZER_HELPURL="",VF.MPYTHON_NUMBER_CONSTANT_MESSAGE0="創建常量 數值%1 輸出張量%2",VF.MPYTHON_NUMBER_CONSTANT_TOOLTIP="",VF.MPYTHON_NUMBER_CONSTANT_HELPURL="",VF.MPYTHON_NUMBER_CONV2D_MESSAGE0="神經網絡輸出張量%1 共享變量%2 步長%3 填充%4",VF.MPYTHON_NUMBER_CONV2D_TOOLTIP="",VF.MPYTHON_NUMBER_CONV2D_HELPURL="",VF.MPYTHON_NUMBER_CONV_BIASES_MESSAGE0="張量%1",VF.MPYTHON_NUMBER_CONV_BIASES_TOOLTIP="",VF.MPYTHON_NUMBER_CONV_BIASES_HELPURL="",VF.MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0="卷積二維層 變量%1 %2",VF.MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP="",VF.MPYTHON_NUMBER_CONV_CONV2D_HELPURL="",VF.MPYTHON_NUMBER_RELU_MESSAGE0="創建變量%1 Relu正向激勵函數 卷積二維層%2",VF.MPYTHON_NUMBER_RELU_TOOLTIP="",VF.MPYTHON_NUMBER_RELU_HELPURL="",VF.MPYTHON_NUMBER_MAX_POOL_MESSAGE0="池化二維層 變量%1 卷積層%2 池化窗口%3 步長%4 填充%5",VF.MPYTHON_NUMBER_MAX_POOL_TOOLTIP="",VF.MPYTHON_NUMBER_MAX_POOL_HELPURL="",VF.MPYTHON_NUMBER_MATMUL_MESSAGE0="兩個參數的對應元素各自相乘 x%1 y%2",VF.MPYTHON_NUMBER_MATMUL_TOOLTIP="",VF.MPYTHON_NUMBER_MATMUL_HELPURL="",VF.MPYTHON_NUMBER_ADD_MESSAGE0="全連接層 變量%1 兩個參數的元素相加 x%2 y%3",VF.MPYTHON_NUMBER_ADD_TOOLTIP="",VF.MPYTHON_NUMBER_ADD_HELPURL="",VF.MPYTHON_NUMBER_SOFTMAX_MESSAGE0="創建變量%1 預測模型準確度 變量名%2",VF.MPYTHON_NUMBER_SOFTMAX_TOOLTIP="",VF.MPYTHON_NUMBER_SOFTMAX_HELPURL="",VF.MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0="創建變量%1 損失函數%2",VF.MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP="",VF.MPYTHON_NUMBER_REDUCE_MEAN_HELPURL="",VF.MPYTHON_NUMBER_LOG_MESSAGE0="自然對數 %1",VF.MPYTHON_NUMBER_LOG_TOOLTIP="",VF.MPYTHON_NUMBER_LOG_HELPURL="",VF.MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0="壓縮求和%1 維度%2",VF.MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP="因爲日誌函數是單調遞增的,所以logP (Y | X)也會達到最大值,因此在前面加上負號之後,最大化P (Y | X)就等價於最小化了。",VF.MPYTHON_NUMBER_REDUCE_SUM_HELPURL="https://www.cnblogs.com/guoyaohua/p/9217206.html",VF.MPYTHON_NUMBER_TRAIN_MESSAGE0="優化學習速率 %1",VF.MPYTHON_NUMBER_TRAIN_TOOLTIP="",VF.MPYTHON_NUMBER_TRAIN_HELPURL="",VF.MPYTHON_NUMBER_MINIMIZE_MESSAGE0="創建變量%1 優化張量%2",VF.MPYTHON_NUMBER_MINIMIZE_TOOLTIP="",VF.MPYTHON_NUMBER_MINIMIZE_HELPURL="",VF.MPYTHON_NUMBER_INIT_MESSAGE0="初始化模型 完成",VF.MPYTHON_NUMBER_INIT_TOOLTIP="",VF.MPYTHON_NUMBER_INIT_HELPURL="",VF.MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0="選擇 手寫數字集%1 數量%2",VF.MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP="",VF.MPYTHON_NUMBER_TRAIN_TEST_HELPURL="",VF.MPYTHON_NUMBER_SESSION_RUN_MESSAGE0="啓動數據流圖會話進行計算 會話%1 圖片%2 標籤%3",VF.MPYTHON_NUMBER_SESSION_RUN_TOOLTIP="",VF.MPYTHON_NUMBER_SESSION_RUN_HELPURL="",VF.MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0="啓動數據流圖會話進行計算 會話%1 圖片%2 標籤%3",VF.MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP="",VF.MPYTHON_NUMBER_SESSION_RUN2_HELPURL="",VF.MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0="預測模型%1 擬合度%2 會話%3",VF.MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP="",VF.MPYTHON_NUMBER_SESSION_RUN3_HELPURL="",VF.MPYTHON_NUMBER_EQUAL_MESSAGE0="兩個張量的每一維是否相等 x%1 y%2",VF.MPYTHON_NUMBER_EQUAL_TOOLTIP="",VF.MPYTHON_NUMBER_EQUAL_HELPURL="",VF.MPYTHON_NUMBER_ARGMAX_MESSAGE0="張量%1 按%2比較返回最大值的索引",VF.MPYTHON_NUMBER_ARGMAX_TOOLTIP="",VF.MPYTHON_NUMBER_ARGMAX_HELPURL="",VF.MPYTHON_NUMBER_CAST_MESSAGE0="轉爲浮點型 %1",VF.MPYTHON_NUMBER_CAST_TOOLTIP="",VF.MPYTHON_NUMBER_CAST_HELPURL="",VF.MPYTHONS_NUMBER_SAVER_SAVE_HELPURL="",VF.MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0="手寫數字識別模型 變量名%1 存儲路徑%2",VF.MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP="MNIST手寫數字識別模型保存路徑",VF.MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL="",VF.MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0="加載模型%1 存儲路徑%2",VF.MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP="",VF.MPYTHONS_NUMBER_SAME="包含邊界",VF.MPYTHONS_NUMBER_VALID="不包含邊界",VF.MPYTHONS_NUMBER_train="訓練",VF.MPYTHONS_NUMBER_test="測試",VF.MPYTHONS_NUMBER_row="行",VF.MPYTHONS_NUMBER_rank="列",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0="調用攝像頭 %1",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP="調用筆記本內置攝像頭,所以參數爲0,如果有其他的攝像頭可以調整參數爲1,2",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0="關閉攝像頭",VF.MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0="刪除所有窗口",VF.MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加載模型 存儲路徑%1",VF.MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0="從攝像頭讀取圖片",VF.MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP="ret如果有讀取圖片就真的,否則假;第二個參數是框架,是當前截取一幀的圖片。",VF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0="轉爲灰度圖片",VF.MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0="檢測人臉 每次圖像尺寸減小比例%1",VF.MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP="",VF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL="",VF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0="人臉區域顯示矩形框 顏色爲 紅%1 綠%2 藍%3",VF.MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0="保存圖像 位置%1 ID%2 編號%3",VF.MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0="窗口中顯示圖像 文件名%1",VF.MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL="",VF.MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0="通過esc鍵 退出",VF.MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP="在窗口置頂時使用纔有效果",VF.MPYTHONS_FACE_RECOGNITIONR_HELPURL="",VF.MPYTHONS_FACE_RECOGNITIONR_MESSAGE0="獲得人臉在圖像中的座標值 人臉%1",VF.MPYTHONS_FACE_RECOGNITIONR_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0="是否讀取圖片",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0="是否打開攝像頭",VF.MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0="獲取照片及id 照片存儲路徑%1",VF.MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0="初始化訓練模型",VF.MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0="開始訓練模型",VF.MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0="%1訓練模型 存儲路徑%2",VF.MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0="人臉模型訓練 數目",VF.MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_FONT_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0="窗口顯示 識別的名字%1 設置字體爲%2 顏色爲 紅%3 綠%4 藍%5",VF.MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0="窗口顯示 識別的置信度%1 設置字體爲%2 顏色爲 紅%3 綠%4 藍%5",VF.MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL="",VF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0="預測人臉 名字%1 置信度%2",VF.MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP="",VF.MPYTHONS_FACE_RECOGNITION_FORECAST_Write="寫入",VF.MPYTHONS_FACE_RECOGNITION_FORECAST_Read="讀取",VF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL="",VF.MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0="初始化 聊天机器人",VF.MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP="",VF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL="",VF.MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0="选择训练器 聊天机器人",VF.MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP="",VF.MPYTHONS_DIALOGUE_ROBOT_START_HELPURL="",VF.MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0="选择与%1 聊天",VF.MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP="",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL="",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP="",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0="自定义 语料库 %1[%2]",VF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL="",VF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0="输入对话 获得响应 %1",VF.MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP="",VF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0="识别响应",VF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP="",VF.MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL="",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL="",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0="选择跟 %1 聊天",VF.MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP="",VF.Jenny="珍妮",VF.Jack="杰克",VF.Tom="汤姆",VF.MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL="",VF.MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0="选择 %1 %2 模式%3 %4 喂养%5",VF.MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP="",VF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL="",VF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0="查看训练库 选择%1",VF.MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP="",VF.MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL="",VF.MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0="生成随机数 %1",VF.MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP="",VF.MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL="",VF.MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0="显示窗口",VF.MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP="",VF.MPYTHON_AGESTURE_IMSHOW_HELPURL="",VF.MPYTHON_AGESTURE_IMSHOW_MESSAGE0="处理图像 %1",VF.MPYTHON_AGESTURE_IMSHOW_TOOLTIP="",VF.MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL="",VF.MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0="选择训练库 knn模型",VF.MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP="",VF.MPYTHON_AGESTURE_LOAD_MODEL_HELPURL="",VF.MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0="载入knn模型 存储路径%1",VF.MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP="",VF.MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL="",VF.MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0="%1打开图片 存储路径%2 图片名%3",VF.MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP="",VF.MPYTHON_AGESTURE_ARRAY_MESSAGE0="选择%1 构建特征数据%2",VF.MPYTHON_AGESTURE_ARRAY_TOOLTIP="",VF.MPYTHON_AGESTURE_ARRAY_HELPURL="",VF.MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0="打乱排序%1 ",VF.MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP="",VF.MPYTHON_GESTURE_RANDOM_RANK_HELPURL="",VF.MPYTHON_GESTURE_READ_LEND_MESSAGE0=" %1 图片特征",VF.MPYTHON_GESTURE_READ_LEND_TOOLTIP="",VF.MPYTHON_GESTURE_READ_LEND_HELPURL="",VF.MPYTHON_GESTURE_START_SRAIN_HELPURL="",VF.MPYTHON_GESTURE_START_SRAIN_MESSAGE0="开始训练 手势识别 期望%1 目标%2",VF.MPYTHON_GESTURE_START_SRAIN_TOOLTIP="",VF.MPYTHON_GESTURE_SCORE_HELPURL="",VF.MPYTHON_GESTURE_SCORE_MESSAGE0="进行评分 期望%1 目标%2",VF.MPYTHON_GESTURE_SCORE_TOOLTIP="",VF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL="",VF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",VF.MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 数组降维 图片总数%2",VF.MPYTHON_GESTURE_FORECAST_HELPURL="",VF.MPYTHON_GESTURE_FORECAST_TOOLTIP="",VF.MPYTHON_GESTURE_FORECAST_MESSAGE0="预测结果%1",VF.MPYTHON_AGESTURE_SAVE_MODEL_HELPURL="",VF.MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0="保存模型 存储路径%1",VF.MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP="",VF.MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL="",VF.MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0="%1图片 预测图片 ",VF.MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP="",VF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL="",VF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP="",VF.MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0="%1 彩色图像降维",VF.MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL="",VF.MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0="选择人脸库 图片存储路径%1",VF.MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP="",VF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL="",VF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0="加载模型 存储路径%1",VF.MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0="第%1位人脸性别结果 置信度",VF.MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0="第%1位人脸情绪结果 置信度",VF.MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL="",VF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0="第%1位人脸性别 结果",VF.MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL="",VF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0="第%1位人脸情绪 结果",VF.MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP="",VF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL="",VF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0="选择人脸库 %1",VF.MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0="第%1位情绪为 %2",VF.MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0="第%1位性别为 %2",VF.MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0="人脸数量",VF.MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0="表情数量",VF.MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL="",VF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0="人脸实时检测 %1",VF.MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP="",VF.MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL="",VF.MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0="显示图片",VF.MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP="",VF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL="",VF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0="选择人脸%1 %2",VF.MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL="",VF.MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0="初始化 文章聚类",VF.MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_TITLE_HELPURL="文章数量不超过100",VF.MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0="标题 第%1文章",VF.MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_CONTENT_HELPURL="文章数量不超过100",VF.MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0="内容 第%1文章",VF.MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_JIEBA_HELPURL="文章数量不超过100",VF.MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0="文章内容转为列表 第%1文章",VF.MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL="",VF.MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0="读取停词表%1",VF.MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP="返回的是100篇文章里的符号",VF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL="",VF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0="删除后的新闻";VF.MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL="",VF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0="构造词云所用的数据",VF.MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL="",VF.MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0="计算总数 排序前%1",VF.MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP="返回的是100篇文章里的文本",VF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL="",VF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0="文章聚类训练结果 保存为图片",VF.MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP="",VF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL="",VF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0="显示图片",VF.MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP="",VF.FIRST="第一次",VF.LAST="最后一次",VF.MPYTHON_USOCKET_BLOCK="阻塞",VF.MPYTHON_USOCKET_UNBLOCK="非阻塞",VF.MPYTHON_USOCKET_SETSOCKOPT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",VF.MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0="設定socket %1 地址 %2 類型 %3",VF.MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP="設定給定通訊端選項的值。所需的符號常數在通訊端模塊中定義(SO_ *等)。該值可以是整數或表示緩衝區的類位元組對象。",VF.MPYTHON_USOCKET_READLINE_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",VF.MPYTHON_USOCKET_READLINE_MESSAGE0="socket %1 接收一行數據,遇分行符號結束並返回接收數據的對象",VF.MPYTHON_USOCKET_READLINE_TOOLTIP="接收一行數據,遇分行符號結束,並返回接收數據的對象",VF.MPYTHON_USOCKET_READ_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.read",VF.MPYTHON_USOCKET_READ_MESSAGE0="從socket %1 讀取 %2 字節並返回字節對象",VF.MPYTHON_USOCKET_READ_TOOLTIP="若未給定讀取數量 ,則按照類似 socket.readall() 的模式運行",VF.MPYTHON_USOCKET_SETBLOCKING_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.setblocking",VF.MPYTHON_USOCKET_SETBLOCKING_MESSAGE0="設socket %1 為 %2 模式",VF.MPYTHON_USOCKET_SETBLOCKING_TOOLTIP="",VF.MPYTHON_USOCKET_SETTIMEOUT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.settimeout",VF.MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0="socket %1 設超時時間 %2 秒",VF.MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP="",VF.MPYTHON_USOCKET_RECV_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recv",VF.MPYTHON_USOCKET_RECV_MESSAGE0="socket %1 接收並返回接收到的數據對象 最大數據量為 %2",VF.MPYTHON_USOCKET_RECV_TOOLTIP="",VF.MPYTHON_USOCKET_RECVFROM_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recvfrom",VF.MPYTHON_USOCKET_RECVFROM_MESSAGE0="socket %1 接收並返回接收到的數據元組 最大數據量為 %2",VF.MPYTHON_USOCKET_RECVFROM_TOOLTIP="元組格式 (bytes, address)",VF.MPYTHON_USOCKET_SENDALL_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",VF.MPYTHON_USOCKET_SENDALL_MESSAGE0="socket %1 連續發送%2 並返回發送的位元組數",VF.MPYTHON_USOCKET_SENDALL_TOOLTIP="將所有數據發送到通訊端。通訊端必須連接到遠程通訊端。與send()此不同,此方法將嘗試通過連續發送數據塊來發送所有數據。",VF.MPYTHON_USOCKET_SENDS_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",VF.MPYTHON_USOCKET_SENDS_MESSAGE0="socket %1 發送 %2 並返回發送的字節數",VF.MPYTHON_USOCKET_SENDS_TOOLTIP="將數據發送到通訊端。通訊端必須連接到遠程通訊端。返回發送的位元組數,可能小於數據長度(“short write”)。",VF.MPYTHON_USOCKET_SEND_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",VF.MPYTHON_USOCKET_SEND_MESSAGE0="socket %1 發送 %2 並返回發送的字節數",VF.MPYTHON_USOCKET_SEND_TOOLTIP="Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",VF.MPYTHON_TEXT_ESC_HELPURL="",VF.MPYTHON_TEXT_ESC_MESSAGE0="文本轉義字元 %1 ",VF.MPYTHON_TEXT_ESC_TOOLTIP="文本轉義字元",VF.MPYTHON_USOCKET_SENDTO_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.sendto",VF.MPYTHON_USOCKET_SENDTO_MESSAGE0="socket %1 發送 %2 到地址 %3",VF.MPYTHON_USOCKET_SENDTO_TOOLTIP="Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",VF.MPYTHON_USOCKET_CONNECT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.connect",VF.MPYTHON_USOCKET_CONNECT_MESSAGE0="socket %1 連接 host %2 端口 %3",VF.MPYTHON_USOCKET_CONNECT_TOOLTIP="",VF.MPYTHON_USOCKET_GETADDRINFO_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.getaddrinfo",VF.MPYTHON_USOCKET_GETADDRINFO_MESSAGE0="解析 host %1 端口 %2 並返回 ip",VF.MPYTHON_USOCKET_GETADDRINFO_TOOLTIP="需聯網",VF.MPYTHON_USOCKET_ACCEPT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",VF.MPYTHON_USOCKET_ACCEPT_MESSAGE0="socket %1 接受連接請求並返回socket元組",VF.MPYTHON_USOCKET_ACCEPT_TOOLTIP="接收連接請求。socket需要指定地址並監聽連接。返回值是 (conn, address)。\nconn:新的socket對象,可以用來收發消息\naddress:連接到服務器的客戶端地址",VF.MPYTHON_USOCKET_LISTEN_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.listen",VF.MPYTHON_USOCKET_LISTEN_MESSAGE0="監聽socket %1 backlog個數 %2",VF.MPYTHON_USOCKET_LISTEN_TOOLTIP="backlog :接受套接字的最大个数,至少为0,如果没有指定,则默认一个合理值。",VF.MPYTHON_USOCKET_BIND_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.bind",VF.MPYTHON_USOCKET_BIND_MESSAGE0="socket %1 綁定地址 %2 端口 %3",VF.MPYTHON_USOCKET_BIND_TOOLTIP="",VF.MPYTHON_USOCKET_CLOSE_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.close",VF.MPYTHON_USOCKET_CLOSE_MESSAGE0="socket %1 關閉",VF.MPYTHON_USOCKET_CLOSE_TOOLTIP="",VF.MPYTHON_USOCKET_INIT_HELPURL="http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",VF.MPYTHON_USOCKET_INIT_MESSAGE0="創建 socket %1 地址 %2 類型 %3",VF.MPYTHON_USOCKET_INIT_TOOLTIP="AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP流\nSOCK_DGRAM:=2 — UDP數據報\nSOCK_RAW :=3 — 原始套接字\nSO_REUSEADDR : =4 — socket可重用\n",VF.MPYTHON_GET_POST_HELPURL="",VF.MPYTHON_GET_POST_MESSAGE0="%1 請求網址 %2 提交字段 %3",VF.MPYTHON_GET_POST_TOOLTIP="",VF.MPYTHON_UREQUESTS_GET_POST_HELPURL="",VF.MPYTHON_UREQUESTS_GET_POST_TOOLTIP="",VF.MPYTHON_UREQUESTS_GET_POST_MESSAGE0="%1 請求網址 %2 提交字段 %3",VF.MPYTHON_UREQUESTS_POST_FILE_HELPURL="",VF.MPYTHON_UREQUESTS_POST_FILE_TOOLTIP="",VF.MPYTHON_UREQUESTS_POST_FILE_MESSAGE0="Post 提交文件 %1 請求網址 %2 文件路徑 %3 Mime類型 %4 附加字段 %5",VF.MPYTHON_RESPONSE_HELPURL="",VF.MPYTHON_RESPONSE_MESSAGE0="響應内容 格式 %1",VF.MPYTHON_RESPONSE_TOOLTIP="",VF.STRING="字符串",VF._BYTE="二进制",VF.TEXT="文本",VF.MPYTHON_RESPONSE_ATTRIBUTE_HELPURL="",VF.MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0="響應屬性 %1",VF.MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP="",VF.MPYTHON_SETS_PIN_MODE_HELPURL="https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",VF.MPYTHON_SETS_PIN_MODE_TOOLTIP="右鍵幫助,查看引脚聲明",VF.MPYTHON_SETS_PIN_MODE_MESSAGE0="設置引脚 %1 為 %2 模式 %3 並設置值為 %4",VF.MPYTHON_SET_PIN_IN="輸入",VF.MPYTHON_SET_PIN_PUSH_PULL_OUT="推挽輸出",VF.MPYTHON_SET_PIN_LEAKY_OUT="開漏輸出",VF.MPYTHON_SET_PIN_NO_PULL="無上下拉",VF.MPYTHON_SET_PIN_DOWN_PULL="下拉",VF.MPYTHON_SET_PIN_UP_PULL="上拉",VF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL="",VF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0="綫程鎖對象 %1 請求鎖",VF.MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP="",VF.MPYTHON_START_NEW_THREAD_HELPURL="",VF.MPYTHON_START_NEW_THREAD_MESSAGE0="子綫程 %1",VF.MPYTHON_START_NEW_THREAD_TOOLTIP="",VF.MPYTHON_UART_INIT_HELPURL="",VF.MPYTHON_UART_INIT_MESSAGE0="串口 %4 初始化 波特率 %1 tx %2 rx %3",VF.MPYTHON_UART_INIT_TOOLTIP="掌控板支持3組串口。0用於REPL,剩下1,2兩組串口可用。所有引脚皆可作爲串口的輸入RX,除 P2、P3 、P4 、P10 只能作爲輸出,其餘所有的引脚理論上都可作爲輸出 TX。",VF.MPYTHON_UART_DEINIT_HELPURL="",VF.MPYTHON_UART_DEINIT_MESSAGE0="關閉串口 %1",VF.MPYTHON_UART_DEINIT_TOOLTIP="關閉 UART 總線",VF.MPYTHON_UART_WRITE_STR_HELPURL="",VF.MPYTHON_UART_WRITE_STR_MESSAGE0="串口 %1 寫入文本 %2 %3",VF.MPYTHON_UART_WRITE_STR_TOOLTIP="將文本寫入總線。\n返回值:寫入或 None 超時的字節數。",VF.MPYTHON_UART_WRITE_HEX_HELPURL="",VF.MPYTHON_UART_WRITE_HEX_MESSAGE0="串口 %1 發送16進制字符串 %2 %3",VF.MPYTHON_UART_WRITE_HEX_TOOLTIP="",VF.MPYTHON_UART_HAS_DATA_HELPURL="",VF.MPYTHON_UART_HAS_DATA_MESSAGE0="串口 %1 有可讀數據",VF.MPYTHON_UART_HAS_DATA_TOOLTIP="返回一個整數,計算可以無阻塞地讀取的字符數。\n如果沒有可用字符,它將返回0,如果有字符,則返回正數。\n即使有多個可讀的字符,該方法也可以返回1。",VF.MPYTHON_UART_READLINE_HELPURL="",VF.MPYTHON_UART_READLINE_MESSAGE0="串口 %1 讀取一行數據",VF.MPYTHON_UART_READLINE_TOOLTIP="讀一行,以換行符結尾。\n返回值:讀取行或 None 超時。",VF.MPYTHON_UART_READ_HELPURL="",VF.MPYTHON_UART_READ_MESSAGE0="串口 %1 讀取數據",VF.MPYTHON_UART_READ_TOOLTIP="讀取盡可能多的串口數據\n返回值:包含讀入字節的字節列表。若讀取超時則返回 None。",VF.MPYTHON_UART_READ_LENGTH_HELPURL="",VF.MPYTHON_UART_READ_LENGTH_MESSAGE0="串口 %1 讀取數據 長度 %2",VF.MPYTHON_UART_READ_LENGTH_TOOLTIP="讀取指定長度字節數據\n返回值:包含讀入字節的字節列表。若讀取超時則返回 None。",VF.MPYTHON_UART_WRITE_BYTE_HELPURL="",VF.MPYTHON_UART_WRITE_BYTE_MESSAGE0="串口 %1 寫入單字節 %2",VF.MPYTHON_UART_WRITE_BYTE_TOOLTIP="參數為 0~255 的整數\n將字節寫入總線。\n返回值:寫入或 None 超時的字節數。",VF.MPYTHON_UART_WRITE_BYTES_HELPURL="",VF.MPYTHON_UART_WRITE_BYTES_MESSAGE0="串口 %1 寫入字節數組 %2",VF.MPYTHON_UART_WRITE_BYTES_TOOLTIP="將字節數組寫入總線。\n返回值:寫入或 None 超時的字節數。",VF.TEXT_FORMAT_MESSAGE0="格式化字符串 %1 % %2",VF.TEXT_FORMAT_TOOLTIP="",VF.TEXT_FORMAT_HELPURL="",VF.TEXT_FORMAT2_MESSAGE0="格式化字符串 %1 format %2",VF.TEXT_FORMAT2_TOOLTIP="",VF.TEXT_FORMAT2_HELPURL="",VF.MPYTHON_BAUDRATE_HELPURL="",VF.MPYTHON_BAUDRATE_MESSAGE0="%1",VF.MPYTHON_BAUDRATE_TOOLTIP="",VF.MPYTHON_HIGH_LOW_HELPURL="",VF.MPYTHON_HIGH_LOW_MESSAGE0="%1",VF.MPYTHON_HIGH_LOW_TOOLTIP="",VF.MPYTHON_TEN_CONVERT_TO_HELPURL="",VF.MPYTHON_TEN_CONVERT_TO_MESSAGE0="10進制整數 %1 轉化為 %2 字符串",VF.MPYTHON_TEN_CONVERT_TO_TOOLTIP="",VF.MPYTHON_BIN="二進制",VF.MPYTHON_OCT="八進制",VF.MPYTHON_HEX="十六進制",VF.MPYTHON_CONVERT_TO_TEN_HELPURL="",VF.MPYTHON_CONVERT_TO_TEN_MESSAGE0="%1 字符串 %2 轉 10進制整數",VF.MPYTHON_CONVERT_TO_TEN_TOOLTIP="",VF.MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL="",VF.MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0="10進制整數 %2 轉 %1 字节",VF.MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP="",VF.MPYTHON_INT_TO_CHR_HELPURL="",VF.MPYTHON_INT_TO_CHR_MESSAGE0="整型 %1 轉 ASCII 單字符",VF.MPYTHON_INT_TO_CHR_TOOLTIP="ASCII:基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言",VF.MPYTHON_CHR_TO_INT_HELPURL="",VF.MPYTHON_CHR_TO_INT_MESSAGE0="ASCII 單字符 %1 轉 整型",VF.MPYTHON_CHR_TO_INT_TOOLTIP="ASCII:基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。",VF.MPYTHON_STR_TO_HEX_HELPURL="",VF.MPYTHON_STR_TO_HEX_MESSAGE0="字符串 %1 轉 十六進制 字節",VF.MPYTHON_STR_TO_HEX_TOOLTIP="返回結果中用空格分隔兩個十六進制數",VF.MPYTHON_HEX_TO_BIN_STR_HELPURL="",VF.MPYTHON_HEX_TO_BIN_STR_MESSAGE0="十六進制字符串 %1 轉 二進制 字節",VF.MPYTHON_HEX_TO_BIN_STR_TOOLTIP="",VF.MPYTHON_DATA_TO_BASE64_HELPURL="",VF.MPYTHON_DATA_TO_BASE64_MESSAGE0="%1 以 base64 格式編碼 返回字節對象",VF.MPYTHON_DATA_TO_BASE64_TOOLTIP="",VF.MPYTHON_BASE64_TO_DATA_HELPURL="",VF.MPYTHON_BASE64_TO_DATA_MESSAGE0="解碼 base64 數據 %1 返回字節對象",VF.MPYTHON_BASE64_TO_DATA_TOOLTIP="",VF.MPYTHON_UJSON_DUMPS_HELPURL="",VF.MPYTHON_UJSON_DUMPS_MESSAGE0="%1 轉 json 字符串",VF.MPYTHON_UJSON_DUMPS_TOOLTIP="JSON 格式的 key 必須是字符串 ,value 可以是合法的 JSON 數據類型(字符串, 數字, 對象, 數組, 布爾值或 none)",VF.MPYTHON_UJSON_LOADS_HELPURL="",VF.MPYTHON_UJSON_LOADS_MESSAGE0="解析 json 字符串 %1 返回对象",VF.MPYTHON_UJSON_LOADS_TOOLTIP="JSON 格式的 key 必須是字符串 ,value 可以是合法的 JSON 數據類型(字符串, 數字, 對象, 數組, 布爾值或 none)",VF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL="",VF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0="自定義終端部件 Terminal 虛擬管脚 V %1",VF.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP="",VF.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL="",VF.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0="同步虛擬管脚狀態 V %1",VF.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP="",VF.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL="",VF.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0="當 Blynk 斷開連接時",VF.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP="",VF.MPYTHON_BLYNK_ON_CONNECTED_HELPURL="",VF.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0="當 Blynk 連接時",VF.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP="",VF.MPYTHON_BLYNKTIMER_RUN_HELPURL="",VF.MPYTHON_BLYNKTIMER_RUN_MESSAGE0="運行 Blynk 定時器進程",VF.MPYTHON_BLYNKTIMER_RUN_TOOLTIP="建議放在 '一直重復' 中循環執行",VF.MPYTHON_BLYNK_RUN_HELPURL="",VF.MPYTHON_BLYNK_RUN_MESSAGE0="運行 Blynk 進程",VF.MPYTHON_BLYNK_RUN_TOOLTIP="建議放在 '一直重復' 中循環執行",VF.MPYTHON_BLYNK_APP_NOTIFY_HELPURL="",VF.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0="Blynk APP 顯示通知 %1",VF.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP="",VF.MPYTHON_BLYNKTIMER_HELPURL="",VF.MPYTHON_BLYNKTIMER_MESSAGE0="Blynk 定時器 %1 %2 周期 %3 秒",VF.MPYTHON_BLYNKTIMER_TOOLTIP='注意:\n定時器序號為自動獲取,自上而下,從0開始且連續,不可"定時器0,定時器2",此處暴露參數為方便查看!\n參數:\nno_timers_err=False - 如果所有定時器都停止,禁用異常觸發',VF.MPYTHON_BLYNK_GET_TIMERS_HELPURL="",VF.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0="可用的 Blynk 定時器",VF.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP="",VF.MPYTHON_BLYNK_STOP_TIMERS_HELPURL="",VF.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0="停止 Blynk 定時器 %1",VF.MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP='注意:\n定時器序號為自動獲取,自上而下,從0開始且連續,不可"定時器0,定時器2",此處暴露參數為方便查看!\n參數:\nno_timers_err=False - 如果所有定時器都停止,禁用異常觸發',VF.MPYTHON_UART_INPUT_HELPURL="",VF.MPYTHON_UART_INPUT_MESSAGE0="從串口獲取文本 提示語句 %1",VF.MPYTHON_UART_INPUT_TOOLTIP="",VF.INT_TO_CHR_HELPURL="",VF.INT_TO_CHR_MESSAGE0="整數 %1 轉 ASCII 單字符",VF.INT_TO_CHR_TOOLTIP="",VF.MPYTHON_BLYNK_SET_PROPERTY_HELPURL="",VF.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0="給虛擬管脚添加 屬性 %1 值 %2",VF.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP="放於 read 或 write 事件中,虛擬管脚由事件決定,與該管脚綁定的組件會擁有添加的屬性",VF.MPYTHON_BLYNK_EMAIL_HELPURL="",VF.MPYTHON_BLYNK_EMAIL_MESSAGE0="向預設郵箱發郵件 %1 主題 %2 正文 %3",VF.MPYTHON_BLYNK_EMAIL_TOOLTIP="",VF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL="",VF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0="發送數據 %1 到 Blynk APP 的 虛擬管脚 V %2",VF.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP="虛擬管脚:V0 ~ V255",VF.MPYTHON_BLYNK_SETUP_HELPURL="",VF.MPYTHON_BLYNK_SETUP_MESSAGE0="Blynk 設置 %1 服務器 %2 端口 %3 授權碼 %4",VF.MPYTHON_BLYNK_SETUP_TOOLTIP="服務器可填 blynk-cloud.com 或者 blynk.mpython.cn\n默認端口為 8080\n註意:手機APP訪問端口為 9443",VF.MPYTHON_BLYNK_APP_DATA_HELPURL="",VF.MPYTHON_BLYNK_APP_DATA_MESSAGE0="當 從 Blynk APP 收到 虛擬管腳 V %1 的值 %2 時",VF.MPYTHON_BLYNK_APP_DATA_TOOLTIP="虛擬管脚:V0 ~ V255",VF.MPYTHON_BLYNK_RECEIVED_MESSAGE0="當 收到 Blynk 虛擬管腳 V %1 的值",VF.MPYTHON_BLYNK_VALUE_MESSAGE0="從 Blynk 收到的值",VF.MPYTHON_BLYNK_VALUE_TOOLTIP="",VF.MPYTHON_BLYNK_VALUE_HELPURL="",VF.MPYTHON_ONENET_DISCONNECT_MESSAGE0="OneNET 斷開連接",VF.MPYTHON_ONENET_DISCONNECT_TOOLTIP="",VF.MPYTHON_ONENET_DISCONNECT_HELPURL="",VF.MPYTHON_ONENET_MSG_MESSAGE0="從 OneNET 收到的消息",VF.MPYTHON_ONENET_MSG_TOOLTIP="",VF.MPYTHON_ONENET_MSG_HELPURL="",VF.MPYTHON_ONENET_RECV_MESSAGE0="當 從 OneNET 收到消息 %1 時",VF.MPYTHON3_ONENET_RECV_MESSAGE0="當 從 OneNET 收到消息 時",VF.MPYTHON_ONENET_RECV_TOOLTIP="",VF.MPYTHON_ONENET_RECV_HELPURL="",VF.MPYTHON_ONENET_RECV_MSG_MESSAGE0="當 從 OneNET 收到特定消息 %1 時",VF.MPYTHON_ONENET_RECV_MSG_TOOLTIP="",VF.MPYTHON_ONENET_RECV_MSG_HELPURL="",VF.MPYTHON_ONENET_PUB_VALUE_MESSAGE0="向 OneNET 發送數據流 名稱 %1 值 %2",VF.MPYTHON_ONENET_PUB_VALUE_TOOLTIP="",VF.MPYTHON_ONENET_PUB_VALUE_HELPURL="",VF.MPYTHON_ONENET_PUB_DICT_MESSAGE0="向 OneNET 發送數據流 %1",VF.MPYTHON_ONENET_PUB_DICT_TOOLTIP="",VF.MPYTHON_ONENET_PUB_DICT_HELPURL="",VF.MPYTHON_ONENET_PUB_VALUE2_MESSAGE0="向 小程序 發送數據流 名稱 %1 值 %2",VF.MPYTHON_ONENET_PUB_VALUE2_TOOLTIP="",VF.MPYTHON_ONENET_PUB_VALUE2_HELPURL="",VF.MPYTHON_HCSR04_DISTANCE_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",VF.MPYTHON_HCSR04_DISTANCE_MESSAGE0="%1 hcsr04 超聲波距離 測量單位 %2",VF.MPYTHON_HCSR04_DISTANCE_TOOLTIP="",VF.MPYTHON_HCSR04_DISTANCE_MM_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",VF.MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0="%1 hcsr04 超聲波(mm)",VF.MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP="",VF.MPYTHON_HCSR04_OBJ_HELPURL="https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",VF.MPYTHON_HCSR04_OBJ_MESSAGE0="hcsr04 超聲波初始化 名稱 %1 trigger %2 echo %3",VF.MPYTHON_HCSR04_OBJ_TOOLTIP="",VF.MPYTHON_PM2_5_MIC_HELPURL="",VF.MPYTHON_PM2_5_MIC_MESSAGE0="rx引脚%1 PM值濃度%2",VF.MPYTHON_PM2_5_MIC_TOOLTIP="",VF.MPYTHON_PM2_5_LitresAir_HELPURL="",VF.MPYTHON_PM2_5_LitresAir_MESSAGE0="rx引脚%1 0.1昇空氣中直徑在%2 顆粒物個數",VF.MPYTHON_PM2_5_LitresAir_TOOLTIP="",VF.MPYTHON3_IR_REMOTE_RECV_MESSAGE0="當 紅外接收端 %1 收到消息時 %2 執行 %3",VF.MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0="紅外回調地址",VF.MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0="紅外接收內容",VF.MPYTHON_IR_REMOTE_RECV_MESSAGE0="紅外接收 %1 回調地址 %2 回調命令 %3",VF.MPYTHON_IR_REMOTE_RECV_HELPURL="",VF.MPYTHON_IR_REMOTE_RECV_TOOLTIP="",VF.MPYTHON_IR_REMOTE_SEND_MESSAGE0="紅外發送 %1 地址 %2 命令 %3",VF.MPYTHON_IR_REMOTE_SEND_HELPURL="",VF.MPYTHON_IR_REMOTE_SEND_TOOLTIP="",VF.MPYTHON_ONENET_ACCEPT_MESSAGE="收到消息",VF.MPYTHON_ONENET="OneNET 設置",VF.MPYTHON_ONENET_WECHAT_APP="小程序 设置",VF.MPYTHON_ONENET_OPTION_BOARDS="可選掌控板",VF.MPYTHON_ONENET_TITLE="OneNET",VF.MPYTHON_SERVER="服務器",VF.MPYTHON_DEVICE_ID="設備ID",VF.MPYTHON_PRODUCT_ID="產品ID",VF.MPYTHON_API_KEY="產品APIKey",VF.MPYTHON_ONENET_CALLBACK="回調函數",VF.MPYTHON_TOPIC="主題",VF.MPYTHON_ONENET_CALLBACK_TITLE="OneNET回調函數",VF.MPYTHON_ONENET_OPTION_BOARDS_HELPURL="",VF.MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0="小程序 選擇掌控板應用 %1",VF.MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP="",VF.TEXT_TO_BYTE_MESSAGE0="轉字節 %1",VF.TEXT_TO_BYTE_TOOLTIP="支持數據類型:string",VF.TEXT_TO_BYTE_HELPURL="",VF.OTHER_TO_BYTE_MESSAGE0="非文本轉字節 %1",VF.OTHER_TO_BYTE_TOOLTIP="",VF.OTHER_TO_BYTE_HELPURL="",VF.MPYTHON_BYTES_DECODE_HELPURL="",VF.MPYTHON_BYTES_DECODE_MESSAGE0="字節 %1 轉 字符串",VF.MPYTHON_BYTES_DECODE_TOOLTIP="",VF.MPYTHON_ONENET_TOOLTIP="創建OneNET連接",VF.MPYTHON_ONENET_INIT_WIFI_MESSAGE0="物聯網 確保連接到 Wi-Fi 名稱 %1 密碼 %2",VF.MPYTHON_ONENET_INIT_WIFI_TOOLTIP="",VF.MPYTHON_ONENET_INIT_WIFI_HELPURL="",VF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL="",VF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0="儅從小程序收到消息 %1 和 %2 時",VF.MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP="",VF.MPYTHON_MAC_ADDRESS_HELPURL="",VF.MPYTHON_MAC_ADDRESS_MESSAGE0="MAC 地址",VF.MPYTHON_MAC_ADDRESS_TOOLTIP="",VF.MPYTHON_RADIO_REC_HELPURL="",VF.MPYTHON_RADIO_REC_MESSAGE0="無綫廣播 接收消息",VF.MPYTHON_RADIO_REC_TOOLTIP="所接收為字節型",VF.MPYTHON_RADIO_SEND_HELPURL="",VF.MPYTHON_RADIO_SEND_MESSAGE0="無綫廣播 發送 %1",VF.MPYTHON_RADIO_SEND_TOOLTIP="頻道: 1~13",VF.MPYTHON_RADIO_CHANNEL_HELPURL="",VF.MPYTHON_RADIO_CHANNEL_MESSAGE0="設無綫廣播 頻道為 %1",VF.MPYTHON_RADIO_CHANNEL_TOOLTIP="頻道: 1~13",VF.MPYTHON_RADIO_ON_OFF_HELPURL="",VF.MPYTHON_RADIO_ON_OFF_MESSAGE0="%1 無綫廣播",VF.MPYTHON_RADIO_ON_OFF_TOOLTIP="頻道: 1~13",VF.MPYTHON_RADIO_MSG_MESSAGE0="收到的無線廣播消息",VF.MPYTHON_RADIO_MSG_TOOLTIP="",VF.MPYTHON_RADIO_MSG_HELPURL="",VF.MPYTHON3_RADIO_RECV_MESSAGE0="當 收到無線廣播消息 時 %1 執行 %2",VF.MPYTHON_RADIO_RECV_MESSAGE0="當 收到無線廣播消息 %1 時",VF.MPYTHON_RADIO_RECV_TOOLTIP="頻道: 1~13",VF.MPYTHON_RADIO_RECV_HELPURL="",VF.MPYTHON_RADIO_RECV_MSG_MESSAGE0="當 收到特定無線廣播消息 %1 時 %2 執行 %3",VF.MPYTHON_RADIO_RECV_MSG_TOOLTIP="頻道: 1~13",VF.MPYTHON_RADIO_RECV_MSG_HELPURL="",VF.MPYTHON_UDP_INIT_HELPURL="",VF.MPYTHON_UDP_INIT_MESSAGE0="建立 UDP 連接",VF.MPYTHON_UDP_INIT_TOOLTIP="UDP連接基於Wi-Fi",VF.MPYTHON_UDP_SEND_HELPURL="",VF.MPYTHON_UDP_SEND_MESSAGE0="UDP 群發消息 %1",VF.MPYTHON_UDP_SEND_TOOLTIP="",VF.MPYTHON_UDP_SENDTO_HELPURL="",VF.MPYTHON_UDP_SENDTO_MESSAGE0="UDP 發送消息 %1 到 %2 端口 %3",VF.MPYTHON_UDP_SENDTO_TOOLTIP="",VF.MPYTHON_UDP_RECV_HELPURL="",VF.MPYTHON_UDP_RECV_MESSAGE0="UDP 接收消息",VF.MPYTHON_UDP_RECV_TOOLTIP="",VF.MPYTHON_UDP_RECV_EVENT_HELPURL="",VF.MPYTHON_UDP_RECV_EVENT_MESSAGE0="當從 UDP 收到消息時 %1 執行 %2",VF.MPYTHON_UDP_RECV_EVENT_TOOLTIP="",VF.MPYTHON_UDP_RECV_MSG_MESSAGE0="從 UDP 收到的消息",VF.MPYTHON_UDP_RECV_MSG_TOOLTIP="",VF.MPYTHON_UDP_RECV_MSG_HELPURL="",VF.MPYTHON_AUDIO_PLAY_chirp_MESSAGE0="鳥叫",VF.MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0="鋼琴黑暗旋律配樂",VF.MPYTHON_AUDIO_PLAY_miaow_MESSAGE0="貓叫",VF.MPYTHON_AUDIO_PLAY_bark_MESSAGE0="小狗吠叫",VF.MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0="渾厚的打擊音",VF.MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0="緊張效果的音效",VF.MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0="拍照快門聲",VF.MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0="數百只蒼蠅",VF.MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0="蟋蟀叫聲",VF.MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0="搖晃低音聲線",VF.MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0="聽眾歡呼掌聲",VF.MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0="郵輪汽笛",VF.MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0="現代電話鈴聲",VF.MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0="拔蘿蔔",VF.MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0="兩只老虎",VF.MPYTHON_AUDIO_SET_VOLUME_HELPURL="",VF.MPYTHON_AUDIO_SET_VOLUME_MESSAGE0="設音頻音量 %1",VF.MPYTHON_AUDIO_SET_VOLUME_TOOLTIP="",VF.MPYTHON_DISPCHAR_MODE_1="普通",VF.MPYTHON_DISPCHAR_MODE_2="反轉",VF.MPYTHON_DISPCHAR_MODE_3="透明",VF.MPYTHON_AUDIO_XUNFEI_TTS_HELPURL="",VF.MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0="TTS 語音播放 %1",VF.MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP="需要在 訊飛開放平臺 www.xfyun.cn 上開通“在線語音合成”服務",VF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL="https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",VF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0="TTS 語音配置 APPID %1 APIKey %2",VF.MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP="輸入在 訊飛開放平臺 www.xfyun.cn 獲取的 APPID 與 APIKey\n註意:要設置IP白名單",VF.MPYTHON_AUDIO_PLAY_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",VF.MPYTHON_AUDIO_PLAY_MESSAGE0="音頻 播放 %1",VF.MPYTHON_AUDIO_PLAY_TOOLTIP="需要有源音箱\nP8 左聲道\nP9 右聲道\nGND 接地\n播放參數: \n網絡 MP3 的 url 或已上傳至掌控板的 MP3, 如'music_1.mp3' ",VF.MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",VF.MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0="音頻 播放 %1",VF.MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP="需要有源音箱\nP8 左聲道\nP9 右聲道\nGND 接地\n播放參數: \n網絡 MP3 的 url 或已上傳至掌控板的 MP3, 如'music_1.mp3' ",VF.MPYTHON_AUDIO_DEINIT_HELPURL="",VF.MPYTHON_AUDIO_DEINIT_MESSAGE0="音頻 釋放緩存",VF.MPYTHON_AUDIO_DEINIT_TOOLTIP="",VF.MPYTHON_AUDIO_CMD_HELPURL="",VF.MPYTHON_AUDIO_CMD_MESSAGE0="音頻 %1",VF.MPYTHON_AUDIO_CMD_TOOLTIP="",VF.MPYTHON_AUDIO_INIT_HELPURL="",VF.MPYTHON_AUDIO_INIT_MESSAGE0="音頻 初始化",VF.MPYTHON_AUDIO_INIT_TOOLTIP="為音頻解碼開闢緩存",VF.MPYTHON_AUDIO_START_RECORDING_HELPURL="",VF.MPYTHON_AUDIO_START_RECORDING_MESSAGE0="開始錄音 錄音時長%1秒",VF.MPYTHON_AUDIO_START_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本,錄音時長不能超過5秒",VF.MPYTHON_AUDIO_RECORDING_RESULT_HELPURL="",VF.MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0="錄音結果",VF.MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",VF.MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL="",VF.MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0="將 %1 進行識別",VF.MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP="需要掌控板v1.1以上硬件版本。",VF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL="",VF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0="識別錄音結果",VF.MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP="需要掌控板v1.1以上硬件版本。",VF.MPYTHON_RECORD_INIT_HELPURL="",VF.MPYTHON_RECORD_INIT_MESSAGE0="錄音 初始化",VF.MPYTHON_RECORD_INIT_TOOLTIP="錄音初始化。\n需要掌控板v1.1以上硬件版本。",VF.MPYTHON_RECORD_DEINIT_HELPURL="",VF.MPYTHON_RECORD_DEINIT_MESSAGE0="錄音 釋放資源",VF.MPYTHON_RECORD_DEINIT_TOOLTIP="錄音結束後釋放資源。\n需要掌控板v1.1以上硬件版本。",VF.MPYTHON_RECORD_WAV_HELPURL="",VF.MPYTHON_RECORD_WAV_MESSAGE0="錄制音頻 存儲路徑 %1 時長 %2 秒",VF.MPYTHON_RECORD_WAV_TOOLTIP="錄制音頻,並以 WAV 格式存儲。\n需要掌控板v1.1以上硬件版本。",VF.MPYTHON_ASR_HELPURL="",VF.MPYTHON_ASR_MESSAGE0="識別 %1 秒語音指令",VF.MPYTHON_ASR_TOOLTIP="可以識別3秒內的語音指令。\n需要掌控板v1.1以上硬件版本。",VF.mpython_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_button_A="P5(按鍵A)",VF.mpython_button_B="P11(按鍵B)",VF.mpython_PIN7_RGB="P7(板載RGB)",VF.MPYTHON_PWM_PIN_P7="P7 (掌控板)",VF.MPYTHON_PWM_PIN_P9="P9 (掌控實驗箱)",VF.mpython_tem="溫度",VF.mpython_hum="濕度",VF.mpython_pre="氣壓",VF.mpython_left_right="左右",VF.MPYTHON_LEFT="左",VF.MPYTHON_RIGHT="右",VF.mpython_front_back="前後",VF.mpython_vertical="垂直",VF.mpython_horizontal="水平",VF.mpython_run_in_back="後臺運行",VF.mpython_run_in_front="前臺運行",VF.mpython_draw="繪制",VF.mpython_clear="清除",VF.mpython_s="秒",VF.mpython_ms="毫秒",VF.mpython_us="微秒",VF.mpython_year="年",VF.mpython_month="月",VF.mpython_date="日",VF.mpython_hour="時",VF.mpython_minute="分",VF.mpython_week="星期數",VF.mpython_days="天數",VF.MPYTHON_ORDER="第",VF.MPYTHON_REVERSE_ORDER="倒數第",VF.MATH_RANDOM_RANDRANGE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.MATH_RANDOM_RANDRANGE_TOOLTIP="返回指定遞增基數集合中的一個隨機數,基數缺省值為1",VF.MATH_RANDOM_RANDRANGE_MESSAGE0="隨機數 從遞增區間 [%1 ,%2) 遞增步長%3",VF.MATH_KEEP_DECIMAL_HELPURL="",VF.MATH_KEEP_DECIMAL_TOOLTIP="",VF.MATH_KEEP_DECIMAL_MESSAGE0="%1 保留 %2 位小數",VF.MPYTHON_MIN="最小值",VF.MPYTHON_MAX="最大值",VF.MPYTHON_LENTH="長度",VF.TUPLE_MIN_MAX_LEN_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.TUPLE_MIN_MAX_LEN_TOOLTIP="",VF.TUPLE_MIN_MAX_LEN_MESSAGE0="元組 %1 %2",VF.TUPLE_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.TUPLE_ITEM_EXIST_TOOLTIP="",VF.TUPLE_ITEM_EXIST_MESSAGE0="元組%1 包含%2",VF.LIST_ITEM_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.LIST_ITEM_EXIST_TOOLTIP="",VF.LIST_ITEM_EXIST_MESSAGE0="列表%1 包含%2",VF.PARTS_OF_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.PARTS_OF_TUPLE_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.PARTS_OF_TUPLE_MESSAGE0="返回元組%1 取第%2 項到尾項",VF.PARTS_OF_TUPLE2_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.PARTS_OF_TUPLE2_TOOLTIP="遞增順序取項\n舉例:\n 倒數第5到倒數第2;\n 第0到第5",VF.PARTS_OF_TUPLE2_MESSAGE0="返回元組%1 取%2 %3 項到 %4 %5 項",VF.PARTS_OF_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.PARTS_OF_LIST_TOOLTIP="遞增順序取項\n舉例:\n 倒數第5到倒數第2;\n 第0到第5",VF.PARTS_OF_LIST_MESSAGE0="返回列表%1 取%2 %3 項到 %4 %5 項",VF.LIST_TO_TUPLE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.LIST_TO_TUPLE_TOOLTIP="",VF.LIST_TO_TUPLE_MESSAGE0="列表%1 轉元組",VF.tuple_create_with_MESSAGE0="定義元組 %1 = %2 ",VF.tuple_create_with_TOOLTIP="只包含一個元素時,需要在元素後面添加逗號",VF.tuple_create_with_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.tuple_order_item_MESSAGE0="元組%1 %2 %3 項",VF.tuple_order_item_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.tuple_order_item_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.LIST_ORDER_ITEM_MESSAGE0="列表%1 %2 %3 項",VF.LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SET_LIST_ORDER_ITEM_MESSAGE0="設列表%1 %2 %3 項為%4",VF.SET_LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.SET_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.INSERT_LIST_ORDER_ITEM_MESSAGE0="插入列表%1 %2 %3 項為%4",VF.INSERT_LIST_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.INSERT_LIST_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SET_TUPLE_ORDER_ITEM_MESSAGE0="設元組%1 %2 %3 項為%4",VF.SET_TUPLE_ORDER_ITEM_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.SET_TUPLE_ORDER_ITEM_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_CREATE_WITH_TOOLTIP="",VF.DICT_CREATE_WITH_MESSAGE0="定義字典 %1 = %2",VF.SET_CREATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SET_CREATE_WITH_TOOLTIP="",VF.SET_CREATE_WITH_MESSAGE0="定義集合 %1 = %2",VF.SET_UPDATE_WITH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SET_UPDATE_WITH_TOOLTIP="添加參數可為字符串、列表、元組、集合、字典(只添加key),已有元素則不進行操作",VF.SET_UPDATE_WITH_MESSAGE0="集合 %1 添加 %2",VF.INTERSECTION_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.INTERSECTION_OF_SETS_TOOLTIP="",VF.INTERSECTION_OF_SETS_MESSAGE0="取 %1 集合 %2 集合 %3",VF.MPYTHON_INTERSECTION="交集",VF.MPYTHON_UNION="並集",VF.MPYTHON_DIFFERENCE="差集",VF.SETS_UPDATE_WAYS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SETS_UPDATE_WAYS_TOOLTIP="",VF.SETS_UPDATE_WAYS_MESSAGE0="集合 %1 更新為 與集合 %2 的 %3",VF.SUBSET_SUPERSET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SUBSET_SUPERSET_TOOLTIP="",VF.SUBSET_SUPERSET_MESSAGE0="集合 %1 為集合 %2 的 %3",VF.MPYTHON_SUBSET="子集",VF.MPYTHON_SUPERSET="超集",VF.LEN_OF_SETS_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.LEN_OF_SETS_TOOLTIP="",VF.LEN_OF_SETS_MESSAGE0="集合 %1 長度",VF.GET_SETS_POP_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.GET_SETS_POP_TOOLTIP="",VF.GET_SETS_POP_MESSAGE0="返回隨機項並移除之 從集合 %1",VF.CREATE_EMPTY_SET_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.CREATE_EMPTY_SET_TOOLTIP="",VF.CREATE_EMPTY_SET_MESSAGE0="創建空集合 %1",VF.BIT_INVERSION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.BIT_INVERSION_TOOLTIP="對數據的每個二進制位取反",VF.BIT_INVERSION_MESSAGE0="二進制取反 %1",VF.TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.SET_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP="項可為字符串、已賦值變量、元組",VF.DICT_CREATE_WITH_ITEMS_INSERT_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP="正序計數從0開始,倒序計數從1開始",VF.DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_KEY_VALUE_TOOLTIP="",VF.DICT_KEY_VALUE_MESSAGE0="字典%1 鍵%2 的值",VF.ADD_DICT_KEY_VALUE_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.ADD_DICT_KEY_VALUE_TOOLTIP="已有該鍵則更新該鍵",VF.ADD_DICT_KEY_VALUE_MESSAGE0="字典%1 添加鍵%2 值%3",VF.DICT_LENGTH_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_LENGTH_TOOLTIP="",VF.DICT_LENGTH_MESSAGE0="字典%1 長度",VF.DICT_KEY_EXIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_KEY_EXIST_TOOLTIP="",VF.DICT_KEY_EXIST_MESSAGE0="字典%1 包含鍵%2",VF.DICT_KEY_OR_VAL_LIST_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.DICT_KEY_OR_VAL_LIST_TOOLTIP="",VF.DICT_KEY_OR_VAL_LIST_MESSAGE0="字典%1 %2的列表",VF.DICT_KEYS="鍵",VF.DICT_VALUES="值",VF.mpython_lists_append_MESSAGE0="列表%1 末尾添加項%2",VF.mpython_lists_append_TOOLTIP="",VF.mpython_lists_append_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_lists_extend_MESSAGE0="列表%1 追加列表%2",VF.mpython_lists_extend_TOOLTIP="",VF.mpython_lists_extend_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_lists_clear_MESSAGE0="列表%1 清空",VF.mpython_lists_clear_TOOLTIP="",VF.mpython_lists_clear_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.MPYTHON_REMOVE_REPETITION_MESSAGE0="列表%1 移除重複",VF.MPYTHON_REMOVE_REPETITION_TOOLTIP="",VF.MPYTHON_REMOVE_REPETITION_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_Timer_value_MESSAGE0="定時器 %1 的計數值",VF.mpython_Timer_value_TOOLTIP="獲取並返回計時器當前計數值",VF.mpython_Timer_deinit_MESSAGE0="清除 定時器/事件 %1",VF.mpython_Timer_deinit_TOOLTIP="取消定時器的初始化。停止計時器,並禁用計時器外圍設備",VF.mpython_Interrupt_AB_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",VF.mpython_Interrupt_AB_TOOLTIP="",VF.mpython_Interrupt_AB_MESSAGE0="當按鍵 %1 被 %2 時",VF.mpython_Interrupt_pin_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",VF.mpython_Interrupt_pin_TOOLTIP="上升沿觸發:由低電平到高電平;下降沿觸發:由高電平到低電平",VF.mpython_Interrupt_pin_MESSAGE0="當引腳 %1 電平 %2 時",VF.mpython_Interrupt_pin_IRQ_FALLING="↘ 從高到低",VF.mpython_Interrupt_pin_IRQ_RISING="↗ 從低到高",VF.mpython_IRQ_FALLING="按下",VF.mpython_IRQ_RISING="松開",VF.mpython_PERIODIC="重復執行",VF.mpython_ONE_SHOT="延時執行",VF.MPYTHON_IS_SHAKED_MESSAGE0="掌控板 %1",VF.MPYTHON_IS_SHAKED_HELPURL="",VF.MPYTHON_IS_SHAKED_TOOLTIP="",VF.MPYTHON_IS_SHAKED="被搖晃",VF.MPYTHON_IS_THROWN="被拋起",VF.MPYTHON_SHAKE_DETECTOR_MESSAGE0="當掌控板 %1 時",VF.MPYTHON_SHAKE_DETECTOR_HELPURL="",VF.MPYTHON_SHAKE_DETECTOR_TOOLTIP="",VF.MPYTHON_IS_TILTED_MESSAGE0="掌控板 %1",VF.MPYTHON_IS_TILTED_HELPURL="",VF.MPYTHON_IS_TILTED_TOOLTIP="",VF.MPYTHON_TILT_DETECTOR_MESSAGE0="當掌控板 %1 時",VF.MPYTHON_TILT_DETECTOR_HELPURL="",VF.MPYTHON_TILT_DETECTOR_TOOLTIP="",VF.MPYTHON_DIRECTION_FORWARD="向前傾斜",VF.MPYTHON_DIRECTION_BACK="向後傾斜",VF.MPYTHON_DIRECTION_RIGHT="向右傾斜",VF.MPYTHON_DIRECTION_LEFT="向左傾斜",VF.MPYTHON_DIRECTION_NONE="平放",VF.MPYTHON_TOUCH_EVENT_MESSAGE0="當觸摸鍵 %1 被 %2 時",VF.MPYTHON_TOUCH_EVENT_HELPURL="",VF.MPYTHON_TOUCH_EVENT_TOOLTIP="",VF.MPYTHON_TOUCH_EVENT_PRESSED="觸摸",VF.MPYTHON_TOUCH_EVENT_UNPRESSED="釋放",VF.MPYTHON_CUSTOM_EVENT_MESSAGE0="事件 %1 : 當 %2 時",VF.MPYTHON_CUSTOM_EVENT_HELPURL="",VF.MPYTHON_CUSTOM_EVENT_TOOLTIP="自定義事件與定時器共用 1/2/4/7/8/9/10,不可同時占用一個端口。\n最大同時創建4個事件/定時器,如果存在沖突,請嘗試換一個編號。",VF.mpython_music_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_music_range_pitch_TOOLTIP="時長為單個頻率的時長",VF.mpython_music_range_pitch_MESSAGE0="播放音調 從%1 到%2 步長%3 時長%4 毫秒 引脚 %5",VF.mpython_neopixel_init_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_neopixel_init_TOOLTIP="",VF.mpython_neopixel_init_MESSAGE0="燈帶初始化 名稱%1 引腳%2 數量%3",VF.MPYTHON_NEOPIXEL_RAINBOW_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP="",VF.MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0="彩虹燈效 燈帶%1 數量 %2 亮度 %3 偏移 %4",VF.MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",VF.MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP="亮度調節, 範圍 0 ~ 100",VF.MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0="燈帶 %1 設置亮度為 %2",VF.mpython_neopixel_single_TOOLTIP="",VF.mpython_neopixel_single_MESSAGE0="燈帶%1 %2號 紅%3 綠%4 藍%5",VF.mpython_neopixel_single_gui_MESSAGE0="燈帶 %1 %2號 顏色為 %3",VF.mpython_neopixel_single_gui_TOOLTIP="",VF.mpython_neopixel_show_TOOLTIP="",VF.mpython_neopixel_show_MESSAGE0="燈帶%1 設置生效",VF.mpython_neopixel_off_TOOLTIP="",VF.mpython_neopixel_off_MESSAGE0="燈帶%1 關閉",VF.mpython_neopixel_all_TOOLTIP="",VF.mpython_neopixel_all_MESSAGE0="燈帶%1 全亮 紅%2 綠%3 藍%4",VF.mpython_neopixel_all_gui_TOOLTIP="",VF.mpython_neopixel_all_gui_MESSAGE0="燈帶%1 全亮 顏色%2",VF.mpython_image_to_oled_MESSAGE0="打開圖片 %1 寬 %2 高 %3",VF.mpython_image_to_oled_TOOLTIP="",VF.mpython_time_localtime_MESSAGE0="本地時間 %1",VF.mpython_time_localtime_TOOLTIP="星期數:返回0~6,周一為0,周日為6\n天數:獲取當前日期是一年中的第幾天\n建議先連接wifi並獲取網絡時間",VF.mpython_WiFi_config_MESSAGE0="Wi-Fi 配置信息 %1",VF.mpython_WiFi_config_TOOLTIP="netmask-子網掩碼;gateway-網關",VF.mpython_time_ticks_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",VF.mpython_time_ticks_MESSAGE0="運行時間 %1",VF.mpython_time_ticks_TOOLTIP="",VF.MPYTHON_TIMER_DEF_MESSAGE0="定義定時器 %1",VF.MPYTHON_TIMER_INIT_MESSAGE0="啟動定時器 %1 %2 周期 %3 毫秒",VF.mpython_Timer_MESSAGE0="設置定時器 %1 %2 周期 %3 毫秒",VF.mpython_Timer_TOOLTIP="創建定時器n,n=1-14。\n最大同時創建4個定時器,如果存在沖突,請嘗試換一個編號。\n3用於內部程序,\n5/6用於伺服系統和ADC,\n11用於搖晃檢測,\n12用於觸摸鍵檢測,\n13用於Radio和DHT11/DHT22定時取值(共用),\n14用於OneNET和傾斜檢測(共用),\n其余端口與自定義事件共用。",VF.mpython_Timer_HELPURL="https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",VF.mpython_bme280_hum_tem_pre_MESSAGE0="%1",VF.mpython_bme280_hum_tem_pre_TOOLTIP="氣壓單位Pa, 溫度單位攝氏度, 環境濕度單位%",VF.mpython_sway_xyz_MESSAGE0="%1 搖晃掌控板",VF.mpython_sway_xyz_TOOLTIP="掌控板正面朝上,觸摸鍵 'python' 靠近使用者,開始左右或前後搖晃掌控板",VF.mpython_init_bluetooth_MESSAGE0="初始化 藍牙名稱%1",VF.mpython_init_bluetooth_TOOLTIP="初始化 藍牙名稱",VF.mpython_OnOff_bluetooth_MESSAGE0="藍牙設備%1廣播",VF.mpython_OnOff_bluetooth_TOOLTIP="藍牙設備 開啟或關閉廣播",VF.mpython_HID_consumer_bluetooth_MESSAGE0="消費類設備%1 狀態%2",VF.mpython_HID_consumer_bluetooth_TOOLTIP="類比HID消費類設備的控制器,如藍牙遙控器",VF.mpython_HID_release_keyboard_bluetooth_MESSAGE0="鍵盤 釋放按鍵",VF.mpython_HID_release_keyboard_bluetooth_TOOLTIP="HID鍵盤設備",VF.mpython_HID_mouse_bluetooth_MESSAGE0="鼠標%1",VF.mpython_HID_mouse_bluetooth_TOOLTIP="鼠標設備",VF.mpython_HID_release_mouse_bluetooth_MESSAGE0="鼠標 釋放按鍵",VF.mpython_HID_release_mouse_bluetooth_TOOLTIP="鼠標設備",VF.mpython_HID_keyboard_bluetooth_MESSAGE0="鍵盤 按鍵%1",VF.mpython_HID_keyboard_bluetooth_TOOLTIP="鍵盤設備",VF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="HID設備按鍵 %1 組合按鍵%2",VF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="如果想使用多個按鍵組合指令,可以用“|”或運算",VF.mpython_HID_mouse_pointer_bluetooth_MESSAGE0="滑鼠 指標移動 x%2 y%1",VF.mpython_HID_mouse_pointer_bluetooth_TOOLTIP="鼠标坐标x,y轴的相对位移,范围-1023 ~ 1023",VF.mpython_HID_keyboard_group_bluetooth_MESSAGE0="設備 按鍵 %1 組合按鍵%2",VF.mpython_HID_keyboard_group_bluetooth_TOOLTIP="鍵盤設備",VF.mpython_HID_keyboard_part_bluetooth_MESSAGE0="鍵盤 组合設備%1",VF.mpython_HID_keyboard_part_bluetooth_TOOLTIP="如果想使用多個按鍵組合指令,可以用“|”或運算",VF.mpython_HID_keyboard_part_bluetooth_HELPURL="",VF.mpython_init_wifi_MESSAGE0="連接 Wi-Fi 名稱 %1 密碼 %2",VF.mpython_init_wifi_TOOLTIP="讓掌控板接入Wi-Fi環境",VF.MPYTHON_WIFI_IFCONFIG_MESSAGE0="Wi-Fi 設置固定IP %1 IP 地址 %2 子網掩碼 %3 默認網關 %4 DNS %5",VF.MPYTHON_WIFI_IFCONFIG_TOOLTIP="",VF.MPYTHON_WIFI_IFCONFIG_HELPURL="",VF.mpython_dis_WiFi_MESSAGE0="斷開 Wi-Fi 連接",VF.mpython_dis_WiFi_TOOLTIP="",VF.MPYTHON_ENABLE_APWIFI_HELPURL="https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",VF.MPYTHON_ENABLE_APWIFI_TOOLTIP="密碼可以為空,或者8位以上的字母或數字。\nAP模式僅用於掌控板之間的相互通信,不可以作為熱點,令其它設備上網。",VF.MPYTHON_ENABLE_APWIFI_MESSAGE0="開啟 AP模式 名稱 %1 密碼 %2 信道 %3",VF.mpython_disable_APWiFi_MESSAGE0="關閉 AP模式",VF.mpython_disable_APWiFi_TOOLTIP="",VF.mpython_ntptime_settime_MESSAGE0="同步網絡時間 時區 %1 授時服務器 %2",VF.mpython_ntptime_settime_TOOLTIP="NTP時間同步是一種時間同步網絡技術",VF.mpython_wifi_get_date_MESSAGE0="獲取當前日期",VF.mpython_wifi_get_date_TOOLTIP="獲取當前日期字符串 示例:2020年12月12日",VF.mpython_wifi_get_time_MESSAGE0="獲取當前時間",VF.mpython_wifi_get_time_TOOLTIP="獲取當前時間字符串",VF.mpython_ntptime_timezone_E1="東1區",VF.mpython_ntptime_timezone_E2="東2區",VF.mpython_ntptime_timezone_E3="東3區",VF.mpython_ntptime_timezone_E4="東4區",VF.mpython_ntptime_timezone_E5="東5區",VF.mpython_ntptime_timezone_E6="東6區",VF.mpython_ntptime_timezone_E7="東7區",VF.mpython_ntptime_timezone_E8="東8區",VF.mpython_ntptime_timezone_E9="東9區",VF.mpython_ntptime_timezone_E10="東10區",VF.mpython_ntptime_timezone_E11="東11區",VF.mpython_ntptime_timezone_E12="東12區",VF.mpython_ntptime_timezone_0="中時區",VF.mpython_ntptime_timezone_W1="西1區",VF.mpython_ntptime_timezone_W2="西2區",VF.mpython_ntptime_timezone_W3="西3區",VF.mpython_ntptime_timezone_W4="西4區",VF.mpython_ntptime_timezone_W5="西5區",VF.mpython_ntptime_timezone_W6="西6區",VF.mpython_ntptime_timezone_W7="西7區",VF.mpython_ntptime_timezone_W8="西8區",VF.mpython_ntptime_timezone_W9="西9區",VF.mpython_ntptime_timezone_W10="西10區",VF.mpython_ntptime_timezone_W11="西11區",VF.mpython_ntptime_timezone_W12="西12區",VF.FILE_TO_LIST_HELPURL="",VF.FILE_TO_LIST_TOOLTIP="讀出指定路徑的文本文件內容(僅限utf-8格式),並轉為列表形式,以分隔符分隔。",VF.FILE_TO_LIST_MESSAGE0="讀取文本文件 %1 為列表 ,以 %2 分隔",VF.FILE_TO_BIN_HELPURL="",VF.FILE_TO_BIN_TOOLTIP="以二進制格式讀出指定路徑的文件內容。",VF.FILE_TO_BIN_MESSAGE0="讀取文件 %1 的二進制內容",VF.MPYTHON_INIT_FILE_HELPURL="",VF.MPYTHON_INIT_FILE_TOOLTIP="初始化一個文本文件,如果文件不存在則創建文件,如果文件存在則清空內容。",VF.MPYTHON_INIT_FILE_MESSAGE0="初始化文本文件 %1",VF.MPYTHON_WRITE_FILE_HELPURL="",VF.MPYTHON_WRITE_FILE_TOOLTIP="向指定路徑的文本文件寫入內容,如果文件不存在則創建文件。",VF.MPYTHON_WRITE_FILE_MESSAGE0="向文本文件 %1 寫入內容 %2 ,以 %3 分隔",VF.MPYTHON_SDCARD_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",VF.MPYTHON_SDCARD_INIT_TOOLTIP="sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\n須確保 SPI 總線的引腳與 micro SD 卡物理連接正確,並預先使用 FAT 或 FAT32 文件系統格式化 micro SD 卡。",VF.MPYTHON_SDCARD_INIT_MESSAGE0="初始化 SD 卡",VF.MPYTHON_SDCARD_MOUNT_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",VF.MPYTHON_SDCARD_MOUNT_TOOLTIP="掛載 SDCard 到指定路徑。",VF.MPYTHON_SDCARD_MOUNT_MESSAGE0="掛載 SD 卡到路徑 %1",VF.MPYTHON_ENTER="回車",VF.MPYTHON_COMMA="逗號",VF.MPYTHON_SEMICOLON="分號",VF.MPYTHON_SPACE="空格",VF.mpython_wifi_clock_MESSAGE0="Wi-Fi 模擬時鐘 x %1 y %2 半徑 %3",VF.mpython_wifi_clock_TOOLTIP="需連接 Wi-Fi 使用",VF.mpython_def_clock_MESSAGE0="初始化時鐘%1 x %2 y %3 半徑 %4",VF.mpython_def_clock_TOOLTIP="",VF.mpython_settime_clock_MESSAGE0="時鐘%1 讀取時間",VF.mpython_settime_clock_TOOLTIP="",VF.mpython_draw_clear_clock_MESSAGE0="%1 時鐘 %2",VF.mpython_draw_clear_clock_TOOLTIP="",VF.mpython_tinywebio_start_MESSAGE0="啟動 TinyWebIO 服務 %1",VF.mpython_tinywebio_start_TOOLTIP="啟動該服務需連接Wi-Fi,TinyWebIO服務為App Inventor應用提供遠程控制接口的掌控板工具包",VF.mpython_tinywebio_client_setup_HELPURL="",VF.mpython_tinywebio_client_setup_TOOLTIP="向服務器發布的數據項(逗號分隔)\nbuttona/b 按鍵狀態\ntouchpadp/y/t/h/o/n 觸摸按鍵值\nlight 光線值\nsound 聲音值\naccelerometer 三軸加速度值\nid 掌控板標識\ntime 時間戳\npind 數字IO引腳\npina 模擬IO引腳\n----------\n從服務器讀取的數據項(逗號分隔)\nrgb0/1/2 RGB燈珠\noled OLED顯示屏\nmusic 音樂\nservo 舵機\npind 數字IO引腳\npina 模擬IO引腳",VF.mpython_tinywebio_client_setup_MESSAGE0="設置 TinyWebIO 客戶端參數 %1 TinyWebDB服務器地址 %2 向服務器發布的數據項 %3 從服務器讀取的數據項 %4 存取服務器的時間間隔(ms) %5",VF.mpython_tinywebio_client_action_HELPURL="",VF.mpython_tinywebio_client_action_TOOLTIP="",VF.mpython_tinywebio_client_action_MESSAGE0="%1 TinyWebIO 客戶端",VF.mpython_tinywebio_client_action_start="啟動",VF.mpython_tinywebio_client_action_stop="停止",VF.MPYTHON_CUSTOM_CODE_HELPURL="",VF.MPYTHON_CUSTOM_CODE_TOOLTIP="",VF.MPYTHON_CUSTOM_CODE_MESSAGE0="%1 自定義代碼 %2 %3",VF.MPYTHON_CUSTOM_VALUE_MESSAGE0="自定義返回值 %1",VF.MPYTHON_CUSTOM_TYPE_IMPORT="置頂",VF.MPYTHON_CUSTOM_TYPE_NORMAL="普通",VF.mpython_servo_angle0_MESSAGE0="設置舵機 %1 角度為 %2",VF.mpython_servo_angle_MESSAGE0="設置舵機 %1 角度為 %2 脈寬從 %3 到 %4 最大角度 %5",VF.mpython_servo_angle_TOOLTIP="電源線Vcc(紅色)連接拓展板電源口V,地線GND(棕色)連接拓展板地線口G,控制信號線(橙色)連接所選的拓展板引腳",VF.mpython_dh11_hum_tem_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",VF.mpython_dh11_hum_tem_MESSAGE0="DHT11 %1 %2",VF.mpython_dh11_hum_tem_TOOLTIP="DHT11上的 + 連接拓展板的電源口 V ,- 連接拓展板的地線口 G ,out 連接拓展板的引腳 0(即選引腳)",VF.MPYTHON_DH22_HUM_TEM_MESSAGE0="DHT22 %1 %2",VF.MPYTHON_DH22_HUM_TEM_TOOLTIP="",VF.MPYTHON_DH22_HUM_TEM_HELPURL="https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",VF.mpython_music_note_MESSAGE0="音符 %1 %2 : %3",VF.mpython_music_note_TOOLTIP="音符,如C4:4",VF.mpython_return_list_MESSAGE0="定義列表 %1 = %2",VF.mpython_return_list_TOOLTIP="",VF.mpython_display_Show_MESSAGE0="OLED 顯示生效",VF.mpython_display_Show_TOOLTIP="",VF.mpython_display_DispChar_MESSAGE0="顯示文本 x %1 y %2 內容 %3 模式 %4 %5",VF.mpython_display_DispChar_TOOLTIP="OLED分辨率128x64",VF.mpython_display_DispChar_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",VF.mpython_display_DispChar_5lines_MESSAGE0="OLED 第%1 行顯示 %2 模式 %3 %4",VF.mpython_display_DispChar_5lines_TOOLTIP="OLED分辨率128x64",VF.mpython_line1="1",VF.mpython_line2="2",VF.mpython_line3="3",VF.mpython_line4="4",VF.mpython_line5="5",VF.MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0="OLED 清除第 %1 行",VF.MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP="OLED分辨率128x64",VF.MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL="";VF.mpython_display_fill_0="清空",VF.mpython_display_fill_1="全亮",VF.mpython_display_invert_0="黑底",VF.mpython_display_invert_1="白底",VF.mpython_display_show="生效",VF.mpython_display_fill_MESSAGE0="OLED 顯示 %1",VF.mpython_display_fill_TOOLTIP="",VF.mpython_display_pixel_0="暗",VF.mpython_display_pixel_1="亮",VF.mpython_display_pixel_MESSAGE0="描點 x %1 y %2 為 %3",VF.mpython_display_pixel_TOOLTIP="",VF.mpython_display_hline_0="擦除",VF.mpython_display_hline_1="繪制",VF.mpython_display_hline_MESSAGE0="%1 水平線%2 x%3 y%4 長度%5",VF.mpython_display_hline_TOOLTIP="",VF.mpython_ProgressBar_MESSAGE0="進度條%1 x%2 y%3 寬%4 高%5 進度%6",VF.mpython_ProgressBar_TOOLTIP="",VF.mpython_stripBar_MESSAGE0="柱狀條%1 x%2 y%3 寬%4 高%5 進度%6",VF.mpython_stripBar_TOOLTIP="",VF.MPYTHON_QR_CODE_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",VF.MPYTHON_QR_CODE_TOOLTIP="",VF.MPYTHON_QR_CODE_MESSAGE0="在坐標 x %1 y %2 繪制二維碼 %3 尺寸 %4",VF.MPYTHON_DISPLAY_MODE_0="擦除",VF.MPYTHON_DISPLAY_MODE_1="繪制",VF.MPYTHON_DISPLAY_HOLLOW="空心",VF.MPYTHON_DISPLAY_SOLID="實心",VF.MPYTHON_DISPLAY_HVLINE_MESSAGE0="%1 %2 線 %3 x %4 y %5 長度 %6",VF.MPYTHON_DISPLAY_HVLINE_TOOLTIP="",VF.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0="%1 %2 矩形 %3 x %4 y %5 寬 %6 高 %7",VF.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP="",VF.MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0="%1 %2 圓 %3 x %4 y %5 半徑 %6",VF.MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP="",VF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0="%1 %2 三角 %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",VF.MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP="",VF.MPYTHON_RGB_0="0 #",VF.MPYTHON_RGB_1="1 #",VF.MPYTHON_RGB_2="2 #",VF.MPYTHON_RGB_ALL="所有",VF.MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0="設置 %1 RGB 燈顏色為 %2",VF.MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0="設置 %1 RGB 燈顏色為 R %2 G %3 B %4",VF.MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.MPYTHON_OFF_RGB_LIST_MESSAGE0="關閉 %1 RGB 燈",VF.MPYTHON_OFF_RGB_LIST_TOOLTIP="",VF.MPYTHON_MUSIC_PLAY_MESSAGE0="播放音樂 %1 引腳 %2",VF.MPYTHON_MUSIC_PLAY_TOOLTIP="播放內置的音樂",VF.MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0="播放音樂 %1 直到完成 , 引腳 %2",VF.MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP="播放內置的音樂",VF.MPYTHON_MUSIC_GE_CHANG_ZU_GUO="歌唱祖國",VF.MPYTHON_MUSIC_DONG_FANG_HONG="東方紅",VF.MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE="彩雲追月",VF.MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI="走進新時代",VF.MPYTHON_MUSIC_MO_LI_HUA="茉莉花",VF.MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO="沂蒙山小調",VF.mpython_display_vline_MESSAGE0="%1 垂直線%2 x%3 y%4 長度%5",VF.mpython_display_vline_TOOLTIP="",VF.mpython_display_line_MESSAGE0="%1 線%2 x1 %3 y1 %4 到 x2 %5 y2 %6",VF.mpython_display_line_TOOLTIP="",VF.mpython_display_rect_MESSAGE0="%1 邊框%2 x %3 y %4 寬 %5 高 %6",VF.mpython_display_rect_TOOLTIP="",VF.mpython_display_RoundRect_MESSAGE0="%1 弧角邊框%2 x %3 y %4 寬 %5 高 %6 半徑%7",VF.mpython_display_RoundRect_TOOLTIP="",VF.mpython_display_fill_rect_MESSAGE0="%1 矩形%2 x %3 y %4 寬 %5 高 %6 ",VF.mpython_display_fill_rect_TOOLTIP="",VF.mpython_display_fill_circle_MESSAGE0="%1 實心圓%2 x %3 y %4 半徑 %5",VF.mpython_display_fill_circle_TOOLTIP="",VF.mpython_display_circle_MESSAGE0="%1 空心圓%2 x %3 y %4 半徑 %5",VF.mpython_display_circle_TOOLTIP="",VF.mpython_display_triangle_MESSAGE0="%1 空心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",VF.mpython_display_triangle_TOOLTIP="",VF.mpython_display_fill_triangle_MESSAGE0="%1 實心三角%2 x%3 y%4 x2%5 y2%6 x3%7 y3%8",VF.mpython_display_fill_triangle_TOOLTIP="",VF.mpython_display_Bitmap_MESSAGE0="%1 圖像 x%2 y%3 寬%4 高%5 16進制圖像數據 %6",VF.mpython_display_Bitmap_TOOLTIP="將16進制圖像數據顯示在OLED屏的指定位置",VF.MPYTHON_GET_PBM_DATA_MESSAGE0="獲取內置圖像 %1 模式%2",VF.MPYTHON_GET_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的單色圖像文件,獲取指定路徑的圖像文件數據,返回一個元組對象。",VF.MPYTHON_GET_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",VF.MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0="獲取自定義圖像 %1 模式%2",VF.MPYTHON_DISPLAY_PBM_DATA_MESSAGE0="在坐標 x %1 y %2 顯示圖像 %3",VF.MPYTHON_DISPLAY_PBM_DATA_TOOLTIP="支持*.pbm 或 *.bmp格式的單色圖像文件",VF.MPYTHON_DISPLAY_PBM_DATA_HELPURL="https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",VF.MPYTHON_BITMAP_FROM_FILE_MESSAGE0="在坐標 x %1 y %2 顯示圖像 %5 寬 %3 高 %4",VF.MPYTHON_BITMAP_FROM_FILE_TOOLTIP="",VF.MPYTHON_BITMAP_FROM_FILE_HELPURL="",VF.mpython_horizontal="水平",VF.mpython_vertical="垂直",VF.mpython_display_FrameBuffer_MESSAGE0="構建幀 列表 %1 長 %2 寬 %3 掃描模式 %4",VF.mpython_display_FrameBuffer_TOOLTIP="用圖像取模後數據的列表 ,創建128x64的幀緩存區,以儲存圖片幀",VF.MPYTHON_FONT_DIGIFACE_11="仿數碼管 11像素",VF.MPYTHON_FONT_DIGIFACE_16="仿數碼管 16像素",VF.MPYTHON_FONT_DIGIFACE_21="仿數碼管 21像素",VF.MPYTHON_FONT_DIGIFACE_30="仿數碼管 30像素",VF.MPYTHON_FONT_DIGIFACE_44="仿數碼管 44像素",VF.MPYTHON_FONT_DIGIFACE_IT_30="仿數碼管 斜體 30像素",VF.MPYTHON_FONT_DIGIFACE_IT_42="仿數碼管 斜體 42像素",VF.MPYTHON_FONT_DVSM_12="DejaVu Sans Mono 12像素",VF.MPYTHON_FONT_DVSM_16="DejaVu Sans Mono 16像素",VF.MPYTHON_FONT_DVSM_21="DejaVu Sans Mono 21像素",VF.MPYTHON_FONT_DVSMB_12="DejaVu Sans Mono 黑體 12像素",VF.MPYTHON_FONT_DVSMB_16="DejaVu Sans Mono 黑體 16像素",VF.MPYTHON_FONT_DVSMB_21="DejaVu Sans Mono 黑體 21像素",VF.MPYTHON_FONT_WRAP="自動換行",VF.MPYTHON_FONT_NO_WRAP="不換行",VF.MPYTHON_FACE_1="心形",VF.MPYTHON_FACE_2="心形(小)",VF.MPYTHON_FACE_3="高興",VF.MPYTHON_FACE_4="笑臉",VF.MPYTHON_FACE_5="傷心",VF.MPYTHON_FACE_6="困惑",VF.MPYTHON_FACE_7="生氣",VF.MPYTHON_FACE_8="睡著",VF.MPYTHON_FACE_9="驚訝",VF.MPYTHON_FACE_10="愚蠢",VF.MPYTHON_FACE_11="極妙",VF.MPYTHON_FACE_12="無聊",VF.MPYTHON_FACE_ROCK="石頭",VF.MPYTHON_FACE_PAPER="布",VF.MPYTHON_FACE_SCISSORS="剪刀",VF.MPYTHON_FACE_ROCK_S="石頭(小)",VF.MPYTHON_FACE_PAPER_S="布(小)",VF.MPYTHON_FACE_SCISSORS_S="剪刀(小)",VF.MPYTHON_DISPLAY_FONT_MESSAGE0="在坐標 x %1 y %2 顯示 %3 以 %4 字體 %5",VF.MPYTHON_DISPLAY_FONT_TOOLTIP="",VF.MPYTHON_DISPLAY_FONT_HELPURL="",VF.mpython_front="正向",VF.mpython_reverse="反轉",VF.mpython_display_blit_MESSAGE0="顯示幀 坐標x %1 y %2",VF.mpython_display_blit_TOOLTIP="",VF.mpython_front_reverse_MESSAGE0="像素點bit %1",VF.mpython_front_reverse_TOOLTIP="用於顯示之前",VF.mpython_images_append_MESSAGE0="動圖顯示 幀數%1 周期%2 長%3 寬%4",VF.mpython_images_append_TOOLTIP="上傳至掌控板的pbm圖片需命名為IMAGE.數字,後綴為pbm。如:IMAGE.1.pbm。幀數為7則數字為1至7",VF.mpython_button_is_pressed_MESSAGE0="按鍵%1 被按下",VF.mpython_button_is_pressed_TOOLTIP="",VF.mpython_button_both_pressed_MESSAGE0="AB按鍵都按下",VF.mpython_button_both_pressed_TOOLTIP="",VF.mpython_touchPad_value_MESSAGE0="按鍵%1 被觸摸",VF.mpython_touchPad_value_TOOLTIP="",VF.mpython_touchPad_value_num_MESSAGE0="按鍵%1 觸摸值",VF.mpython_touchPad_value_num_TOOLTIP="",VF.mpython_read_digital_MESSAGE0="讀取引腳 %1 數字值",VF.mpython_read_digital_TOOLTIP="",VF.mpython_read_DS18B20_MESSAGE0="DS18B20 防水溫度感測器 引脚 %1",VF.mpython_read_DS18B20_TOOLTIP="",VF.mpython_read_DS18B20_HELPURL="http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",VF.mpython_set_digital_MESSAGE0="設置引腳 %2 數字值為 %1",VF.mpython_set_digital_TOOLTIP="",VF.mpython_read_analog_MESSAGE0="讀取引腳 %1 模擬值",VF.mpython_read_analog_TOOLTIP="",VF.mpython_set_analog_MESSAGE0="設置引腳 %2 模擬值(PWM)為 %1",VF.mpython_set_analog_TOOLTIP="模擬輸出是通過IO引腳輸出脈寬調制信號,輸出指定的電壓值,簡稱PWM。",VF.mpython_set_RGB_MESSAGE0="設置 %1 號 RGB 燈顏色為 R %2 G %3 B %4",VF.mpython_set_RGB_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.mpython_set_RGB_color_MESSAGE0="設置 %1 號 RGB 燈顏色為 %2",VF.mpython_set_RGB_color_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.mpython_set_RGB_all_MESSAGE0="設置所有 RGB 燈顏色為 R %1 G %2 B %3",VF.mpython_set_RGB_all_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.mpython_set_RGB_color_all_MESSAGE0="設置所有 RGB 燈顏色為 %1",VF.mpython_set_RGB_color_all_TOOLTIP="原生亮度的 1/30 能較好顯示色差",VF.mpython_fresh_RGB_MESSAGE0="RGB 燈設置生效",VF.mpython_fresh_RGB_TOOLTIP="",VF.mpython_off_RGB_MESSAGE0="關閉 RGB 燈",VF.mpython_off_RGB_TOOLTIP="",VF.mpython_buzz_state_MESSAGE0="停止播放音樂",VF.mpython_buzz_state_TOOLTIP="",VF.mpython_buzz_freq_MESSAGE0="播放連續音調 %1 引脚 %2",VF.mpython_buzz_freq_TOOLTIP="",VF.mpython_buzz_tone_MESSAGE0="播放音調 %1",VF.mpython_buzz_tone_TOOLTIP="",VF.MPYTHON_MUSIC_TONE_TEMPO_HELPURL="",VF.MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP="默認是掌控板的P6引脚",VF.MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0="播放音符 %1 引脚 %2",VF.MPYTHON_MUSIC_TONE_HELPURL="",VF.MPYTHON_MUSIC_TONE_TOOLTIP="",VF.MPYTHON_MUSIC_TONE_MESSAGE0="音調 %1",VF.MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL="",VF.MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP="",VF.MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0="音符 %1 節拍 %2",VF.MPYTHON_MUSIC_TICK_HELPURL="",VF.MPYTHON_MUSIC_TICK_TOOLTIP="",VF.MPYTHON_MUSIC_TICK_MESSAGE0="節拍 %1",VF.MPYTHON_4_LINES_HELPURL="",VF.MPYTHON_4_LINES_TOOLTIP="",VF.MPYTHON_4_LINES_MESSAGE0="%1",VF.NUMBER_1="1",VF.NUMBER_1_2="1/2",VF.NUMBER_1_4="1/4",VF.NUMBER_2="2",VF.NUMBER_4="4",VF.mpython_read_sound_MESSAGE0="聲音值",VF.mpython_read_sound_TOOLTIP="",VF.mpython_read_light_MESSAGE0="光線值",VF.mpython_read_light_TOOLTIP="",VF.mpython_accelerometer_get_MESSAGE0="%1 軸加速度",VF.mpython_accelerometer_get_TOOLTIP="",VF.mpython_accelerometer_get_z_MESSAGE0="z軸加速度",VF.mpython_accelerometer_get_z_TOOLTIP="",VF.mpython_accelerometer_get_y_MESSAGE0="y軸加速度",VF.mpython_accelerometer_get_y_TOOLTIP="",VF.mpython_accelerometer_get_x_MESSAGE0="x軸加速度",VF.mpython_accelerometer_get_x_TOOLTIP="",VF.MPYTHON_ACCELEROMETER_RANGE_2G="±2g",VF.MPYTHON_ACCELEROMETER_RANGE_4G="±4g",VF.MPYTHON_ACCELEROMETER_RANGE_8G="±8g",VF.MPYTHON_ACCELEROMETER_RANGE_16G="±16g",VF.MPYTHON_ACCELEROMETER_RES_10_BIT="10bits",VF.MPYTHON_ACCELEROMETER_RES_12_BIT="12bits",VF.MPYTHON_ACCELEROMETER_RES_14_BIT="14bits",VF.MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP="設置加速度範圍,默認為 ±2g。",VF.MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0="設置加速度範圍為 %1",VF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP="設置加速度分辨率,默認為 10bits。",VF.MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0="設置加速度分辨率為 %1",VF.MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP="校準加速度計的3個軸(x,y,z)的加速值偏差。\n一般情況下無需校準,只有遇到加速度偏差較大時才要校準。\n x , y , z 為調整偏差值,可修正範圍為 ±1g。\n註意:校準數據斷電後不會保存。",VF.MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0="校準加速度值 %1 X軸偏差 %2 Y軸偏差 %3 Z軸偏差 %4",VF.MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP="僅適用於掌控板2.0及以上版本",VF.MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0="%1 軸 磁力",VF.MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP="僅適用於掌控板2.0及以上版本",VF.MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0="指南針方向",VF.MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP="僅適用於掌控板2.0及以上版本",VF.MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0="校準指南針",VF.MPYTHON_MAGNETIC_PEELING_TOOLTIP="僅適用於掌控板2.0及以上版本",VF.MPYTHON_MAGNETIC_PEELING_MESSAGE0="去除當前環境磁場",VF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP="僅適用於掌控板2.0及以上版本",VF.MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0="磁場強度",VF.MPYTHON_TILT_ANGLE_HELPURL="",VF.MPYTHON_TILT_ANGLE_TOOLTIP="",VF.MPYTHON_TILT_ANGLE_MESSAGE0="%1 軸傾斜角",VF.mpython_random_choice_MESSAGE0="返回隨機項%1",VF.mpython_random_choice_TOOLTIP="以String格式,返回列表或字符串中的隨機項",VF.mpython_i2c_init_MESSAGE0="初始化I2C 波特率%1",VF.mpython_i2c_init_TOOLTIP="SCL引腳19,SDA引腳20,與內部的OLED和加速度傳感器共享I2C總線",VF.MACHINE_TIME_PULSE_US_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",VF.MACHINE_TIME_PULSE_US_MESSAGE0="%1 外部 %2 電平持續時間(微秒)",VF.MACHINE_TIME_PULSE_US_TOOLTIP="",VF.BYTES="字節",VF.MPYTHON_I2C_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",VF.MPYTHON_I2C_INIT_MESSAGE0="初始化i2c 速率%1",VF.MPYTHON_I2C_INIT_TOOLTIP="",VF.MPYTHON_I2C_DEV_INIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",VF.MPYTHON_I2C_DEV_INIT_MESSAGE0="初始化%1 SCL %2 SDA %3 速率 %4",VF.MPYTHON_I2C_DEV_INIT_TOOLTIP="",VF.MPYTHON_I2C_SCAN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",VF.MPYTHON_I2C_SCAN_MESSAGE0="%1 掃描地址",VF.MPYTHON_I2C_SCAN_TOOLTIP="返回壹個數組對象",VF.MPYTHON_I2C_DEINIT_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",VF.MPYTHON_I2C_DEINIT_MESSAGE0="關閉%1總線",VF.MPYTHON_I2C_DEINIT_TOOLTIP="",VF.MPYTHON_I2C_WRITETO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",VF.MPYTHON_I2C_WRITETO_MESSAGE0="從%1 %5 地址%2 寫入%3 停止位%4",VF.MPYTHON_I2C_WRITETO_TOOLTIP="地址:Number\n寫入:Number、String",VF.MPYTHON_I2C_READFROM_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",VF.MPYTHON_I2C_READFROM_MESSAGE0="從%1 %5 地址%2 讀取 字節數%3 停止位%4",VF.MPYTHON_I2C_READFROM_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",VF.MPYTHON_I2C_READFROM_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",VF.MPYTHON_I2C_READFROM_INTO_MESSAGE0="從%1 %6 地址%2 讀入緩存區%3 字節數%4 停止位%5",VF.MPYTHON_I2C_READFROM_INTO_TOOLTIP="",VF.MPYTHON_I2C_WRITETO_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",VF.MPYTHON_I2C_WRITETO_MEN_MESSAGE0="從%1 %5 地址%2 寄存器%4 寫入%3",VF.MPYTHON_I2C_WRITETO_MEN_TOOLTIP="地址:Number\n寫入:Number、String",VF.MPYTHON_I2C_READFROM_MEN_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",VF.MPYTHON_I2C_READFROM_MEN_MESSAGE0="從%1 %5 地址%2 寄存器%4 讀取 字節數%3",VF.MPYTHON_I2C_READFROM_MEN_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",VF.MPYTHON_I2C_READFROM_MEN_INTO_HELPURL="https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",VF.MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0="從%1 %6 地址%2 寄存器%5 讀入緩存區%3 字節數%4",VF.MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP="地址:Number\n返回:讀取數據的 bytes 對象的字符串",VF.mpython_print_MESSAGE0="調試輸出 %1",VF.mpython_print_TOOLTIP="通過串口調試,輸出字符串",VF.MPYTHON_PRINT_TO_CHART_TOOLTIP="",VF.MPYTHON_PRINT_TO_CHART_EMPTY_TITLE="打印數據到圖表",VF.MPYTHON_PRINT_TO_CHART_INPUT_WITH="打印數據到圖表",VF.MPYTHON_PRINT_TO_CHART_ITEM_TITLE="數據",VF.MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP="",VF.MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD="數據內容",VF.MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP="",VF.MPYTHON_INIT_CHART_TOOLTIP="",VF.MPYTHON_INIT_CHART_EMPTY_TITLE="初始化圖表列標題",VF.MPYTHON_INIT_CHART_INPUT_WITH="初始化圖表列標題",VF.MPYTHON_INIT_CHART_ITEM_TITLE="標題",VF.MPYTHON_INIT_CHART_ITEM_TOOLTIP="",VF.MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD="數據列標題",VF.MPYTHON_INIT_CHART_CONTAINER_TOOLTIP="",VF.MPYTHON_MS="毫秒",VF.MPYTHON_US="微秒",VF.MPYTHON_TIME_DIFFERENCE_HELPURL="",VF.MPYTHON_TIME_DIFFERENCE_MESSAGE0="返回運行時間差 開始時間 %1 結束時間 %2",VF.MPYTHON_TIME_DIFFERENCE_TOOLTIP="测量连续调用ticks_ms()、ticks_us()间的周期",VF.MPYTHON_TYPE_HELPURL="",VF.MPYTHON_TYPE_MESSAGE0="值 %1 的類型",VF.MPYTHON_TYPE_TOOLTIP="",VF.MPYTHON_TYPE_IS_HELPURL="",VF.MPYTHON_TYPE_IS_MESSAGE0="值 %1 的類型為 %2",VF.MPYTHON_TYPE_IS_TOOLTIP="",VF.MPYTHON_EVAL_HELPURL="",VF.MPYTHON_EVAL_MESSAGE0="計算表達式 %1 的結果",VF.MPYTHON_EVAL_TOOLTIP="計算字符串表達式,並返回結果",VF.MPYTHON_RETURN_HELPURL="",VF.MPYTHON_RETURN_MESSAGE0="return %1",VF.MPYTHON_RETURN_TOOLTIP="",VF.MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL="",VF.MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0="拓展板 電機速度 %1",VF.MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP="",VF.MPYTHON_M1M2_LED_ON_HELPURL="",VF.MPYTHON_M1M2_LED_ON_MESSAGE0="拓展板 設燈 %1 亮度 %2",VF.MPYTHON_M1M2_LED_ON_TOOLTIP="",VF.MPYTHON_M1M2_LED_OFF_HELPURL="",VF.MPYTHON_M1M2_LED_OFF_MESSAGE0="拓展板 關燈 %1",VF.MPYTHON_M1M2_LED_OFF_TOOLTIP="",VF.MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL="",VF.MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0="I2C數字光綫",VF.MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP="",VF.MPYTHON_BLUEBIT_GET_COLOR_HELPURL="",VF.MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0="I2C RGB 顔色 %1",VF.MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP="",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL="",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0="I2C RGB 顔色",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP="以列表形式返回",VF.MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL="",VF.MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0="I2C HSV 顔色 %1",VF.MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP="色調(H),飽和度(S),明度(V)",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL="",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0="I2C HSV 顔色",VF.MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP="色調(H),飽和度(S),明度(V)",VF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0="I2C力感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0="I2C电流感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0="I2C電壓感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0="I2C磁場感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0="I2C PH感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0="I2C電導率感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0="I2C氣壓感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL="",VF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0="I2C光電門感測器 撥碼 %1",VF.MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP="I2C地址與編碼開關的需要對應",VF.MPYTHON_WIFI_ALL_CONFIG_HELPURL="",VF.MPYTHON_WIFI_ALL_CONFIG_MESSAGE0="WI-FI配置信息",VF.MPYTHON_WIFI_ALL_CONFIG_TOOLTIP="以元組形式返回所有wifi配置信息",VF.MPYTHON_WIFI_ISCONNECTED_HELPURL="",VF.MPYTHON_WIFI_ISCONNECTED_MESSAGE0="已連接到 WI-FI",VF.MPYTHON_WIFI_ISCONNECTED_TOOLTIP="",VF.MPYTHON_INIT_ASSISTANT_WIFI_HELPURL="",VF.MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0="Wi-Fi連接 語音助手 Wi-Fi 名稱 %1 密碼 %2",VF.MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP="掌控板通過串口把WIF傳給語音助手",VF.MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL="",VF.MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP="需要先在檔案系統將文件上傳到板",VF.MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0="讀取 語音助手 文字檔 %1",VF.MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL="",VF.MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0="數碼管顯示 %1",VF.MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP="-999~9999",VF.MPYTHON_MACHINE_RESET_HELPURL="",VF.MPYTHON_MACHINE_RESET_MESSAGE0="復位",VF.MPYTHON_MACHINE_RESET_TOOLTIP="與按下外部RESET按鍵效果一樣",VF.MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL="",VF.MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0="清空數碼管",VF.MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP="",VF.MPYTHON_MUSIC_PIN_P6="默認",VF.MPYTHON_MUSIC_PIN_P6_HELPURL="",VF.MPYTHON_MUSIC_PIN_P6_MESSAGE0="%1",VF.MPYTHON_MUSIC_PIN_P6_TOOLTIP="",VF.MPYTHON_SLEEP_MESSAGE0="等待 %1 %2",VF.MPYTHON_SLEEP_TOOLTIP="在進行下一個命令前,等待設定的時間。\n1秒(s) = 1,000毫秒(ms)\n1秒(s) = 1,000,000微秒(μs)\n毫秒,符號ms(millisecond)\n微秒,符號μs(microsecond)",VF.MICROBIT_MICROBIT_RUNNING_TIME_MESSAGE0="運行時間",VF.MICROBIT_MICROBIT_RUNNING_TIME_TOOLTIP="獲取開機或復位後的運行時間(毫秒)。",VF.MICROBIT_MICROBIT_RUNNING_TIME_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.running_time",VF.MICROBIT_MICROBIT_TEMPERATURE_MESSAGE0="溫度",VF.MICROBIT_MICROBIT_TEMPERATURE_TOOLTIP="獲取 micro:bit 的溫度(℃)。",VF.MICROBIT_MICROBIT_TEMPERATURE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/microbit.html#microbit.temperature",VF.MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0="播放音樂 %1 等待 %2 循環 %3 引脚 %4",VF.MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP="播放內置的音樂,可以設置等待模式和循環播放。",VF.MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",VF.MICROBIT_MUSIC_PITCH_MESSAGE0="播放音調 %1 %2 延時 %3 毫秒 引脚 %4",VF.MICROBIT_MUSIC_PITCH_TOOLTIP="在設定的時間長度裏播放音調。",VF.MICROBIT_MUSIC_PITCH_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",VF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0="引脚 %5 播放音符列表 %1 等待 %2 %3 循環 %4",VF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP="播放音符列表,如C4:4、G4:8等,音符為字符串形式。默認是掌控板的P6引脚",VF.MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL="https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",VF.MICROBIT_MUSIC_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",VF.MICROBIT_MUSIC_RESET_MESSAGE0="恢復音樂設置",VF.MICROBIT_MUSIC_RESET_TOOLTIP="將所有音樂設置 (當前節拍, 音階和周期) 恢復成默認值。",VF.MICROBIT_MUSIC_STOP_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",VF.MICROBIT_MUSIC_STOP_MESSAGE0="停止播放音樂 引脚 %1",VF.MICROBIT_MUSIC_STOP_TOOLTIP="默認是掌控板的P6引脚",VF.MICROBIT_MUSIC_SET_TEMPO_MESSAGE0="設置每一拍等同 %1 分音符,每分鐘節拍數 %2",VF.MICROBIT_MUSIC_SET_TEMPO_TOOLTIP="設置回放速度 (節拍)。一定數量的滴答代表一拍,每拍每分鐘播放次數 (BPM 每分鐘節拍)。",VF.MICROBIT_MUSIC_SET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",VF.MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0="設置播放速度為 %1 倍",VF.MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP="4分音符為1拍,每分鐘節拍數默認120,為1倍的播放速度",VF.MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",VF.MICROBIT_MUSIC_GET_TEMPO_MESSAGE0="獲取當前節拍",VF.MICROBIT_MUSIC_GET_TEMPO_TOOLTIP="獲取當前節拍: 每節拍滴答數, 每分鐘節拍 (BPM)。",VF.MICROBIT_MUSIC_GET_TEMPO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",VF.MICROBIT_NEOPIXEL_INITIALISE_MESSAGE0="使用 引腳 %1 控制, neopixel 彩燈數 %2 ",VF.MICROBIT_NEOPIXEL_INITIALISE_TOOLTIP="控制 neopixels 彩燈。需要設定 neopixels 彩燈數量和控制腳。",VF.MICROBIT_NEOPIXEL_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",VF.MICROBIT_NEOPIXEL_CLEAR_MESSAGE0="清除 neopixels 彩燈 %1",VF.MICROBIT_NEOPIXEL_CLEAR_TOOLTIP="清除所有 neopixels 彩燈",VF.MICROBIT_NEOPIXEL_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",VF.MICROBIT_NEOPIXEL_SHOW_MESSAGE0="顯示 neopixels 彩燈 %1",VF.MICROBIT_NEOPIXEL_SHOW_TOOLTIP="顯示 / 更新全部 neopixels 彩燈。",VF.MICROBIT_NEOPIXEL_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",VF.MICROBIT_NEOPIXEL_SET_MESSAGE0="neopixels 彩燈控制 %1 設置位置 %2 紅色 %3 綠色 %4 藍色 %5",VF.MICROBIT_NEOPIXEL_SET_TOOLTIP="更新指定的 neopixel 彩燈的紅、綠、藍 (RGB) 顏色",VF.MICROBIT_NEOPIXEL_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",VF.MICROBIT_PIN_TOUCHED_MESSAGE0="引腳 %1 被觸摸",VF.MICROBIT_PIN_TOUCHED_TOOLTIP="如果引腳被觸摸將返回 “真”。",VF.MICROBIT_PIN_TOUCHED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.is_touched",VF.MICROBIT_PIN_WAS_PRESSED_MESSAGE0="引腳 %1 曾經被觸摸",VF.MICROBIT_PIN_WAS_PRESSED_TOOLTIP="如果引腳曾經被觸摸將返回 “真”。",VF.MICROBIT_PIN_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.was_pressed",VF.MICROBIT_PIN_GET_PRESSES_MESSAGE0="引腳 %1 被觸摸的次數",VF.MICROBIT_PIN_GET_PRESSES_TOOLTIP="返回被觸摸的次數,然後清零。",VF.MICROBIT_PIN_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitTouchPin.get_presses",VF.MICROBIT_PIN_READ_ANALOG_MESSAGE0="讀取引腳 %1 模擬電壓",VF.MICROBIT_PIN_READ_ANALOG_TOOLTIP="讀取引腳的模擬輸入電壓。",VF.MICROBIT_PIN_READ_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.read_analog",VF.MICROBIT_PIN_WRITE_ANALOG_MESSAGE0="設置模擬量 %1 到引腳 %2",VF.MICROBIT_PIN_WRITE_ANALOG_TOOLTIP="寫入模擬參數到指定引腳上。",VF.MICROBIT_PIN_WRITE_ANALOG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitAnalogDigitalPin.write_analog",VF.MICROBIT_PIN_READ_DIGITAL_MESSAGE0="讀取引腳 %1 的數字輸入",VF.MICROBIT_PIN_READ_DIGITAL_TOOLTIP="讀取引腳的數字輸入 (真 或 假)。",VF.MICROBIT_PIN_READ_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.read_digital",VF.MICROBIT_PIN_WRITE_DIGITAL_MESSAGE0="設置數字輸出 %1 到引腳 %2",VF.MICROBIT_PIN_WRITE_DIGITAL_TOOLTIP="寫入數字量 (真 或 假) 到指定引腳。",VF.MICROBIT_PIN_WRITE_DIGITAL_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/pin.html#microbit.MicroBitDigitalPin.write_digital",VF.MICROBIT_RADIO_ON_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.on",VF.MICROBIT_RADIO_ON_MESSAGE0="打開無線廣播",VF.MICROBIT_RADIO_ON_TOOLTIP="打開無線廣播。需要明確聲明調用,因為它會消耗更多功率和占用更多內存。",VF.MICROBIT_RADIO_OFF_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.off",VF.MICROBIT_RADIO_OFF_MESSAGE0="關閉無線廣播",VF.MICROBIT_RADIO_OFF_TOOLTIP="關閉無線廣播,節省功耗和內存。",VF.MICROBIT_RADIO_CONFIG_MESSAGE0="配置無線廣播消息長度 %1 %2 最大隊列數量 %3 %4 信道 %5 %6 廣播功率 %7 %8 地址 %9 %10 組 %11 %12 數據速率 %13",VF.MICROBIT_RADIO_CONFIG_TOOLTIP="配置無線廣播。\n 長度指單個消息的最大長度; \n 隊列指可以存放在消息隊列中消息的數量; \n 信道指無線廣播使用的無線頻率; \n 功率指發射廣播信號的強度; \n 地址:32位值; \n 組:8位值(0-255); \n 數據速率指數據傳輸的速度。",VF.MICROBIT_RADIO_CONFIG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.config",VF.MICROBIT_RADIO_RESET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.reset",VF.MICROBIT_RADIO_RESET_MESSAGE0="復位無線廣播",VF.MICROBIT_RADIO_RESET_TOOLTIP="恢復無線廣播到默認設置。",VF.MICROBIT_RADIO_SEND_STRING_MESSAGE0="發送消息 %1",VF.MICROBIT_RADIO_SEND_STRING_TOOLTIP="廣播文字消息。",VF.MICROBIT_RADIO_SEND_STRING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",VF.MICROBIT_RADIO_SEND_BYTES_MESSAGE0="發送字節 %1",VF.MICROBIT_RADIO_SEND_BYTES_TOOLTIP="廣播字節。",VF.MICROBIT_RADIO_SEND_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",VF.MICROBIT_RADIO_RECEIVE_MESSAGE0="接收消息",VF.MICROBIT_RADIO_RECEIVE_TOOLTIP="接收消息。",VF.MICROBIT_RADIO_RECEIVE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",VF.MICROBIT_RADIO_RECEIVE_BYTES_MESSAGE0="接收字節",VF.MICROBIT_RADIO_RECEIVE_BYTES_TOOLTIP="接收字節。",VF.MICROBIT_RADIO_RECEIVE_BYTES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",VF.MICROBIT_SPEECH_SAY_MESSAGE0="說 %1",VF.MICROBIT_SPEECH_SAY_TOOLTIP="嘗試說英語",VF.MICROBIT_SPEECH_SAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#speech.say",VF.MICROBIT_SPEECH_PRONOUNCE_MESSAGE0="讀 %1",VF.MICROBIT_SPEECH_PRONOUNCE_TOOLTIP="精確發音。",VF.MICROBIT_SPEECH_PRONOUNCE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#phonemes",VF.MICROBIT_SPEECH_SING_MESSAGE0="唱 %1",VF.MICROBIT_SPEECH_SING_TOOLTIP="象機器人一樣唱歌。",VF.MICROBIT_SPEECH_SING_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/speech.html#singing",VF.MICROBIT_GESTURE_SHAKE="搖晃",VF.MICROBIT_GESTURE_UP="上",VF.MICROBIT_GESTURE_DOWN="下",VF.MICROBIT_GESTURE_LEFT="左",VF.MICROBIT_GESTURE_RIGHT="右",VF.MICROBIT_GESTURE_FACE_UP="朝上",VF.MICROBIT_GESTURE_FACE_DOWN="朝下",VF.MICROBIT_GESTURE_FREEFAIL="自由下落",VF.MICROBIT_IMAGE_HEART="心形",VF.MICROBIT_IMAGE_HEART_SMALL="心(小)",VF.MICROBIT_IMAGE_HAPPY="高興",VF.MICROBIT_IMAGE_SMILE="笑臉",VF.MICROBIT_IMAGE_SAD="傷心",VF.MICROBIT_IMAGE_CONFUSED="困惑",VF.MICROBIT_IMAGE_ANGRY="生氣",VF.MICROBIT_IMAGE_ASLEEP="睡著",VF.MICROBIT_IMAGE_SUPRISED="驚訝",VF.MICROBIT_IMAGE_SILLY="愚蠢",VF.MICROBIT_IMAGE_FABULOUS="極妙",VF.MICROBIT_IMAGE_MEH="無聊",VF.MICROBIT_IMAGE_YES="是",VF.MICROBIT_IMAGE_NO="否",VF.MICROBIT_IMAGE_CLOCK12="12點",VF.MICROBIT_IMAGE_CLOCK11="11點",VF.MICROBIT_IMAGE_CLOCK10="10點",VF.MICROBIT_IMAGE_CLOCK9="9點",VF.MICROBIT_IMAGE_CLOCK8="8點",VF.MICROBIT_IMAGE_CLOCK7="7點",VF.MICROBIT_IMAGE_CLOCK6="6點",VF.MICROBIT_IMAGE_CLOCK5="5點",VF.MICROBIT_IMAGE_CLOCK4="4點",VF.MICROBIT_IMAGE_CLOCK3="3點",VF.MICROBIT_IMAGE_CLOCK2="2點",VF.MICROBIT_IMAGE_CLOCK1="1點",VF.MICROBIT_IMAGE_ARROW_N="箭頭-北",VF.MICROBIT_IMAGE_ARROW_NE="箭頭-東北",VF.MICROBIT_IMAGE_ARROW_E="箭頭-東",VF.MICROBIT_IMAGE_ARROW_SE="箭頭-東南",VF.MICROBIT_IMAGE_ARROW_S="箭頭-南",VF.MICROBIT_IMAGE_ARROW_SW="箭頭-西南",VF.MICROBIT_IMAGE_ARROW_W="箭頭-西",VF.MICROBIT_IMAGE_ARROW_NW="箭頭-西北",VF.MICROBIT_IMAGE_TRIANGLE="三角形",VF.MICROBIT_IMAGE_TRIANGLE_LEFT="左三角形",VF.MICROBIT_IMAGE_CHESSBOARD="棋盤",VF.MICROBIT_IMAGE_DIAMOND="菱形",VF.MICROBIT_IMAGE_DIAMOND_SMALL="菱形(小)",VF.MICROBIT_IMAGE_SQUARE="方形",VF.MICROBIT_IMAGE_SQUARE_SMALL="方形(小)",VF.MICROBIT_IMAGE_RABBIT="兔子",VF.MICROBIT_IMAGE_COW="牛",VF.MICROBIT_IMAGE_MUSIC_CROTCHET="四分音符",VF.MICROBIT_IMAGE_MUSIC_QUAVER="八分音符",VF.MICROBIT_IMAGE_MUSIC_QUAVERS="顫音",VF.MICROBIT_IMAGE_PITCHFORK="叉子",VF.MICROBIT_IMAGE_XMAS="聖誕樹",VF.MICROBIT_IMAGE_PACMAN="吃豆人",VF.MICROBIT_IMAGE_TARGET="目標",VF.MICROBIT_IMAGE_TSHIRT="T恤衫",VF.MICROBIT_IMAGE_ROLLERSKATE="輪滑",VF.MICROBIT_IMAGE_DUCK="鴨子",VF.MICROBIT_IMAGE_HOUSE="房子",VF.MICROBIT_IMAGE_TORTOISE="烏龜",VF.MICROBIT_IMAGE_BUTTERFLY="蝴蝶",VF.MICROBIT_IMAGE_STICKFIGURE="線條畫",VF.MICROBIT_IMAGE_GHOST="幽靈",VF.MICROBIT_IMAGE_SWORD="寶劍",VF.MICROBIT_IMAGE_GIRAFFE="長頸鹿",VF.MICROBIT_IMAGE_SKULL="頭",VF.MICROBIT_IMAGE_UMBRELLA="傘",VF.MICROBIT_IMAGE_SNAKE="蛇",VF.MICROBIT_IMAGE_ALL_CLOCKS="所有時鐘",VF.MICROBIT_IMAGE_ALL_ARROWS="所有箭頭",VF.MICROBIT_PIN_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",VF.MICROBIT_PIN_SET_SERVO_TOOLTIP="設置舵機角度,範圍為 0 ~ 180度",VF.MICROBIT_PIN_SET_SERVO_MESSAGE0="設置舵機 引腳 %1 角度為 %2",VF.MICROBIT_PIN_SET_MODE_HELPURL="",VF.MICROBIT_PIN_SET_MODE_TOOLTIP="引腳模式有三種:懸空、上拉、下拉",VF.MICROBIT_PIN_SET_MODE_MESSAGE0="設置引腳 %1 模式為 %2",VF.MICROBIT_PIN_MODE_NO="懸空",VF.MICROBIT_PIN_MODE_UP="上拉",VF.MICROBIT_PIN_MODE_DOWN="下拉",VF.MICROBIT_UART_INIT_MESSAGE0="初始化串口波特率為 %3 TX為 %1 RX為 %2",VF.MICROBIT_UART_INIT_TOOLTIP="",VF.MICROBIT_UART_INIT_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",VF.MICROBIT_UART_ANY_MSG_RECEIVED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",VF.MICROBIT_UART_ANY_MSG_RECEIVED_TOOLTIP="",VF.MICROBIT_UART_ANY_MSG_RECEIVED_MESSAGE0="串口接收到數據",VF.MICROBIT_UART_READ_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",VF.MICROBIT_UART_READ_MSG_TOOLTIP="",VF.MICROBIT_UART_READ_MSG_MESSAGE0="讀取串口 %1 字節",VF.MICROBIT_UART_READ_MSG_TO_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",VF.MICROBIT_UART_READ_MSG_TO_TOOLTIP="",VF.MICROBIT_UART_READ_MSG_TO_MESSAGE0="讀取串口 %1 字節存至 %2",VF.MICROBIT_UART_WRITE_MSG_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/uart.html",VF.MICROBIT_UART_WRITE_MSG_TOOLTIP="",VF.MICROBIT_UART_WRITE_MSG_MESSAGE0="串口發送數據 %1",VF.MICROBIT_ALL_BYTES="全部",VF.MICROBIT_ALINE_BYTES="一行",VF.LABPLUS_BUTTON_IS_PRESSED_MESSAGE0="引腳 %1 被觸發",VF.LABPLUS_BUTTON_IS_PRESSED_TOOLTIP="如果指定按鍵按下返回 “真”,否則返回 “假”。",VF.LABPLUS_BUTTON_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.is_pressed",VF.LABPLUS_BUTTON_WAS_PRESSED_MESSAGE0="引腳 %1 曾經被觸發",VF.LABPLUS_BUTTON_WAS_PRESSED_TOOLTIP="如果按鍵曾經按下過返回 “真”,否則返回 “假”。",VF.LABPLUS_BUTTON_WAS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.was_pressed",VF.LABPLUS_BUTTON_GET_PRESSES_MESSAGE0="引腳 %1 被觸發過的次數",VF.LABPLUS_BUTTON_GET_PRESSES_TOOLTIP="返回按鍵按下的總次數,然後清除計數。",VF.LABPLUS_BUTTON_GET_PRESSES_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/button.html#Button.get_presses",VF.LABPLUS_LED_MESSAGE0="設置LED燈 引腳 %2 輸出 %1",VF.LABPLUS_LED_TOOLTIP="",VF.LABPLUS_LED_HELPURL="http://wiki.labplus.cn/index.php?title=LED",VF.LABPLUS_INFRARED_IS_TRIGGERED_MESSAGE0="紅外探測 引腳 %1 被觸發",VF.LABPLUS_INFRARED_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_INFRARED_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%BA%A2%E5%A4%96%E6%8E%A2%E6%B5%8B",VF.LABPLUS_HEAT_SENSITIVE_DETECTOR_MESSAGE0="熱敏傳感器 引腳 %1 的值",VF.LABPLUS_HEAT_SENSITIVE_DETECTOR_TOOLTIP="",VF.LABPLUS_HEAT_SENSITIVE_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%AD%E6%95%8F%E7%94%B5%E9%98%BB",VF.LABPLUS_I2C_LIGHT_SENSOR_MESSAGE0="I2C數字光線傳感器的值(lux)",VF.LABPLUS_I2C_LIGHT_SENSOR_TOOLTIP="",VF.LABPLUS_I2C_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E5%AD%97%E5%85%89%E7%BA%BF",VF.LABPLUS_WATER_LEVEL_DETECTOR_MESSAGE0="水位傳感器 引腳 %1 的值",VF.LABPLUS_WATER_LEVEL_DETECTOR_TOOLTIP="",VF.LABPLUS_WATER_LEVEL_DETECTOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B0%B4%E4%BD%8D",VF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_MESSAGE0="煙霧探測器 引腳 %1 被觸發",VF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_SMOKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",VF.LABPLUS_BUZZER_FOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",VF.LABPLUS_BUZZER_FOR_TOOLTIP="",VF.LABPLUS_BUZZER_FOR_MESSAGE0="以頻率 %1 激活蜂鳴器 引腳0 %2 毫秒",VF.LABPLUS_BUZZER_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",VF.LABPLUS_BUZZER_ON_TOOLTIP="",VF.LABPLUS_BUZZER_ON_MESSAGE0="以頻率 %1 激活蜂鳴器 引腳0",VF.LABPLUS_BUZZER_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",VF.LABPLUS_BUZZER_OFF_TOOLTIP="",VF.LABPLUS_BUZZER_OFF_MESSAGE0="關閉蜂鳴器 引腳0",VF.LABPLUS_TM_HM_SENSOR_MESSAGE0="I2C溫濕度傳感器的 %1 值",VF.LABPLUS_TM_HM_SENSOR_TOOLTIP="",VF.LABPLUS_TM_HM_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%B8%A9%E6%B9%BF%E5%BA%A6",VF.LABPLUS_TM_HM_SENSOR_TM="溫度",VF.LABPLUS_TM_HM_SENSOR_HM="濕度",VF.LABPLUS_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%88%B5%E6%9C%BA",VF.LABPLUS_SET_SERVO_TOOLTIP="",VF.LABPLUS_SET_SERVO_MESSAGE0="設置舵機 引腳 %1 角度為 %2",VF.LABPLUS_FINGERPRINT_SENSOR_MESSAGE0="指紋傳感器 引腳 %1 驗證通過",VF.LABPLUS_FINGERPRINT_SENSOR_TOOLTIP="",VF.LABPLUS_FINGERPRINT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8C%87%E7%BA%B9",VF.LABPLUS_SET_MOTOR_HELPURL="",VF.LABPLUS_SET_MOTOR_TOOLTIP="",VF.LABPLUS_SET_MOTOR_MESSAGE0="設置電機 %1 方向 %2 速度 %3",VF.LABPLUS_SET_MOTOR_CLOCKWISE="正轉",VF.LABPLUS_SET_MOTOR_ANTI_CLOCKWISE="反轉",VF.LABPLUS_STOP_MOTOR_HELPURL="",VF.LABPLUS_STOP_MOTOR_TOOLTIP="",VF.LABPLUS_STOP_MOTOR_MESSAGE0="停止電機",VF.LABPLUS_GET_RFID_ID_MESSAGE0="射頻卡 引腳 %1 驗證通過",VF.LABPLUS_GET_RFID_ID_TOOLTIP="",VF.LABPLUS_GET_RFID_ID_HELPURL="http://wiki.labplus.cn/index.php?title=RFID",VF.LABPLUS_GET_RFID_VALUE_MESSAGE0="電子錢包 引腳 %1 余額",VF.LABPLUS_GET_RFID_VALUE_TOOLTIP="",VF.LABPLUS_GET_RFID_VALUE_HELPURL="",VF.LABPLUS_SET_RFID_VALUE_MESSAGE0="設置電子錢包 引腳 %1 余額 %2 %3",VF.LABPLUS_SET_RFID_VALUE_TOOLTIP="",VF.LABPLUS_SET_RFID_VALUE_HELPURL="",VF.LABPLUS_SET_RFID_ADD="增加",VF.LABPLUS_SET_RFID_MINUS="減少",VF.LABPLUS_SOUND_IS_TRIGGERED_MESSAGE0="聲音傳感器 引腳 %1 被觸發",VF.LABPLUS_SOUND_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_SOUND_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%BA%A6%E5%85%8B%E9%A3%8E",VF.LABPLUS_USB_SWITCH_HELPURL="",VF.LABPLUS_USB_SWITCH_TOOLTIP="",VF.LABPLUS_USB_SWITCH_MESSAGE0="%1 USB開關 引腳 %2",VF.LABPLUS_USB_SWITCH_ON="打開",VF.LABPLUS_USB_SWITCH_OFF="關閉",VF.LABPLUS_VOICE_RECORD_HELPURL="",VF.LABPLUS_VOICE_RECORD_TOOLTIP="",VF.LABPLUS_VOICE_RECORD_MESSAGE0="%1 語音錄放器 引腳 %2",VF.LABPLUS_VOICE_RECORD_ON="打開",VF.LABPLUS_VOICE_RECORD_OFF="關閉",VF.LABPLUS_RGB_INITIALISE_MESSAGE0="使用 引腳 %1 控制,RGB 彩燈數 %2 ",VF.LABPLUS_RGB_INITIALISE_TOOLTIP="控制 RGB 彩燈。需要設定 neopixels 彩燈數量和控制腳。",VF.LABPLUS_RGB_INITIALISE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel",VF.LABPLUS_RGB_CLEAR_MESSAGE0="清除 RGB 彩燈 %1",VF.LABPLUS_RGB_CLEAR_TOOLTIP="清除所有 RGB 彩燈",VF.LABPLUS_RGB_CLEAR_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.clear",VF.LABPLUS_RGB_SHOW_MESSAGE0="顯示 RGB 彩燈 %1",VF.LABPLUS_RGB_SHOW_TOOLTIP="顯示 / 更新全部 RGB 彩燈。",VF.LABPLUS_RGB_SHOW_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#neopixel.NeoPixel.show",VF.LABPLUS_RGB_SET_MESSAGE0="RGB 彩燈控制 %1 設置位置 %2 紅色 %3 綠色 %4 藍色 %5",VF.LABPLUS_RGB_SET_TOOLTIP="更新指定的 RGB 彩燈的紅、綠、藍 (RGB) 顏色",VF.LABPLUS_RGB_SET_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/neopixel.html#using-neopixels",VF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_MESSAGE0="設置擴展端口 IO %1 為 %2",VF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_TOOLTIP="0表示輸出引腳,1表示輸入引腳",VF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",VF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT="輸入",VF.LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT="輸出",VF.LABPLUS_READ_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",VF.LABPLUS_READ_EXTENDED_PIN_TOOLTIP="",VF.LABPLUS_READ_EXTENDED_PIN_MESSAGE0="讀取擴展端口值 IO %1",VF.LABPLUS_WRITE_EXTENDED_PIN_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%AB%AF%E5%8F%A3%E6%89%A9%E5%B1%95",VF.LABPLUS_WRITE_EXTENDED_PIN_TOOLTIP="",VF.LABPLUS_WRITE_EXTENDED_PIN_MESSAGE0="設置擴展端口 IO %1 值為 %2",VF.LABPLUS_I2C_ULTRASONIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%B6%85%E5%A3%B0%E6%B3%A2",VF.LABPLUS_I2C_ULTRASONIC_TOOLTIP="",VF.LABPLUS_I2C_ULTRASONIC_MESSAGE0="I2C超聲波傳感器的值",VF.MICROBIT_SET_MUSIC_PIN_HELPURL="",VF.MICROBIT_SET_MUSIC_PIN_TOOLTIP="",VF.MICROBIT_SET_MUSIC_PIN_MESSAGE0="設置默認蜂鳴器引腳為 %1",VF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E4%BA%BA%E4%BD%93%E6%84%9F%E5%BA%94",VF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_HUMAN_DETECTOR_IS_TRIGGERED_MESSAGE0="人體感應 引腳 %1 被觸發",VF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%97%A8%E7%A3%81%E5%BC%80%E5%85%B3",VF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_MAGNETIC_SWITCH_IS_TRIGGERED_MESSAGE0="門磁開關 引腳 %1 被觸發",VF.LABPLUS_SOUND_LEVEL_SENSOR_HELPURL="",VF.LABPLUS_SOUND_LEVEL_SENSOR_TOOLTIP="",VF.LABPLUS_SOUND_LEVEL_SENSOR_MESSAGE0="聲音傳感器 引腳 %1 的值",VF.LABPLUS_SMOKE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%83%9F%E9%9B%BE",VF.LABPLUS_SMOKE_SENSOR_TOOLTIP="",VF.LABPLUS_SMOKE_SENSOR_MESSAGE0="煙霧傳感器 引腳 %1 的值",VF.LABPLUS_SOIL_MOISTURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9C%9F%E5%A3%A4%E6%B9%BF%E5%BA%A6",VF.LABPLUS_SOIL_MOISTURE_SENSOR_TOOLTIP="",VF.LABPLUS_SOIL_MOISTURE_SENSOR_MESSAGE0="土壤濕度傳感器 引腳 %1 的值",VF.LABPLUS_FAN_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%8E%92%E9%A3%8E%E6%89%87",VF.LABPLUS_FAN_SWITCH_TOOLTIP="",VF.LABPLUS_FAN_SWITCH_MESSAGE0="%1 風扇 引腳 %2",VF.LABPLUS_VOICE_RECORD_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.LABPLUS_VOICE_RECORD_ON_TOOLTIP="",VF.LABPLUS_VOICE_RECORD_ON_MESSAGE0="打開錄放器 %1 引腳 %2",VF.LABPLUS_VOICE_RECORD_PLAY="播放",VF.LABPLUS_VOICE_RECORD_REC="錄音",VF.LABPLUS_VOICE_RECORD_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.LABPLUS_VOICE_RECORD_OFF_TOOLTIP="",VF.LABPLUS_VOICE_RECORD_OFF_MESSAGE0="關閉錄放器 引腳 %1",VF.LABPLUS_MOTOR_ON_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.LABPLUS_MOTOR_ON_TOOLTIP="",VF.LABPLUS_MOTOR_ON_MESSAGE0="打開直流電機 %1 速度 %2 引腳 %3",VF.LABPLUS_MOTOR_ON_CLOCKWISE="正轉",VF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="反轉",VF.LABPLUS_MOTOR_OFF_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.LABPLUS_MOTOR_OFF_TOOLTIP="",VF.LABPLUS_MOTOR_OFF_MESSAGE0="停止直流電機 引腳 %1",VF.LABPLUS_READ_COLOR_FROM_I2C_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%A2%9C%E8%89%B2",VF.LABPLUS_READ_COLOR_FROM_I2C_TOOLTIP="",VF.LABPLUS_READ_COLOR_FROM_I2C_MESSAGE0="I2C顏色傳感器讀取並儲存顏色",VF.LABPLUS_RGB_COLOR_HELPURL="http://wiki.labplus.cn/index.php?title=RGB_LED",VF.LABPLUS_RGB_COLOR_TOOLTIP="讀取已儲存的顏色",VF.LABPLUS_RGB_COLOR_MESSAGE0="RGB顏色 %1",VF.LABPLUS_SET_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",VF.LABPLUS_SET_I2C_DIGITS_TOOLTIP="",VF.LABPLUS_SET_I2C_DIGITS_MESSAGE0="設置I2C數碼管的值為 %1",VF.LABPLUS_TURN_OFF_I2C_DIGITS_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%95%B0%E7%A0%81%E7%AE%A1",VF.LABPLUS_TURN_OFF_I2C_DIGITS_TOOLTIP="",VF.LABPLUS_TURN_OFF_I2C_DIGITS_MESSAGE0="關閉I2C數碼管",VF.LABPLUS_UART_SET_MIDI_MELODIC_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",VF.LABPLUS_UART_SET_MIDI_MELODIC_TOOLTIP="",VF.LABPLUS_UART_SET_MIDI_MELODIC_MESSAGE0="設置MIDI模塊音調為 %1",VF.LABPLUS_UART_PLAY_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",VF.LABPLUS_UART_PLAY_MIDI_NOTE_TOOLTIP="",VF.LABPLUS_UART_PLAY_MIDI_NOTE_MESSAGE0="MIDI模塊 %2 音符 %1",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Do="Do",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Re="Re",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Mi="Mi",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Fa="Fa",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Sol="Sol",VF.LABPLUS_UART_PLAY_MIDI_NOTE_La="La",VF.LABPLUS_UART_PLAY_MIDI_NOTE_Si="Si",VF.LABPLUS_UART_PLAY_MIDI_NOTE="播放",VF.LABPLUS_UART_OFF_MIDI_NOTE="停止",VF.LABPLUS_UART_OFF_MIDI_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",VF.LABPLUS_UART_OFF_MIDI_NOTE_TOOLTIP="",VF.LABPLUS_UART_OFF_MIDI_NOTE_MESSAGE0="MIDI模塊停止播放音符 %1",VF.LABPLUS_UART_INIT_MIDI_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E5%AD%90%E7%90%B4",VF.LABPLUS_UART_INIT_MIDI_TOOLTIP="",VF.LABPLUS_UART_INIT_MIDI_MESSAGE0="初始化MIDI模塊 %1",VF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%BE%AA%E8%BF%B9",VF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_LINE_FOLLOWER_IS_TRIGGERED_MESSAGE0="循跡傳感器 引腳 %1 檢測為黑",VF.LABPLUS_TEMPERATURE_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=LM35%E6%B8%A9%E5%BA%A6",VF.LABPLUS_TEMPERATURE_SENSOR_TOOLTIP="",VF.LABPLUS_TEMPERATURE_SENSOR_MESSAGE0="LM35溫度傳感器 引腳 %1 的值",VF.LABPLUS_ROTATE_DIMMER_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%97%8B%E9%92%AE%E7%94%B5%E4%BD%8D%E5%99%A8",VF.LABPLUS_ROTATE_DIMMER_TOOLTIP="",VF.LABPLUS_ROTATE_DIMMER_MESSAGE0="旋轉電位器 引腳 %1 的值",VF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9C%87%E5%8A%A8",VF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_TOOLTIP="",VF.LABPLUS_SHAKE_DETECTOR_IS_TRIGGERED_MESSAGE0="震動傳感器 引腳 %1 被觸發",VF.LABPLUS_LASER_SWITCH_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%BF%80%E5%85%89%E5%8F%91%E5%B0%84",VF.LABPLUS_LASER_SWITCH_TOOLTIP="",VF.LABPLUS_LASER_SWITCH_MESSAGE0="%1 激光開關 引腳 %2",VF.LABPLUS_4BUTTON_HELPURL="http://wiki.labplus.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",VF.LABPLUS_4BUTTON_TOOLTIP="",VF.LABPLUS_4BUTTON_MESSAGE0="四向按鍵模塊 引腳 %1 按鍵 %2 被按下",VF.BLUE="A",VF.GREEN="B",VF.RED="C",VF.YELLOW="D",VF.LABPLUS_JOYSTICK_HELPURL="",VF.LABPLUS_JOYSTICK_TOOLTIP="",VF.LABPLUS_JOYSTICK_MESSAGE0="搖桿 引腳A0 %1 引腳A1 %2 %3 軸的值",VF.LABPLUS_UART_MP3_PLAY_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",VF.LABPLUS_UART_MP3_PLAY_TOOLTIP="",VF.LABPLUS_UART_MP3_PLAY_MESSAGE0="MP3模塊(UART)播放第 %1 首音樂",VF.LABPLUS_UART_MP3_SET_VOLUME_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",VF.LABPLUS_UART_MP3_SET_VOLUME_TOOLTIP="",VF.LABPLUS_UART_MP3_SET_VOLUME_MESSAGE0="設置MP3模塊(UART)音量為 %1",VF.LABPLUS_UART_MP3_SET_STATUS_HELPURL="http://wiki.labplus.cn/index.php?title=%E9%9F%B3%E4%B9%90%E6%92%AD%E6%94%BE",VF.LABPLUS_UART_MP3_SET_STATUS_TOOLTIP="",VF.LABPLUS_UART_MP3_SET_STATUS_MESSAGE0="設置MP3模塊(UART)狀態為 %1",VF.PAUSE="暫停",VF.STOP="停止",VF.PLAY="繼續播放",VF.PLAYNEXT="下一首",VF.PLAYPREV="上一首",VF.LABPLUS_UART_INIT_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.LABPLUS_UART_INIT_TOOLTIP="",VF.LABPLUS_UART_INIT_MESSAGE0="初始化串口波特率為 %3 TX為 %1 RX為 %2",VF.LABPLUS_VOICE_RECORD_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.LABPLUS_VOICE_RECORD_ON1_TOOLTIP="",VF.LABPLUS_VOICE_RECORD_ON1_MESSAGE0="打開錄放器 %1 %2 引腳REC %3 引腳PLAY %4",VF.LABPLUS_VOICE_RECORD_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",VF.LABPLUS_VOICE_RECORD_OFF1_TOOLTIP="",VF.LABPLUS_VOICE_RECORD_OFF1_MESSAGE0="關閉錄放器 %1 引腳REC %2 引腳PLAY %3",VF.LABPLUS_MOTOR_ON1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.LABPLUS_MOTOR_ON1_TOOLTIP="",VF.LABPLUS_MOTOR_ON1_MESSAGE0="打開直流電機 %1 速度 %2 引腳AIN1 %3 引腳AIN2 %4",VF.LABPLUS_MOTOR_OFF1_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",VF.LABPLUS_MOTOR_OFF1_TOOLTIP="",VF.LABPLUS_MOTOR_OFF1_MESSAGE0="停止直流電機 %1 引腳AIN1 %2 引腳AIN2 %3",VF.LABPLUS_SET_I2C_LCD1602_CURSOR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",VF.LABPLUS_SET_I2C_LCD1602_CURSOR_TOOLTIP="",VF.LABPLUS_SET_I2C_LCD1602_CURSOR_MESSAGE0="設置LCD遊標位置%1 X %2 Y %3";VF.LABPLUS_SET_I2C_LCD1602_PRINT_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",VF.LABPLUS_SET_I2C_LCD1602_PRINT_TOOLTIP="",VF.LABPLUS_SET_I2C_LCD1602_PRINT_MESSAGE0="設置LCD顯示 %1",VF.LABPLUS_SET_I2C_LCD1602_SCROLL_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",VF.LABPLUS_SET_I2C_LCD1602_SCROLL_TOOLTIP="配合循環次數使用",VF.LABPLUS_SET_I2C_LCD1602_SCROLL_MESSAGE0="%1滾動LCD顯示內容",VF.LABPLUS_SET_I2C_LCD1602_SCROLL_ALEFT="向左",VF.LABPLUS_SET_I2C_LCD1602_SCROLL_RIGHTWARD="向右",VF.LABPLUS_SET_I2C_LCD1602_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=1602_LCD",VF.LABPLUS_SET_I2C_LCD1602_CLEAR_TOOLTIP="",VF.LABPLUS_SET_I2C_LCD1602_CLEAR_MESSAGE0="清除LCD顯示內容",VF.LABPLUS_UART_ANY_MSG_RECEIVED_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.LABPLUS_UART_ANY_MSG_RECEIVED_TOOLTIP="",VF.LABPLUS_UART_ANY_MSG_RECEIVED_MESSAGE0="%1 接收到數據",VF.BLUEBIT_UART="串口",VF.BLUEBIT_INFRARED_SIGNAL="紅外信號",VF.BLUEBIT_BLUEBOOTH="藍牙",VF.LABPLUS_UART_READ_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.LABPLUS_UART_READ_MSG_TOOLTIP="",VF.LABPLUS_UART_READ_MSG_MESSAGE0="讀取 %1 數據",VF.LABPLUS_UART_WRITE_MSG_HELPURL="http://wiki.labplus.cn/index.php?title=Bluebit",VF.LABPLUS_UART_WRITE_MSG_TOOLTIP="",VF.LABPLUS_UART_WRITE_MSG_MESSAGE0="%1 發送數據 %2",VF.LABPLUS_SET_I2C_LED_MATRIX_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",VF.LABPLUS_SET_I2C_LED_MATRIX_TOOLTIP="",VF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE0="設置點陣 %1 第一行顯示%2 第二行顯示%3 第三行顯示%4 第四行顯示%5 第五行顯示%6 第六行顯示%7 第七行顯示%8 第八行顯示%9 ",VF.LABPLUS_SET_I2C_LED_MATRIX_MESSAGE2="設置點陣 %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",VF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=%E7%82%B9%E9%98%B5",VF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_TOOLTIP="",VF.LABPLUS_SET_I2C_LED_MATRIX_CLEAR_MESSAGE0="清空點陣",VF.LABPLUS_UART_SET_OLED_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",VF.LABPLUS_UART_SET_OLED_TOOLTIP="",VF.LABPLUS_UART_SET_OLED_MESSAGE0="設置OLED屏 %1 X %2 Y %3 顯示文本 %4 字體為 %5",VF.LABPLUS_UART_SET_OLED_CLEAR_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",VF.LABPLUS_UART_SET_OLED_CLEAR_TOOLTIP="",VF.LABPLUS_UART_SET_OLED_CLEAR_MESSAGE0="在OLED屏上擦除矩陣 %1 X1 %2 Y1 %3 X2 %4 Y2 %5",VF.LABPLUS_UART_SET_OLED_CLEAR_ALL_MESSAGE0="清空OLED屏",VF.LABPLUS_UART_SET_OLED_CLEAR_ALL_HELPURL="http://wiki.labplus.cn/index.php?title=OLED",VF.LABPLUS_UART_SET_OLED_CLEAR_ALL_TOOLTIP="",VF.LABPLUS_LIGHT_SENSOR_HELPURL="http://wiki.labplus.cn/index.php?title=%E6%A8%A1%E6%8B%9F%E5%85%89%E7%BA%BF",VF.LABPLUS_LIGHT_SENSOR_TOOLTIP="",VF.LABPLUS_LIGHT_SENSOR_MESSAGE0="模擬光線傳感器 引腳 %1 的值",VF.LABPLUS_BUTTON_MODULE_IS_PRESSED_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",VF.LABPLUS_BUTTON_MODULE_IS_PRESSED_TOOLTIP="",VF.LABPLUS_BUTTON_MODULE_IS_PRESSED_MESSAGE0="按鍵模塊 引腳 %1 被按下",VF.MICROBIT_EXT2_SET_SERVO_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",VF.MICROBIT_EXT2_SET_SERVO_TOOLTIP="",VF.MICROBIT_EXT2_SET_SERVO_MESSAGE0="設置舵機 %1 的角度為 %2",VF.MICROBIT_EXT2_SET_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",VF.MICROBIT_EXT2_SET_MOTOR_TOOLTIP="",VF.MICROBIT_EXT2_SET_MOTOR_MESSAGE0="設置馬達 %1 方向 %2 速度 %3",VF.MICROBIT_EXT2_STOP_MOTOR_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",VF.MICROBIT_EXT2_STOP_MOTOR_TOOLTIP="",VF.MICROBIT_EXT2_STOP_MOTOR_MESSAGE0="停止馬達 %1",VF.MICROBIT_EXT2_SOUND_VALUE_MESSAGE0="聲音傳感器的值",VF.MICROBIT_EXT2_SOUND_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",VF.MICROBIT_EXT2_SOUND_VALUE_TOOLTIP="",VF.MICROBIT_EXT2_LIGHT_VALUE_MESSAGE0="光線傳感器的值",VF.MICROBIT_EXT2_LIGHT_VALUE_HELPURL="http://wiki.labplus.cn/index.php?title=Extend:bit%E2%85%A1",VF.MICROBIT_EXT2_LIGHT_VALUE_TOOLTIP="",VF.MICROBIT_INIT_I2C_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",VF.MICROBIT_INIT_I2C_TOOLTIP="",VF.MICROBIT_INIT_I2C_MESSAGE0="初始化I2C 頻率 %1 引腳SDA %2 引腳SCL %3",VF.MICROBIT_I2C_READ_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",VF.MICROBIT_I2C_READ_TOOLTIP="",VF.MICROBIT_I2C_READ_MESSAGE0="I2C讀取從地址 %1 讀取 %2 字節",VF.MICROBIT_I2C_WRITE_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",VF.MICROBIT_I2C_WRITE_TOOLTIP="",VF.MICROBIT_I2C_WRITE_MESSAGE0="I2C寫入 %2 到地址 %1",VF.MICROBIT_CONVERT_BYTEARRAY_HELPURL="https://microbit-micropython.readthedocs.io/en/latest/i2c.html",VF.MICROBIT_CONVERT_BYTEARRAY_TOOLTIP="",VF.MICROBIT_CONVERT_BYTEARRAY_MESSAGE0="bytearray %1",VF.BOTBIT_MOTOR_ON_HELPURL="",VF.BOTBIT_MOTOR_ON_TOOLTIP="範圍:-2000~2000",VF.BOTBIT_MOTOR_ON_MESSAGE0="設置機器人 %1 右輪速度為 %2 左輪速度為 %3",VF.BOTBIT_MOTOR_LEFT="左",VF.BOTBIT_MOTOR_RIGHT="右",VF.BOTBIT_SERVO_UP="上方",VF.BOTBIT_SERVO_DOWN="下方",VF.BOTBIT_MOTOR_FORWARD="前進",VF.BOTBIT_MOTOR_BACKWARD="後退",VF.BOTBIT_HOLDBALL_HELPURL="",VF.BOTBIT_HOLDBALL_TOOLTIP="",VF.BOTBIT_HOLDBALL_MESSAGE0="雙臂抱起",VF.BOTBIT_STEERING_ENGINEL_HELPURL="",VF.BOTBIT_STEERING_ENGINEL_TOOLTIP="角度範圍為-45°~45°",VF.BOTBIT_STEERING_ENGINEL_MESSAGE0="設置 %1臂 %2的角度為 %3",VF.BOTBIT_SERVO_Y="Y軸舵機",VF.BOTBIT_SERVO_X="X軸舵機",VF.BOTBIT_STEERING_ENGINE_LEG_HELPURL="",VF.BOTBIT_STEERING_ENGINE_LEG_TOOLTIP="角度範圍為-45°~45°",VF.BOTBIT_STEERING_ENGINE_LEG_MESSAGE0="設置 %1腿 %2舵機的角度為 %3",VF.BOTBIT_UPDATEPOSITION_HELPURL="",VF.BOTBIT_UPDATEPOSITION_TOOLTIP="",VF.BOTBIT_UPDATEPOSITION_MESSAGE0="刷新舵機角度",VF.BOTBIT_ULTRASONIC_HELPURL="",VF.BOTBIT_ULTRASONIC_TOOLTIP="",VF.BOTBIT_ULTRASONIC_MESSAGE0="超聲波傳感器的值",VF.BOTBIT_WALKING_HELPURL="",VF.BOTBIT_WALKING_TOOLTIP="周期越短, 速度越快, 推薦1000~2000",VF.BOTBIT_WALKING_MESSAGE0="舞步(walking) 步數%2 周期%3 方向%1 ",VF.BOTBIT_WALKING_FORWARD="前",VF.BOTBIT_WALKING_BACK="後",VF.BOTBIT_MOONWALKER_HELPURL="",VF.BOTBIT_MOONWALKER_TOOLTIP="推薦周期1000~2000, 幅度10~50",VF.BOTBIT_MOONWALKER_MESSAGE0="舞步(moonwalker) 步數%2 周期%3 幅度%4 方向%1 ",VF.BOTBIT_MOONWALKER_L="左",VF.BOTBIT_MOONWALKER_R="右",VF.BOTBIT_CRUSAITO_HELPURL="",VF.BOTBIT_CRUSAITO_TOOLTIP="推薦步數2~10, 幅度10~50",VF.BOTBIT_CRUSAITO_MESSAGE0="舞步(crusaito) 步數%2 周期%3 幅度%4 方向%1",VF.BOTBIT_CRUSAITO_CW="逆時針",VF.BOTBIT_CRUSAITO_ANTICW="順時針",VF.BOTBIT_FLAPPING_HELPURL="",VF.BOTBIT_FLAPPING_TOOLTIP="推薦步數5~15, 幅度10~30, 周期1000~2000",VF.BOTBIT_FLAPPING_MESSAGE0="舞步(flapping) 步數%2 周期%3 幅度%4 方向%1",VF.BOTBIT_FLAPPING_FORWARD="前",VF.BOTBIT_FLAPPING_BACK="後",VF.BOTBIT_HOME_HELPURL="",VF.BOTBIT_HOME_TOOLTIP="",VF.BOTBIT_HOME_MESSAGE0="機器人舞步初始化",VF.LABPLUS_UART_SET_MIDI_VOL_HELPURL="http://wiki.labplus.cn/index.php?title=MIDI(%E7%94%B5%E5%AD%90%E7%90%B4)",VF.LABPLUS_UART_SET_MIDI_VOL_TOOLTIP="",VF.LABPLUS_UART_SET_MIDI_VOL_MESSAGE0="設置MIDI模塊音量為 %1",VF.labplus_mapping_MESSAGE0="映射%1 從%2 , %3到%4 , %5",VF.labplus_mapping_TOOLTIP="將0~100中的10映射到0~200中並返回映射值",VF.labplus_mapping_HELPURL="",VF.JOINT_MIDI_PIANO="平臺鋼琴",VF.JOINT_MIDI_BRIGHTACOUSTICPIANO="亮音鋼琴",VF.JOINT_MIDI_ELECTRICGRANDPIANO="電鋼琴",VF.JOINT_MIDI_HARPSICHORD="大鍵琴",VF.JOINT_MIDI_Celesta="鋼片琴",VF.JOINT_MIDI_Glockenspiel="鐘琴",VF.JOINT_MIDI_Musicalbox="音樂盒",VF.JOINT_MIDI_Marimba="馬林巴琴",VF.JOINT_MIDI_Xylophone="木琴",VF.JOINT_MIDI_TubularBell="管鐘",VF.JOINT_MIDI_Dulcimer="洋琴",VF.JOINT_Vibraphone="顫音琴",VF.JOINT_MIDI_ORGAN="音栓風琴",VF.JOINT_Acoustic_Guitar="木吉他",VF.JOINT_Electric_Guitar="電吉他",VF.JOINT_Acoustic_Bass="民謠貝斯",VF.JOINT_String_Ensemble="弦樂合奏",VF.JOINT_Violin="小提琴",VF.JOINT_Trumpet="小號",VF.JOINT_Sax="薩克斯",VF.JOINT_Steel_Drums="鋼鼓",VF.JOINT_Lead="合成音主旋律",VF.JOINT_Pad="合成音襯底",VF.LABPLUS_PLAY_BUZZER_NOTE_HELPURL="http://wiki.labplus.cn/index.php?title=%E8%9C%82%E9%B8%A3%E5%99%A8",VF.LABPLUS_PLAY_BUZZER_NOTE_TOOLTIP="",VF.LABPLUS_PLAY_BUZZER_NOTE_MESSAGE0="播放音調 %1",VF.Carbit_init_MESSAGE0="CarBit初始化",VF.Carbit_init_TOOLTIP="",VF.Carbit_init_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_setLeftMotor_MESSAGE0="B2電機速度 %1",VF.Carbit_setLeftMotor_TOOLTIP="範圍:-100~100",VF.Carbit_setLeftMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_setRightMotor_MESSAGE0="B1電機速度 %1",VF.Carbit_setRightMotor_TOOLTIP="範圍:-100~100",VF.Carbit_setRightMotor_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_analog_light_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_analog_light_TOOLTIP="Q3對應Pin1,Q4對應Pin2",VF.Carbit_analog_light_MESSAGE0="%1 模擬光線的值",VF.Carbit_Speed_U10_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_Speed_U10_TOOLTIP="對應U10",VF.Carbit_Speed_U10_MESSAGE0="左輪速度",VF.Carbit_Speed_U11_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_Speed_U11_TOOLTIP="對應U11",VF.Carbit_Speed_U11_MESSAGE0="右輪速度",VF.Carbit_Distance_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_Distance_TOOLTIP="",VF.Carbit_Distance_MESSAGE0="超聲波的值",VF.Carbit_tracking_HELPURL="http://wiki.labplus.cn/index.php?title=Car:bit",VF.Carbit_tracking_TOOLTIP="",VF.Carbit_tracking_MESSAGE0="循跡參數 %1 直行速度 %2 最大限速 %3 轉彎延時 %5 轉彎速度系數 %4 ",VF.XUNFEI_SPEECH_TTS_HELPURL="",VF.XUNFEI_SPEECH_TTS_TOOLTIP="合成音頻文件格式只能是 *.pcm",VF.XUNFEI_SPEECH_TTS_MESSAGE0="[訊飛語音] 合成音頻 %1 APPID %2 APISecret %3 APIKey %4 文字內容 %5 轉存為音頻文件 %6",VF.XUNFEI_SPEECH_IAT_HELPURL="",VF.XUNFEI_SPEECH_IAT_TOOLTIP="可識別的音頻格式有 *.pcm 與 *.wav",VF.XUNFEI_SPEECH_IAT_MESSAGE0="[訊飛語音] 識別音頻 %1 APPID %2 APISecret %3 APIKey %4 待識別音頻文件 %5",VF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",VF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",VF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[訊飛語音] 識別結果",VF.MPYTHON_ZKAI_LCD_INIT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdinittype1-freq15000000-colorlcdblack",VF.MPYTHON_ZKAI_LCD_INIT_MESSAGE0="LCD 屏幕初始化",VF.MPYTHON_ZKAI_LCD_INIT_TOOLTIP="初始化 LCD 屏幕显示",VF.MPYTHON_ZKAI_LCD_ROTATION_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",VF.MPYTHON_ZKAI_LCD_ROTATION_MESSAGE0="LCD 屏幕方向%1",VF.MPYTHON_ZKAI_LCD_ROTATION_TOOLTIP="设置 LCD 屏幕方向,取值范围 [0,3], 从0到3依次顺时针旋转",VF.MPYTHON_ZKAI_SENSOR_RESET_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",VF.MPYTHON_ZKAI_SENSOR_RESET_MESSAGE0="摄像头 初始化",VF.MPYTHON_ZKAI_SENSOR_RESET_TOOLTIP="初始化单目摄像头",VF.MPYTHON_ZKAI_SENSOR_ENABLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",VF.MPYTHON_ZKAI_SENSOR_ENABLE_MESSAGE0="摄像头%1",VF.MPYTHON_ZKAI_SENSOR_ENABLE_TOOLTIP="获取图像",VF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdwidth",VF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_MESSAGE0="LCD 获取%1",VF.MPYTHON_ZKAI_LCD_WIDTHANDHEIGHT_TOOLTIP="返回 LCD 的宽度(水平分辨率);高度(垂直分辨率)",VF.MPYTHON_ZKAI_LCD_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddirectiondir",VF.MPYTHON_ZKAI_LCD_MI_MESSAGE0="LCD 设置镜像",VF.MPYTHON_ZKAI_LCD_MI_TOOLTIP="设置是否镜像",VF.MPYTHON_ZKAI_LCD_TEXT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",VF.MPYTHON_ZKAI_LCD_TEXT_MESSAGE0="显示文本 x %1 y %2 内容 %3",VF.MPYTHON_ZKAI_LCD_TEXT_TOOLTIP="仅支持字母和数字",VF.MPYTHON_ZKAI_SENSOR_OffOn_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%85%B3%E9%97%AD%E6%91%84%E5%83%8F%E5%A4%B4",VF.MPYTHON_ZKAI_SENSOR_OffOn_MESSAGE0="摄像头%1",VF.MPYTHON_ZKAI_SENSOR_OffOn_TOOLTIP="1 表示开启摄像头 0 表示关闭摄像头",VF.MPYTHON_ZKAI_SENSOR_SKIP_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",VF.MPYTHON_ZKAI_SENSOR_SKIP_MESSAGE0="摄像头 跳过帧数%1 毫秒%2内的图像 ",VF.MPYTHON_ZKAI_SENSOR_SKIP_TOOLTIP="摄像头跳过指定帧数或者跳过指定时间内的图像",VF.MPYTHON_ZKAI_SENSOR_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",VF.MPYTHON_ZKAI_SENSOR_RETURN_MESSAGE0="摄像头 获取%1",VF.MPYTHON_ZKAI_SENSOR_RETURN_TOOLTIP="(ZKAI)摄像头返回参数(宽高,获取帧缓冲,获取ID)",VF.MPYTHON_ZKAI_SENSOR_SETS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",VF.MPYTHON_ZKAI_SENSOR_SETS_MESSAGE0="摄像头 设置%1 为%2",VF.MPYTHON_ZKAI_SENSOR_SETS_TOOLTIP="设置摄像头对比度,亮度,饱和度范围为[-2,+2]",VF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",VF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_MESSAGE0="摄像头 自动增益%1",VF.MPYTHON_ZKAI_SENSOR_AUTO_GAIN_TOOLTIP="1开启摄像头自动增益 0关闭摄像头自动增益",VF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%A2%9E%E7%9B%8A%E5%80%BC",VF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_MESSAGE0="摄像头 获取增益值",VF.MPYTHON_ZKAI_SENSOR_ACQUIRE_AUTO_GAIN_TOOLTIP="获取摄像头增益值",VF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",VF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_MESSAGE0="摄像头 水平镜像%1",VF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_TOOLTIP="1 表示开启水平镜像 0 表示关闭水平镜像",VF.MPYTHON_ZKAI_IMAGE_LAB_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%89%BE%E7%BB%BF%E8%89%B2",VF.MPYTHON_ZKAI_IMAGE_LAB_MESSAGE0="寻找颜色 LAB值%1",VF.MPYTHON_ZKAI_IMAGE_LAB_TOOLTIP="image寻找颜色",VF.MPYTHON_ZKAI_TRACE_COLOR_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",VF.MPYTHON_ZKAI_TRACE_COLOR_MESSAGE0="(掌控AI)追蹤色塊 LAB顏色%1 邊界框小於%2 像素小於%3 過濾",VF.MPYTHON_ZKAI_TRACE_COLOR_TOOLTIP="追蹤色塊",VF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_HELPURL="",VF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_MESSAGE0="(掌控AI)追蹤色塊 顯示%1",VF.MPYTHON_ZKAI_TRACE_CILOR_DISPLAYTEN_TOOLTIP="",VF.MPYTHON_ZKAI_BLOB_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_ALL_MESSAGE0="(掌控AI)%1獲取識別後色塊的 所有參數",VF.MPYTHON_ZKAI_BLOB_ALL_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_X_MESSAGE0="(掌控AI)%1獲取識別後色塊的 x座標",VF.MPYTHON_ZKAI_BLOB_X_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_Y_MESSAGE0="(掌控AI)%1獲取識別後色塊的 y座標",VF.MPYTHON_ZKAI_BLOB_Y_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_W_MESSAGE0="(掌控AI)%1獲取識別後色塊的 寬度",VF.MPYTHON_ZKAI_BLOB_W_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_H_MESSAGE0="(掌控AI)%1獲取識別後色塊的 高度",VF.MPYTHON_ZKAI_BLOB_H_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_NUMBER_MESSAGE0="(掌控AI)%1獲取識別後色塊的 數量",VF.MPYTHON_ZKAI_BLOB_NUMBER_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_CENTER_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_CENTER_X_MESSAGE0="(掌控AI)%1獲取識別後色塊的 中心x座標",VF.MPYTHON_ZKAI_BLOB_CENTER_X_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_CENTER_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_CENTER_Y_MESSAGE0="(掌控AI)%1獲取識別後色塊的 中心y座標",VF.MPYTHON_ZKAI_BLOB_CENTER_Y_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI_BLOB_ORTHOGON_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",VF.MPYTHON_ZKAI_BLOB_ORTHOGON_MESSAGE0="(掌控AI)%1獲取識別後色塊的 矩形",VF.MPYTHON_ZKAI_BLOB_ORTHOGON_TOOLTIP="返回blob 類 -- 色塊對象",VF.MPYTHON_ZKAI2_FACE_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_FACE_TRACKING_MESSAGE0="(掌控AI)選擇訓練模型 人臉",VF.MPYTHON_ZKAI2_FACE_TRACKING_TOOLTIP="可以識別並且追蹤人臉,顯示人臉大小等",VF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_MESSAGE0="(掌控AI)調用攝像頭進行 人臉識別",VF.MPYTHON_ZKAI2_PHOTOGRAPH_TRACKING_TOOLTIP="調用攝像頭進行 人臉識別",VF.MPYTHON_ZKAI2_RESULT_FACE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_MESSAGE0="(掌控AI)獲取識別後人臉的 所有參數",VF.MPYTHON_ZKAI2_RESULT_FACE_TOOLTIP="獲取識別後人臉的 所有參數",VF.MPYTHON_ZKAI2_RESULT_FACE_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_X_MESSAGE0="(掌控AI)獲取識別後人臉的 x座標",VF.MPYTHON_ZKAI2_RESULT_FACE_X_TOOLTIP="獲取識別後人臉的 x座標",VF.MPYTHON_ZKAI2_RESULT_FACE_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_Y_MESSAGE0="(掌控AI)獲取識別後人臉的 y座標",VF.MPYTHON_ZKAI2_RESULT_FACE_Y_TOOLTIP="獲取識別後人臉的 y座標",VF.MPYTHON_ZKAI2_RESULT_FACE_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_W_MESSAGE0="(掌控AI)獲取識別後人臉的 寬度",VF.MPYTHON_ZKAI2_RESULT_FACE_W_TOOLTIP="獲取識別後人臉的 寬度",VF.MPYTHON_ZKAI2_RESULT_FACE_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_H_MESSAGE0="(掌控AI)獲取識別後人臉的 高度",VF.MPYTHON_ZKAI2_RESULT_FACE_H_TOOLTIP="獲取識別後人臉的 高度",VF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_MESSAGE0="(掌控AI)獲取識別後人臉的 置信度",VF.MPYTHON_ZKAI2_RESULT_FACE_VALUE_TOOLTIP="獲取識別後人臉的 置信度",VF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_MESSAGE0="(掌控AI)獲取識別後人臉的 數量",VF.MPYTHON_ZKAI2_RESULT_FACE_OBJNUM_TOOLTIP="獲取識別後人臉的 數量",VF.MPYTHON_ZKAI_LCD_DISPLAY_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcddisplayimage-roiauto",VF.MPYTHON_ZKAI_LCD_DISPLAY_MESSAGE0="LCD 显示生效",VF.MPYTHON_ZKAI_LCD_DISPLAY_TOOLTIP="可以在液晶屏上显示一张 image",VF.MPYTHON_ZKAI_SENSOR_IMAGES_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",VF.MPYTHON_ZKAI_SENSOR_IMAGES_MESSAGE0="摄像头 获取图像",VF.MPYTHON_ZKAI_SENSOR_IMAGES_TOOLTIP="控制摄像头捕捉图像",VF.MPYTHON_ZKAI2_20class_TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_20class_TRACKING_MESSAGE0="(掌控AI)選擇訓練模型 20類",VF.MPYTHON_ZKAI2_20class_TRACKING_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",VF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_MESSAGE0="(掌控AI)調用攝像頭進行 20類識別",VF.MPYTHON_ZKAI2_PHOTOGRAPH_20TRACKING_TOOLTIP="調用攝像頭進行 20類識別",VF.MPYTHON_ZKAI2_RESULT_20CLASS_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_MESSAGE0="(掌控AI)獲取識別後20類的 所有參數",VF.MPYTHON_ZKAI2_RESULT_20CLASS_TOOLTIP="獲取識別後20類的 所有參數",VF.MPYTHON_ZKAI2_RESULT_20CLASS_X_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_X_MESSAGE0="(掌控AI)獲取識別後20類的 x座標",VF.MPYTHON_ZKAI2_RESULT_20CLASS_X_TOOLTIP="獲取識別後20類的 x座標",VF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_MESSAGE0="(掌控AI)獲取識別後20類的 y座標",VF.MPYTHON_ZKAI2_RESULT_20CLASS_Y_TOOLTIP="獲取識別後20類的 y座標",VF.MPYTHON_ZKAI2_RESULT_20CLASS_W_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_W_MESSAGE0="(掌控AI)獲取識別後20類的 寬度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_W_TOOLTIP="獲取識別後20類的 寬度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_H_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_H_MESSAGE0="(掌控AI)獲取識別後20類的 高度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_H_TOOLTIP="獲取識別後20類的 高度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_MESSAGE0="(掌控AI)獲取識別後20類的 置信度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_VALUE_TOOLTIP="獲取識別後20類的 置信度",VF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_MESSAGE0="(掌控AI)獲取識別後20類的 數量",VF.MPYTHON_ZKAI2_RESULT_20CLASS_OBJNUM_TOOLTIP="獲取識別後20類的 數量",VF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_MESSAGE0="(掌控AI)獲取識別後20類的 類型",VF.MPYTHON_ZKAI2_RESULT_20CLASS_CLASSID_TOOLTIP="可以識別20個類型,分別是0-19爲飛機,自行車,鳥,船,瓶子,公交車,汽車,貓,椅子,奶牛,餐桌,狗,屋子,摩托車,人,盆栽,羊,沙發,火車,電視",VF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_MESSAGE0="(掌控AI)獲取識別後20類的 類型數量",VF.MPYTHON_ZKAI2_RESULT_20CLASS_INDEX_TOOLTIP="獲取識別後20類的 類型數量",VF.MPYTHON_ZKAI2_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_NUMBER_DISCERN_MESSAGE0="(掌控AI)選擇訓練模型 手寫數字",VF.MPYTHON_ZKAI2_NUMBER_DISCERN_TOOLTIP="選擇訓練模型 手寫數字",VF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",VF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_MESSAGE0="(掌控AI)調用攝像頭進行 手寫數字識別",VF.MPYTHON_ZKAI2_RESULT_NUMBER_DISCERN_TOOLTIP="調用攝像頭進行 手寫數字識別",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_MESSAGE0="(掌控AI)獲取識別後手寫數字的 所有參數",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ALL_TOOLTIP="獲取識別後手寫數字的 所有參數",VF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_MESSAGE0="(掌控AI)獲取識別後手寫數字的 數字",VF.MPYTHON_ZKAI2_NUMBER_DETECT_NUMBER_TOOLTIP="獲取識別後手寫數字的 數字",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_HELPURL="https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_MESSAGE0="(掌控AI)獲取識別後手寫數字的 置信度",VF.MPYTHON_ZKAI2_NUMBER_DETECT_ADIENCE_TOOLTIP="獲取識別後手寫數字的 置信度",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_MESSAGE0="人脸识别",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_TOOLTIP="",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_MESSAGE0="获取 识别%1",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_MESSAGE0="获取 识别 所有参数",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT_ALL_RETURN_TOOLTIP="人脸识别的x和y是LCD屏幕的坐标位置;width和height是人脸识别出的宽度和高度;classid是识别出的类别;objnum是人脸识别出的个数",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_MESSAGE0="人脸识别",VF.MPYTHON_ZKAI_IMAGE_FACEDETECT2_TOOLTIP="可以放入获取识别的参数",VF.MPYTHON_ZKAI_IMAGE_20CLASS_HELPURL="https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",VF.MPYTHON_ZKAI_IMAGE_20CLASS_TOOLTIP="可以放入获取识别的参数,可以识别20个类型,分别是飞机,自行车,鸟,船,瓶子,公交车,汽车,猫,椅子,奶牛, 餐桌,狗,屋子,摩托车,人,盆栽,羊,沙发,火车,电视",VF.MPYTHON_ZKAI_LCD_SHOW_REC_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawrectanglex-y-w-h-color-thickness1-fillfalse",VF.MPYTHON_ZKAI_LCD_SHOW_REC_MESSAGE0="矩形%1 x%3 y%4 宽%5 高%6 颜色为 R%7 G%8 B%9 加粗%2",VF.MPYTHON_ZKAI_LCD_SHOW_REC_TOOLTIP="在图像上绘制矩形",VF.MPYTHON_ZKAI_LCD_SHOW_STRING_MESSAGE0="线条 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",VF.MPYTHON_ZKAI_LCD_SHOW_STRING_TOOLTIP="在图像上绘制线条",VF.MPYTHON_ZKAI_LCD_SHOW_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawlinex0-y0-x1-y1-color-thickness1",VF.MPYTHON_ZKAI_LCD_CLEAR_ALL_MESSAGE0="LCD 显示清空",VF.MPYTHON_ZKAI_LCD_CLEAR_ALL_TOOLTIP="将液晶屏清空为黑色或者指定的颜色",VF.MPYTHON_ZKAI_LCD_CLEAR_ALL_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#lcdclear",VF.MPYTHON_ZKAI_LCD_return_colour_MESSAGE0="LCD 返回 x%1 y%2 颜色",VF.MPYTHON_ZKAI_LCD_return_colour_TOOLTIP="返回某个坐标点的颜色",VF.MPYTHON_ZKAI_LCD_return_colour_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagegetpixelx-y-rgbtuple",VF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_MESSAGE0="圆形%1 x%2 y%3 半径%4 颜色为 R%5 G%6 B%7 加粗%8",VF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_TOOLTIP="在图像上绘制圆形",VF.MPYTHON_ZKAI_LCD_SHOW_CIRCLE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcirclex-y-radius-color-thickness1-fillfalse",VF.MPYTHON_ZKAI_LCD_TEXT_MOST_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",VF.MPYTHON_ZKAI_LCD_TEXT_MOST_MESSAGE0="显示文本 x %1 y %2 内容 %3 颜色为R%4 G%5 B%6 字号%7",VF.MPYTHON_ZKAI_LCD_TEXT_MOST_TOOLTIP="仅支持字母和数字",VF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_MESSAGE0="十字线 x%1 y%2 颜色为R%3 G%4 B%5 尺寸%6 加粗%7",VF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_TOOLTIP="在图像上绘制十字线",VF.MPYTHON_ZKAI_LCD_SHOW_TEN_STRING_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawcrossx-y-color-size5-thickness1",VF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_MESSAGE0="箭头 x1%1 y1%2 到x2%3 y2%4 颜色为R%5 G%6 B%7 加粗%8",VF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_TOOLTIP="在图像上绘制一个箭头",VF.MPYTHON_ZKAI_LCD_SHOW_ARROWS_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagedrawarrowx0-y0-x1-y1-color-thickness1",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-2%EF%BC%9A-%E6%98%BE%E7%A4%BA%E5%9B%BE%E7%89%87",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0="显示图像 路径%1",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP="显示图像",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagetorainbowcopyfalse",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_MESSAGE0="LCD 显示热图颜色",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_TOOLTIP="可以在液晶屏上显示一张 image的热图颜色",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagesavepath-roi-quality50",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_MESSAGE0="将图像的副本保存到SD卡 图像名%1 图像显示区域 x%2 y%3 宽%4 高%5",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_TOOLTIP="将图像的副本保存到SD卡",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_HELPURL="https://maixpy.sipeed.com/zh/libs/machine_vision/image.html#imagecopyroi-copytofbfalse",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0="创建一个图像对象的副本 复制图像区域 x%1 y%2 宽%3 高%4",VF.MPYTHON_ZKAI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP="创建一个图像对象的副本",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE="灰度",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_RAINBOW="彩虹",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_NEGATE="數字反轉",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_HEAT_INVERT="黑白翻轉",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR="線性極",VF.MPYTHON_ZKAI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR="對數極",VF.MPYTHON_ZKAI_SENSOR_PATTERN_GRAYSCALE="灰度",VF.MPYTHON_ZKAI_SENSOR_PATTERN_COLOR="彩色",VF.MPYTHON_ZKAI_SENSOR_ENABLE_START="開始抓取圖像",VF.MPYTHON_ZKAI_SENSOR_ENABLE_STOP="停止抓取圖像",VF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_H="水平鏡像",VF.MPYTHON_ZKAI_SENSOR_LEVEL_MI_V="垂直翻轉",VF.MPYTHON_ZKAI_SENSOR_SETS_CONTRAST="對比度",VF.MPYTHON_ZKAI_SENSOR_SETS_BRIGHTNESS="亮度",VF.MPYTHON_ZKAI_SENSOR_SETS_SATURATION="飽和度",VF.MPYTHON_ZKAI2_FACE_YOLO="人臉識別",VF.MPYTHON_ZKAI2_CLASS_20_YOLO="20類識別",VF.MPYTHON_ZKAI2_MNIST_NET="数字识别",VF.MPYTHON_ZKAI2_PHOTOGRAPH_FACE_YOLO="人臉",VF.MPYTHON_ZKAI2_PHOTOGRAPH_CLASS_20_YOLO="0類",VF.MPYTHON_ZKAI_TRACE_COLOR_RECTANGLE="矩形",VF.MPYTHON_ZKAI_TRACE_COLOR_CROSS="十字",VF.MPYTHON_NAME_PYTHON_ENVIRONMENT_HELPURL="",VF.MPYTHON_NAME_PYTHON_ENVIRONMENT_MESSAGE0="聲明python 運行環境",VF.MPYTHON_NAME_PYTHON_ENVIRONMENT_TOOLTIP="",VF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="I2C獲取顔色",VF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="返回列表",VF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",VF.MPYTHON_LARK_GET_COLOR_MESSAGE0="I2C獲取 %1",VF.MPYTHON_lARK_RED="紅色",VF.MPYTHON__LARK_GREEN="綠色",VF.MPYTHON__LARK_BLUE="藍色",VF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",VF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="I2C獲取HSV",VF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",VF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="i2C獲取HSV %1",VF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",VF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="I2C獲取顔色",VF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",VF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="識別 %1",VF.MPYTHON_LARK_RED="紅色",VF.MPYTHON_LARK_GREEN="綠色",VF.MPYTHON_LARK_BLUE="藍色",VF.MPYTHON_LARK_ORANGE="橙色",VF.MPYTHON_LARK_YELLOW="黃色",VF.MPYTHON_LARK_PURPLE="紫色",VF.MPYTHON_LARK_CYAN="青色",VF.MPYTHON_LARK_NONE="無色",VF.MPYTHON_LARK_NULL="無法獲取",VF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",VF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="I2C超聲波",VF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",VF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="I2C設置 %1 速度 %2",VF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",VF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="I2C獲取 %1 巡綫值",VF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="右邊",VF.mpython_LARK_GET_LINE_LEFT_ON_I2C="左邊",VF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",VF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="I2C循跡傳感器 %1 遇到黑綫",VF.MPYTHON_LARK_SEARCH_LEFT="左邊",VF.MPYTHON_LARK_SEARCH_RIGHT="右邊",VF.MPYTHON_LARK_SEARCH_LEFT2="兩邊都",VF.MPYTHON_LARK_SEARCH_RIGHT2="兩邊都無",VF.MPYTHON_LARK_SEARCH_BOTH="兩邊都",VF.MPYTHON_LARK_SEARCH_NONE="兩邊都無",VF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",VF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="千里馬獲取顔色",VF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",VF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="千里馬獲取 %1",VF.MPYTHON_lARK_CAR_RED="紅色",VF.MPYTHON__LARK_CAR_GREEN="綠色",VF.MPYTHON__LARK_CAR_BLUE="藍色",VF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",VF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="千里馬獲取HSV",VF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",VF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="千里馬HSV %1",VF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",VF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="千里馬識別顔色",VF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",VF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="千里馬識別顔色 %1",VF.MPYTHON_LARK_CAR_RED="紅色",VF.MPYTHON_LARK_CAR_GREEN="綠色",VF.MPYTHON_LARK_CAR_BLUE="藍色",VF.MPYTHON_LARK_CAR_ORANGE="橙色",VF.MPYTHON_LARK_CAR_YELLOW="黃色",VF.MPYTHON_LARK_CAR_PURPLE="紫色",VF.MPYTHON_LARK_CAR_CYAN="青色",VF.MPYTHON_LARK_CAR_NONE="無識別",VF.MPYTHON_LARK_CAR_NULL="識別錯誤",VF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",VF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="千里馬獲取超聲波",VF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",VF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="千里馬獲取 %1 循跡數值",VF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="右邊",VF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="左邊",VF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",VF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="千里馬循跡 %1 碰到黑綫",VF.MPYTHON_LARK_CAR_SEARCH_LEFT="左邊",VF.MPYTHON_LARK_CAR_SEARCH_RIGHT="右邊",VF.MPYTHON_LARK_CAR_SEARCH_LEFT2="兩邊",VF.MPYTHON_LARK_CAR_SEARCH_NONE="兩邊都沒有",VF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",VF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="電機驅動 %1 速度 %2",VF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",VF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="千里馬 %1 速度 %2",VF.MPYTHON_LARK_CAR_MOTION_LEFT="左轉",VF.MPYTHON_LARK_CAR_MOTION_RIGHT="右轉",VF.MPYTHON_LARK_CAR_MOTION_FORWARD="前進",VF.MPYTHON_LARK_CAR_MOTION_BACKWARD="後退",VF.MPYTHON_LARK_CAR_MOTION_STOP="停止",VF.MPYTHON_DEFINE_THREAD_MESSAGE0="定義線程 %1",VF.MPYTHON_RUN_THREAD_MESSAGE0="運行線程 %1",VF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) 轉換數字為bytes %1 %2 %3 %4 待轉換數字 %5",VF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) 解包bytes為數字 %1 %2 %3 %4 待轉換bytes %5",VF.LITTLE_ENDIAN="低字節序(默認)",VF.BIG_ENDIAN="高字節序",VF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[適用2.0板] 當掌控板 %1 時",VF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",VF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",VF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="向左傾斜",VF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="向右傾斜",VF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="向前傾斜",VF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="向後傾斜",VF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="正面朝上",VF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="正面朝下",VF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="被單擊",VF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="被雙擊",VF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="墜落",VF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="橫滾角",VF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="俯仰角",VF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",VF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",VF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="掌控板 %1",VF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",VF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",VF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="按鍵 %1 已經按下",VF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",VF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",VF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="按鍵 %1 曾經按下",VF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",VF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",VF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="按鍵 %1 按下過的次數",VF.MPYTHON2_BUTTON_EVENT_MESSAGE0="當按鍵 %1 被 %2 時",VF.MPYTHON2_BUTTON_EVENT_HELPURL="",VF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",VF.MPYTHON2_BUTTON_EVENT_PRESSED="按下",VF.MPYTHON2_BUTTON_EVENT_RELEASED="松開",VF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",VF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",VF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="觸摸鍵 %1 已經按下",VF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",VF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",VF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="觸摸鍵 %1 曾經按下",VF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",VF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",VF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="觸摸鍵 %1 按下過的次數",VF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",VF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",VF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="觸摸鍵 %1 值",VF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="當觸摸鍵 %1 被 %2 時",VF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",VF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",VF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="觸摸",VF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="釋放",VF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="設置觸摸鍵 %1 閥值為 %2",VF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",VF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",VF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",VF.BLE_UUID_TOOLTIP="",VF.BLE_SETUP_PERIPHERAL_HELPURL="",VF.BLE_SETUP_PERIPHERAL_TOOLTIP="",VF.BLE_SETUP_PERIPHERAL_MESSAGE0="構建 BLE 外圍設備對象 %1 顯示名稱 %2 Service UUID %3",VF.BLE_ADD_CHARACTERISTIC_HELPURL="",VF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",VF.BLE_ADD_CHARACTERISTIC_MESSAGE0="定義 BLE 屬性 %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",VF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",VF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",VF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE 外圍設備 %1",VF.BLE_START_BROADCASTING="開始廣播",VF.BLE_STOP_BROADCASTING="停止廣播",VF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",VF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",VF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="讀 BLE 設備的屬性 %1",VF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",VF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",VF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="寫 BLE 設備的屬性 %1 %2 值 %3 Notify %4",VF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",VF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",VF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE 外圍設備斷開連接",VF.BLE_PERIPHERAL_MAC_HELPURL="",VF.BLE_PERIPHERAL_MAC_TOOLTIP="",VF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE 外圍設備 MAC地址",VF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",VF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",VF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="當 BLE 與中央設備建立連接時 %1 連接句柄 %2 地址類型 %3 中央設備的MAC地址 %4",VF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",VF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",VF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="當 BLE 設備的屬性值被改寫時 %1 連接句柄 %2 被寫屬性句柄 %3 寫入的數據 %4",VF.BLE_SETUP_CENTERAL_HELPURL="",VF.BLE_SETUP_CENTERAL_TOOLTIP="",VF.BLE_SETUP_CENTERAL_MESSAGE0="構建 BLE 中央設備對象 顯示名稱 %1",VF.BLE_CENTERAL_CONNECT_HELPURL="",VF.BLE_CENTERAL_CONNECT_TOOLTIP="",VF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE 中央設備連接到 %1 %2",VF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",VF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",VF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE 外圍設備已連接 ?",VF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",VF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",VF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="設定 %1 為 已連接外圍設備 屬性對象 %2 Service UUID %3 Characteristic UUID %4",VF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",VF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",VF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="讀 已連接外圍設備的 屬性 %1 值",VF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",VF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",VF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="寫 已連接外圍設備的 屬性 %1 值 %2",VF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",VF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",VF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="當 已連接外圍設備發起 Notify 通知事件時 %1 屬性的值柄 %2 通知的屬性值 %3",VF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",VF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",VF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="已連接的外圍設備 %1",VF.BLE_CENTERAL_CLOSE_HELPURL="",VF.BLE_CENTERAL_CLOSE_TOOLTIP="",VF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE 中央設備 斷開連接",VF.BLE_INFO_NAME="藍牙名稱",VF.BLE_INFO_MAC="MAC地址",VF.BLE_INFO_RSSI="信號強度",VF.BLE_INFO_ADDRTYPE="地址類型",VF.BLE_INFO_ADVTYPE="廣播類型",VF.BLE_INFO_DATA="原始數據(元組)",VF.BLE_SETUP_UART_HELPURL="",VF.BLE_SETUP_UART_TOOLTIP="",VF.BLE_SETUP_UART_MESSAGE0="構建 BLE UART從機 顯示名稱 %1",VF.BLE_UART_IS_CONNECTED_HELPURL="",VF.BLE_UART_IS_CONNECTED_TOOLTIP="",VF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART 已連接 ?",VF.BLE_UART_ANY_HELPURL="",VF.BLE_UART_ANY_TOOLTIP="",VF.BLE_UART_ANY_MESSAGE0="BLE UART 可讀字節數量",VF.BLE_UART_IRQ_HELPURL="",VF.BLE_UART_IRQ_TOOLTIP="",VF.BLE_UART_IRQ_MESSAGE0="當 BLE UART 接收到數據時 %1 執行 %2",VF.BLE_UART_READ_HELPURL="",VF.BLE_UART_READ_TOOLTIP="從 UART 另一端發送過來的消息",VF.BLE_UART_READ_MESSAGE0="已接收數據",VF.BLE_UART_WRITE_HELPURL="",VF.BLE_UART_WRITE_TOOLTIP="",VF.BLE_UART_WRITE_MESSAGE0="BLE UART 發送字節 %1",VF.BLE_UART_CLOSE_HELPURL="",VF.BLE_UART_CLOSE_TOOLTIP="",VF.BLE_UART_CLOSE_MESSAGE0="BLE UART 斷開連接",VF.BLE_SETUP_UART_MASTER_HELPURL="",VF.BLE_SETUP_UART_MASTER_TOOLTIP="",VF.BLE_SETUP_UART_MASTER_MESSAGE0="構建 BLE UART主機 連接到 %1 %2",VF.BLE_SETUP_HID_HELPURL="",VF.BLE_SETUP_HID_TOOLTIP="",VF.BLE_SETUP_HID_MESSAGE0="構建 BLE HID %1 對象 %2 顯示名稱 %3 電池電量 %4",VF.BLE_HID_MOUSE="鼠標",VF.BLE_HID_KEYBOARD="鍵盤",VF.BLE_HID_CONSUMER="遙控器",VF.BLE_HID_ADVERTISE_HELPURL="",VF.BLE_HID_ADVERTISE_TOOLTIP="",VF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID設備 %1",VF.BLE_HID_CONNECT_EVENT_HELPURL="",VF.BLE_HID_CONNECT_EVENT_TOOLTIP="",VF.BLE_HID_CONNECT_EVENT_MESSAGE0="當 BLE HID設備 連接時",VF.BLE_HID_DISCONNECT_HELPURL="",VF.BLE_HID_DISCONNECT_TOOLTIP="",VF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID設備 斷開連接",VF.BLE_HID_BATTERY_LEVEL_HELPURL="",VF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",VF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID設備 電池電量",VF.BLE_HID_MOUSE_BUTTONS_HELPURL="",VF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",VF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="鼠標鍵 %1",VF.BLE_HID_MOUSE_CLICK_HELPURL="",VF.BLE_HID_MOUSE_CLICK_TOOLTIP="",VF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID 鼠標 點擊按鍵 %1",VF.BLE_HID_MOUSE_PRESS_HELPURL="",VF.BLE_HID_MOUSE_PRESS_TOOLTIP="",VF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID 鼠標 長按按鍵 %1",VF.BLE_HID_MOUSE_RELEASE_HELPURL="",VF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",VF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID 鼠標 釋放按鍵 %1",VF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",VF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",VF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID 鼠標 釋放所有按鍵",VF.BLE_HID_MOUSE_MOVE_HELPURL="",VF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - 光標移動量,範圍 ±127 。\nwheel - 滾輪,範圍 ±127 。",VF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID 鼠標 光標移動 %1 X軸移動量 %2 Y軸移動量 %3 滾輪 %4",VF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",VF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",VF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="鍵盤按鍵 %1",VF.BLE_HID_KEYBOARD_SEND_HELPURL="",VF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",VF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID 鍵盤 按下按鍵 %1",VF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",VF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",VF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID 鍵盤 同時按下按鍵 %1 %2 %3",VF.BLE_HID_KEYBOARD_PRESS_HELPURL="",VF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",VF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID 鍵盤 長按按鍵 %1",VF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",VF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",VF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID 鍵盤 釋放按鍵 %1",VF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",VF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",VF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID 鍵盤 釋放所有按鍵",VF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",VF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",VF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="遙控器鍵 %1",VF.BLE_HID_CONSUMER_SEND_HELPURL="",VF.BLE_HID_CONSUMER_SEND_TOOLTIP="",VF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID 遙控器點擊 %1",VF.BLE_SETUP_IBEACON_HELPURL="",VF.BLE_SETUP_IBEACON_TOOLTIP="",VF.BLE_SETUP_IBEACON_MESSAGE0="構建 BLE iBeacon設備 %1 UUID %2 major %3 minor %4",VF.BLE_IBEACON_ADVERTISE_HELPURL="",VF.BLE_IBEACON_ADVERTISE_TOOLTIP="",VF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon設備 %1",VF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",VF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="返回電量,單位mV",VF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="拓展板的電壓值(mV)",VF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",VF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="返回編碼後的紅外脈沖數據buff",VF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="拓展板 紅外脈沖任意編碼 %1 載波頻率(Hz) %2 code總數 %3 循環碼位置 %4 code列表 %5 編碼波形數據 %6",VF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",VF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="返回編碼後的紅外脈沖數據buff\n用戶碼:0~255\n命令碼:0~255",VF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="拓展板 紅外脈沖NEC編碼 %1 用戶碼 %2 命令碼 %3",VF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",VF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",VF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="拓展板 發送紅外脈沖數據 %1 %2",VF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="只發一次",VF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="持續發送",VF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",VF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="當發送重復碼後,使用此函數來停止發送。",VF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="拓展板 停止發送紅外脈沖數據",VF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",VF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="學習開始後,需等待4秒,之後返回學習結果。",VF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="拓展板 開始紅外學習",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="拓展板 紅外學習有結果 ?",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP="返回學習後的“紅外編碼數據”,須在 learn 函數後使用。",VF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="拓展板 學習到的紅外編碼數據",VF.MPYTHON_MLX90615_SET_HELPURL="",VF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 非接觸測溫傳感器 設置發射系數%1",VF.MPYTHON_MLX90615_SET_TOOLTIP="",VF.MPYTHON_MLX90615_GET_HELPURL="",VF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 非接觸測溫傳感器 獲取系數",VF.MPYTHON_MLX90615_GET_TOOLTIP="",VF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",VF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 非接觸測溫傳感器 獲取測溫",VF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",VF.MPYTHON_MQ135_INIT_HELPURL="",VF.MPYTHON_MQ135_INIT_MESSAGE0="MQ135初始化 輸出引腳%1 溫度%2 ℃ 濕度%3 %",VF.MPYTHON_MQ135_INIT_TOOLTIP="MQ135上的VCC 連接擴展板的電源口 V ,GND連接擴展板的地線口 G ,AO輸出連接擴展板的引腳 P0/P1(即選引腳)\nMQ135主要用於檢測空氣中的二氧化碳、酒精、苯、氮氧化物、氨等氣體的濃度",VF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 返回 %1",VF.MPYTHON_MQ135_OPTIONS_HELPURL="",VF.MPYTHON_MQ135_OPTIONS_TOOLTIP="返回探測到的二氧化碳的百萬分之一(假設只有空氣中的二氧化碳) ppm濃度",VF.MPYTHON_MQ135_GET_RZERO="校正傳感器電阻",VF.MPYTHON_MQ135_GET_CORRECTED_RZERO="校正傳感器電阻(校準溫度、濕度)",VF.MPYTHON_MQ135_GET_PPM="二氧化碳、酒精、苯、氮氧化物、氨等氣體ppm濃度",VF.MPYTHON_MQ135_GET_CORRECTED_PPM="二氧化碳、酒精、苯、氮氧化物、氨等氣體ppm濃度(校準溫度、濕度)",VF.mpython_gyroscope_get_HELPURL="",VF.mpython_gyroscope_get_MESSAGE0="%1 軸角速度",VF.mpython_gyroscope_get_TOOLTIP="v2.3版本以上掌控版適用",VF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",VF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",VF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",VF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",VF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",VF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",VF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",VF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",VF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",VF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="設置角速度範圍,默認為 ±256dps。僅適用於掌控板2.3及以上版本",VF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="設置角速度範圍為 %1",VF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",VF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="校準陀螺儀角速度計的3個軸(x,y,z)的角速度值偏差。\n一般情況下無需校準,只有遇到角速度偏差較大時才要校準。\n x , y , z 為調整偏差值,可修正範圍為 ±1024dps。\n註意:v2.3版本以後適用",VF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="校準角速度值 %1 X軸偏差 %2 Y軸偏差 %3 Z軸偏差 %4";const kF=VF,wF={TEXT_IS_NUMBER_HELPURL:"",TEXT_IS_NUMBER_TOOLTIP:"",TEXT_IS_NUMBER_MESSAGE0:"%1 %2",TEXT_IS_DIGIT:"is number",TEXT_IS_ALPHA:"is letter",TEXT_IS_ALNUM:"is mix of numbers and letters",REDO:"Redo",UNDO:"Undo",DELETE_VARIABLE:'Delete "%1" variable',DELETE_VARIABLE_CONFIRMATION:'Delete %1 of the "%2" variable?',CONTROLS_REPEAT_FOREVER:"repeat forever",CONTROLS_REPEAT_FOREVER_TOOLTIP:"Do some statements forever times",TEXT_LIST_START:"create list [",TEXT_LIST_END:"]",TEXT_TUPLE_START:"create tuple (",TEXT_TUPLE_END:")",TEXT_DICT_START:"create dictionary {",TEXT_DICT_END:"}",TEXT_SET_START:"create set {",TEXT_SET_END:"}",TEXT_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",TUPLE_CREATE_EMPTY_TITLE:"create empty tuple",DICT_CREATE_EMPTY_TITLE:"create empty dictionary",SET_CREATE_EMPTY_TITLE:"create empty sets",TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD:"tuple",DICT_CREATE_WITH_CONTAINER_TITLE_ADD:"dictionary",SET_CREATE_WITH_CONTAINER_TITLE_ADD:"sets",TUPLE_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or rearrange sections to reconfigure this tuple block.",DICT_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or rearrange sections to reconfigure this dictionary block.",TUPLE_CREATE_WITH_INPUT_WITH:"create tuple with",DICT_CREATE_WITH_INPUT_WITH:"create dictionary with",SET_CREATE_WITH_INPUT_WITH:"create sets with",TUPLE_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the tuple.",DICT_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the dictionary.",SET_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the sets.",LISTS_SORT_HELPURL:"https://github.com/google/blockly/wiki/Lists#sorting-a-list",LISTS_SORT_ORDER_ASCENDING:"ascending",LISTS_SORT_ORDER_DESCENDING:"descending",LISTS_SORT_TITLE:"sort %1 %2 %3",LISTS_SORT_TOOLTIP:"Sort a copy of a list.",LISTS_SORT_TYPE_IGNORECASE:"by letter, ignore case",LISTS_SORT_TYPE_NUMERIC:"by number",LISTS_SORT_TYPE_TEXT:"by letter",labplus_mapping_MESSAGE0:"map %1 from %2 , %3 to %4 , %5",labplus_mapping_TOOLTIP:"Map 10 of 0~100 to 0~200 and return the mapped value",labplus_mapping_HELPURL:"",MPYTHON_OPEN:"on",MPYTHON_CLOSE:"off",MPYTHONBOX_RGB_IMAGE_SHIFT_LEFT:"shift left",MPYTHONBOX_RGB_IMAGE_SHIFT_RIGHT:"shift right",MPYTHONBOX_RGB_IMAGE_SHIFT_UP:"shift up",MPYTHONBOX_RGB_IMAGE_SHIFT_DOWN:"shift down",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_GRAYSCALE:"grayscale",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_RAINBOW:"rainbow",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_NEGATE:"negate",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_INVERT:"invert",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LINPOLAR:"line polar",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_LOGPOLAR:"log polar",MPYTHON_AI_SENSOR_PATTERN_GRAYSCALE:"grayscale",MPYTHON_AI_SENSOR_PATTERN_COLOR:"color",MPYTHON_AI_SENSOR_ENABLE_START:"start capturing image",MPYTHON_AI_SENSOR_ENABLE_STOP:"stop capturing image",MPYTHON_AI_SENSOR_LEVEL_MI_H:"horizontal mirror",MPYTHON_AI_SENSOR_LEVEL_MI_V:"vertical flip",MPYTHON_AI_SENSOR_SETS_CONTRAST:"contrast",MPYTHON_AI_SENSOR_SETS_BRIGHTNESS:"brightness",MPYTHON_AI_SENSOR_SETS_SATURATION:"saturation",MPYTHON_AI2_FACE_YOLO:"FACE YOLO",MPYTHON_AI2_CLASS_20_YOLO:"CLASS 20 YOLO",MPYTHON_AI_TRACE_COLOR_RECTANGLE:"rectangle",MPYTHON_AI_TRACE_COLOR_CROSS:"cross",TEXT_APPEND_TEXT_HELPURL:"",TEXT_APPEND_TEXT_TOOLTIP:"",TEXT_APPEND_TEXT_MESSAGE0:"%1 append text %2",MPYTHON_AUDIO_PLAY_chirp_MESSAGE0:"鸟叫",MPYTHON_AUDIO_PLAY_Pianodarkmelodies_MESSAGE0:"钢琴黑暗旋律配乐",MPYTHON_AUDIO_PLAY_miaow_MESSAGE0:"猫叫",MPYTHON_AUDIO_PLAY_bark_MESSAGE0:"小狗吠叫",MPYTHON_AUDIO_PLAY_Arichpercussivesound_MESSAGE0:"浑厚的打击音",MPYTHON_AUDIO_PLAY_Soundeffectsfortension_MESSAGE0:"紧张效果的音效",MPYTHON_AUDIO_PLAY_Camerashuttersound_MESSAGE0:"拍照快门声",MPYTHON_AUDIO_PLAY_Hundredsofflies_MESSAGE0:"数百只苍蝇",MPYTHON_AUDIO_PLAY_Cricketscry_MESSAGE0:"蟋蟀叫声",MPYTHON_AUDIO_PLAY_Shakethebassline_MESSAGE0:"摇晃低音声线",MPYTHON_AUDIO_PLAY_audiencecheeredandclapped_MESSAGE0:"听众欢呼掌声",MPYTHON_AUDIO_PLAY_Cruiseshipwhistle_MESSAGE0:"邮轮汽笛",MPYTHON_AUDIO_PLAY_Moderntelephoneringtone_MESSAGE0:"现代电话铃声",MPYTHON_AUDIO_PLAY_pullingtradish_MESSAGE0:"拔萝卜",MPYTHON_AUDIO_PLAY_twotigers_MESSAGE0:"两只老虎",MPYTHON_AUDIO_SET_VOLUME_HELPURL:"",MPYTHON_AUDIO_SET_VOLUME_MESSAGE0:"set Audio volume as %1",MPYTHON_AUDIO_SET_VOLUME_TOOLTIP:"",MPYTHON_BLUEBIT_GET_MOTORPEED_HELPURL:"",MPYTHON_BLUEBIT_GET_MOTORPEED_MESSAGE0:"expansion-board speed of DC motor %1",MPYTHON_BLUEBIT_GET_MOTORPEED_TOOLTIP:"",MPYTHON_M1M2_LED_ON_HELPURL:"",MPYTHON_M1M2_LED_ON_MESSAGE0:"expansion-board set led at %1 brightness %2",MPYTHON_M1M2_LED_ON_TOOLTIP:"",MPYTHON_M1M2_LED_OFF_HELPURL:"",MPYTHON_M1M2_LED_OFF_MESSAGE0:"expansion-board turn off led at %1",MPYTHON_M1M2_LED_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_NEWRFID_READ_MESSAGE0:"I2C RFID Read wallet data",MPYTHON_BLUEBIT_NEWRFID_READ_TOOLTIP:"Read block data, length 16 bytes",MPYTHON_BLUEBIT_NEWRFID_READ_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_WRITE_MESSAGE0:"I2C RFID Write wallet data%1",MPYTHON_BLUEBIT_NEWRFID_WRITE_TOOLTIP:"Write block data, length 16 bytes",MPYTHON_BLUEBIT_NEWRFID_WRITE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_MONEY_MESSAGE0:"I2C RFID wallet%1 money%2",MPYTHON_BLUEBIT_NEWRFID_MONEY_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_MONEY_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_INC_MESSAGE0:"Recharge",MPYTHON_BLUEBIT_NEWRFID_DEC_MESSAGE0:"Deduction fee",MPYTHON_BLUEBIT_NEWRFID_GET_MESSAGE0:"I2C RFID Get wallet balance",MPYTHON_BLUEBIT_NEWRFID_GET_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_GET_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_MESSAGE0:"I2C RFID Get serial number",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_GETSERIAL_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_SET_MESSAGE0:"I2C RFID Initialize Wallet",MPYTHON_BLUEBIT_NEWRFID_SET_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_SET_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_NEWRFID_SCAN_MESSAGE0:"I2C RFID scanning",MPYTHON_BLUEBIT_NEWRFID_SCAN_TOOLTIP:"",MPYTHON_BLUEBIT_NEWRFID_SCAN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/bluebit.html#rfid",MPYTHON_BLUEBIT_ULTRASONIC_MESSAGE0:"I2C ultrasonic value",MPYTHON_BLUEBIT_ULTRASONIC_TOOLTIP:"",MPYTHON_BLUEBIT_ULTRASONIC_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_READ_DIGITAL_MESSAGE0:"%1 on pin %2 be triggered",MPYTHON_BLUEBIT_READ_DIGITAL_TOOLTIP:"",MPYTHON_BLUEBIT_READ_DIGITAL_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_READ_ANALOG_MESSAGE0:"%1 on pin %2 analog value",MPYTHON_BLUEBIT_READ_ANALOG_TOOLTIP:"",MPYTHON_BLUEBIT_READ_ANALOG_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_ANALOG_MESSAGE0:"set LED on pin %2 value as %1",MPYTHON_BLUEBIT_SET_ANALOG_TOOLTIP:"",MPYTHON_BLUEBIT_SET_ANALOG_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_LINE_FOLLOWER_MESSAGE0:"tracking sensor on pin %1 detected as black",MPYTHON_BLUEBIT_LINE_FOLLOWER_TOOLTIP:"",MPYTHON_BLUEBIT_LINE_FOLLOWER_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_TRUE_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_TRUE_MESSAGE0:"turn on %1 on pin %2",MPYTHON_BLUEBIT_SET_TRUE_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FALSE_HELPURL:"http://wiki.labplus.cn/index.php?title=Bluebit",MPYTHON_BLUEBIT_SET_FALSE_MESSAGE0:"turn off %1 on pin %2",MPYTHON_BLUEBIT_SET_FALSE_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_ON_HELPURL:"http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",MPYTHON_BLUEBIT_VOICE_RECORD_ON_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_ON_MESSAGE0:"turn on recorder %1 %2 REC %3 PLAY %4",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_HELPURL:"http://wiki.labplus.cn/index.php?title=%E8%AF%AD%E9%9F%B3%E5%BD%95%E6%94%BE",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_VOICE_RECORD_OFF_MESSAGE0:"turn off recorder %1 REC %2 PLAY %3",MPYTHON_BLUEBIT_VOICE_RECORD_PLAY:"PLAY",MPYTHON_BLUEBIT_VOICE_RECORD_REC:"REC",STOP:("STOP","STOP"),MPYTHON_BLUEBIT_IR_RECEIVE:"infrared detection",MPYTHON_BLUEBIT_SOUND:"microphone",MPYTHON_BLUEBIT_LINE_FOLLOWER:"tracking sensor",MPYTHON_BLUEBIT_VIBRATION:"vibration sensor",MPYTHON_BLUEBIT_RFID:"RF card",MPYTHON_BLUEBIT_FINGERPRINT_SCANNER:"fingerprint scanner",MPYTHON_BLUEBIT_PIR:"PIR sensor",MPYTHON_BLUEBIT_MAGNETIC:"magnetic switch",MPYTHON_BLUEBIT_BUTTON:"button",MPYTHON_BLUEBIT_RELAY:"relay",MPYTHON_BLUEBIT_LIMIT_SWITCH:"limit switch",MPYTHON_BLUEBIT_FAN:"fan",MPYTHON_BLUEBIT_LASER:"laser",MPYTHON_BLUEBIT_NTC_TEMP:"NTC temperature",MPYTHON_BLUEBIT_WATER:"water level",MPYTHON_BLUEBIT_SOIL_MOISTURE:"soil moisture",MPYTHON_BLUEBIT_ROTATE_DIMMER:"rotate dimmer",MPYTHON_BLUEBIT_LINEAR_SLIDING_POTENTIOMETER:"sliding potentiometer",MPYTHON_BLUEBIT_ANALOG_LIGHT:"analog light",MPYTHON_BLUEBIT_LM35_TEMP:"LM35 temperature",MPYTHON_BLUEBIT_SMOKE:"smoke",MPYTHON_BLUEBIT_MOTOR_ON_CLOCKWISE:"corotation",MPYTHON_BLUEBIT_MOTOR_ON_ANTICLOCKWISE:"reverse",MPYTHON_BLUEBIT_READ_SOIL_HELPURL:"",MPYTHON_BLUEBIT_READ_SOIL_TOOLTIP:"New soil moisture",MPYTHON_BLUEBIT_READ_SOIL_MESSAGE0:"soil moisture(new)%1",MPYTHON_BLUEBIT_MOTOR_ON_HELPURL:"http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",MPYTHON_BLUEBIT_MOTOR_ON_TOOLTIP:"speed:Map -100~100 to -1023~1023",MPYTHON_BLUEBIT_MOTOR_ON_MESSAGE0:"turn on DC motor %1 speed %2 pin AIN1 %3 pin AIN2 %4",MPYTHON_BLUEBIT_MOTOR_OFF_HELPURL:"http://wiki.labplus.cn/index.php?title=%E7%94%B5%E6%9C%BA%E9%A9%B1%E5%8A%A8",MPYTHON_BLUEBIT_MOTOR_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_MOTOR_OFF_MESSAGE0:"stop DC motor %1 pin AIN1 %2 pin AIN2 %3",MPYTHON_BLUEBIT_SET_FAN_HELPURL:"",MPYTHON_BLUEBIT_SET_FAN_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FAN_MESSAGE0:"expansion-board turn on the fan %1",MPYTHON_LEFT:"LEFT",MPYTHON_RIGHT:"RIGHT",MPYTHON_BLUEBIT_SET_FAN_OFF_HELPURL:"",MPYTHON_BLUEBIT_SET_FAN_OFF_TOOLTIP:"",MPYTHON_BLUEBIT_SET_FAN_OFF_MESSAGE0:"expansion-board turn off the fan %1",MPYTHON_BLUEBIT_4BUTTON_HELPURL:"http://wiki.MPYTHON_BLUEBIT.cn/index.php?title=%E5%9B%9B%E6%8C%89%E9%94%AE",MPYTHON_BLUEBIT_4BUTTON_TOOLTIP:"",MPYTHON_BLUEBIT_4BUTTON_MESSAGE0:"Navigation button module pin %1 button %2 is pressed",BLUE:"A",GREEN:"B",RED:"C",YELLOW:"D",MPYTHON_BLUEBIT_JOYSTICK_HELPURL:"",MPYTHON_BLUEBIT_JOYSTICK_TOOLTIP:"",MPYTHON_BLUEBIT_JOYSTICK_MESSAGE0:"Thumb joystick pin A0 %1 pin A1 %2 %3 axis",MPYTHON_BLUEBIT_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_MOTOR_ON_I2C_TOOLTIP:"speed: 0~100",MPYTHON_BLUEBIT_MOTOR_ON_I2C_MESSAGE0:"expansion-board turn on DC motor %1 %2 speed %3",MPYTHON_BLUEBIT_BLUEBIT_MOTOR_OFF_I2C_HELPURL:"",MPYTHON_BLUEBIT_MOTOR_OFF_I2C_TOOLTIP:"speed: 0~100",MPYTHON_BLUEBIT_MOTOR_OFF_I2C_MESSAGE0:"expansion-board stop DC motor",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_TOOLTIP:"speed: -1023~1023",MPYTHON_BLUEBIT_CODED_THREE_MOTOR_ON_I2C_MESSAGE0:"Coded motor mode%1 dial code%2 M1 speed%3 M2 speed%4",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_HELPURL:"",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_TOOLTIP:"Stop Coding Motor Rotation",MPYTHON_BLUEBIT_CODED_STOP_MOTOR_ON_I2C_MESSAGE0:"Stop Coding Motor Rotation %1",MPYTHON_BLUEBIT_INIT_MIDI_HELPURL:"",MPYTHON_BLUEBIT_INIT_MIDI_MESSAGE0:"Initialize MIDI TX pin %1",MPYTHON_BLUEBIT_INIT_MIDI_TOOLTIP:"",MPYTHON_BLUEBIT_MIDI_VOLUME_HELPURL:"",MPYTHON_BLUEBIT_MIDI_VOLUME_MESSAGE0:"Set MIDI volume as %1",MPYTHON_BLUEBIT_MIDI_VOLUME_TOOLTIP:"volume range:0~127",MIDI_PIANO:"ACOUSTIC GRAND PIANO",MIDI_BRIGHTACOUSTICPIANO:"BRIGHT ACOUSTIC PIANO",MIDI_ELECTRICGRANDPIANO:"ELECTRIC GRAND PIANO",MIDI_HARPSICHORD:"HARPSICHORD",MIDI_CELESTA:"CELESTA",MIDI_GLOCKENSPIEL:"GLOCKENSPIEL",MIDI_MUSICALBOX:"MUSICAL BOX",MIDI_MARIMBA:"MARIMBA",MIDI_XYLOPHONE:"XYLOPHONE",MIDI_TUBULARBELL:"TUBULAR BELL",MIDI_DULCIMER:"DULCIMER",MIDI_VIBRAPHONE:"VIBRAPHONE",MIDI_ORGAN:"DRAWBAR ORGAN",MIDI_ACOUSTIC_GUITAR:"ACOUSTIC GUITAR",MIDI_ELECTRIC_GUITAR:"ELECTRIC GUITAR",MIDI_ACOUSTIC_BASS:"ACOUSTIC BASS",MIDI_STRING_ENSEMBLE:"STRING ENSEMBLE",MIDI_VIOLIN:"VIOLIN",MIDI_TRUMPET:"TRUMPET",MIDI_SAX:"SAX",MIDI_STEEL_DRUMS:"STEEL DRUMS",MIDI_LEAD:"LEAD",MIDI_PAD:"PAD",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_HELPURL:"",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_MESSAGE0:"Set MIDI instrument as %1",MPYTHON_BLUEBIT_MIDI_INSTRUMENT_TOOLTIP:"",MPYTHON_BLUEBIT_MIDI_PLAY_HELPURL:"",MPYTHON_BLUEBIT_MIDI_PLAY_MESSAGE0:"MIDI %1 tone %2",MPYTHON_BLUEBIT_MIDI_PLAY_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_MESSAGE0:"Set matrix`s brightness level as %1",MPYTHON_BLUEBIT_MATRIX_BRIGHTNESS_TOOLTIP:"brightness level:0~15",MPYTHON_BLUEBIT_MATRIX_FILL_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_FILL_MESSAGE0:"Set matrix %1",MPYTHON_BLUEBIT_MATRIX_FILL_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_BITMAP_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_BITMAP_MESSAGE0:"Set matrix %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20 %21 %22 %23 %24 %25 %26 %27 %28 %29 %30 %31 %32 %33 %34 %35 %36 %37 %38 %39 %40 %41 %42 %43 %44 %45 %46 %47 %48 %49 %50 %51 %52 %53 %54 %55 %56 %57 %58 %59 %60 %61 %62 %63 %64 %65 %66 %67 %68 %69 %70 %71 %72",MPYTHON_BLUEBIT_MATRIX_BITMAP_TOOLTIP:"",MPYTHON_BLUEBIT_MATRIX_SHOW_HELPURL:"",MPYTHON_BLUEBIT_MATRIX_SHOW_MESSAGE0:"The setting of matrix takes effect",MPYTHON_BLUEBIT_MATRIX_SHOW_TOOLTIP:"",MPYTHON_BLUEBIT_MP3_VOLUME_HELPURL:"",MPYTHON_BLUEBIT_MP3_VOLUME_MESSAGE0:"Set MP3 volume as %1",MPYTHON_BLUEBIT_MP3_VOLUME_TOOLTIP:"volume:0~30",MPYTHON_BLUEBIT_MP3_INIT_HELPURL:"",MPYTHON_BLUEBIT_MP3_INIT_MESSAGE0:"Init MP3 TX pin %1",MPYTHON_BLUEBIT_MP3_INIT_TOOLTIP:"The tx pin of the mPython board is connected to the RXI pin of the music module",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_HELPURL:"",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_MESSAGE0:"MP3 volume %1",MPYTHON_BLUEBIT_MP3_VOLUME_PLUS_TOOLTIP:"",MPYTHON_PLUS_1:"plus 1",MPYTHON_MINUS_1:"minus 1",MPYTHON_BLUEBIT_MP3_PLAY_SONG_HELPURL:"",MPYTHON_BLUEBIT_MP3_PLAY_SONG_MESSAGE0:"Mp3 plays song with order %1",MPYTHON_BLUEBIT_MP3_PLAY_SONG_TOOLTIP:"",PAUSE:"PAUSE",PLAY:"GO ON",PLAYNEXT:"NEXT SONG",PLAYPREV:"LAST SONG",MPYTHON_BLUEBIT_MP3_CMD_HELPURL:"",MPYTHON_BLUEBIT_MP3_CMD_MESSAGE0:"MP3 play %1",MPYTHON_BLUEBIT_MP3_CMD_TOOLTIP:"",LABPLUS_USB_SWITCH_ON:"ON",LABPLUS_USB_SWITCH_OFF:"OFF",MPYTHON_BLUEBIT_MP3_SINGLELOOP_HELPURL:"",MPYTHON_BLUEBIT_MP3_SINGLELOOP_MESSAGE0:"MP3 single-loop mode %1",MPYTHON_BLUEBIT_MP3_SINGLELOOP_TOOLTIP:"",MPYTHON_BLUEBIT_EXTIO_IOMODE_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_IOMODE_MESSAGE0:"Set EXT IO module`s IO %2 as %1",MPYTHON_BLUEBIT_EXTIO_IOMODE_TOOLTIP:"IO: 0~7",LABPLUS_COMPITITION_INIT_EXTENDED_PINS_OUTPUT:"OUTPUT",LABPLUS_COMPITITION_INIT_EXTENDED_PINS_INPUT:"INPUT",MPYTHON_BLUEBIT_EXTIO_READIO_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_READIO_MESSAGE0:"Value of EXT IO at IO %1",MPYTHON_BLUEBIT_EXTIO_READIO_TOOLTIP:"",MPYTHON_BLUEBIT_EXTIO_WRITEIO_HELPURL:"",MPYTHON_BLUEBIT_EXTIO_WRITEIO_MESSAGE0:"Set EXT IO module`s IO %2 as %1",MPYTHON_BLUEBIT_EXTIO_WRITEIO_TOOLTIP:"",MPYTHON_LCD_OBJECT_HELPURL:"",MPYTHON_LCD_OBJECT_MESSAGE0:"initialise LCD1602",MPYTHON_LCD_OBJECT_TOOLTIP:"",MPYTHON_LCD_PRINT_HELPURL:"",MPYTHON_LCD_PRINT_MESSAGE0:"LCD1602 display %1",MPYTHON_LCD_PRINT_TOOLTIP:"",MPYTHON_LCD_HOME_HELPURL:"",MPYTHON_LCD_HOME_MESSAGE0:"LCD1602 cursor returns to the origin",MPYTHON_LCD_HOME_TOOLTIP:"",MPYTHON_LCD_CURSOR_HELPURL:"",MPYTHON_LCD_CURSOR_MESSAGE0:"LCD1602 cursor %1",MPYTHON_LCD_CURSOR_TOOLTIP:"",MPYTHON_LCD_SET_CURSOR_HELPURL:"",MPYTHON_LCD_SET_CURSOR_MESSAGE0:"LCD1602 starts with row %2 column %1",MPYTHON_LCD_SET_CURSOR_TOOLTIP:"Row and column count from 0",MPYTHON_LCD_CLEAR_HELPURL:"",MPYTHON_LCD_CLEAR_MESSAGE0:"LCD1602 clear",MPYTHON_LCD_CLEAR_TOOLTIP:"",MPYTHON_LCD_CURSOR_BLINK:"BLINK",MPYTHON_LCD_CURSOR_NO_BLINK:"NO BLINK",MPYTHON_LEFT_TO_RIGHT:"LEFT TO RIGHT",MPYTHON_RIGHT_TO_LEFT:"RIGHT TO LEFT",MPYTHON_LCD_TEXT_DIRECTION_HELPURL:"",MPYTHON_LCD_TEXT_DIRECTION_MESSAGE0:"LCD1602 text direction %1",MPYTHON_LCD_TEXT_DIRECTION_TOOLTIP:"",MPYTHON_LCD_MOVE_HELPURL:"",MPYTHON_LCD_MOVE_MESSAGE0:"LCD1602 scrolls a column to %1",MPYTHON_LCD_MOVE_TOOLTIP:"",MPYTHON_IR_TRANS_HELPURL:"",MPYTHON_IR_TRANS_MESSAGE0:"infrared transmission of string with one byte length %1 tx pin %2",MPYTHON_IR_TRANS_TOOLTIP:"string with one byte length: 'A', 'b', '1' and so on",OUTPUT_PIN_HELPURL:"",OUTPUT_PIN_MESSAGE0:"%1",OUTPUT_PIN_TOOLTIP:"",INPUT_PIN_HELPURL:"",INPUT_PIN_MESSAGE0:"%1",INPUT_PIN_TOOLTIP:"",READ_ANALOG_PIN_HELPURL:"",READ_ANALOG_PIN_MESSAGE0:"%1",READ_ANALOG_PIN_TOOLTIP:"",SET_DIGITAL_HELPURL:"",SET_DIGITAL_MESSAGE0:"%1",SET_DIGITAL_TOOLTIP:"",SET_ANALOG_HELPURL:"",SET_ANALOG_MESSAGE0:"%1",SET_ANALOG_TOOLTIP:"",ALL_PIN_HELPURL:"",ALL_PIN_MESSAGE0:"%1",ALL_PIN_TOOLTIP:"",PWM_PIN_HELPURL:"",PWM_PIN_MESSAGE0:"%1",PWM_PIN_TOOLTIP:"",DH11_HUM_TEM_PIN_HELPURL:"",DH11_HUM_TEM_PIN_MESSAGE0:"%1",DH11_HUM_TEM_PIN_TOOLTIP:"",UART_TX_PIN_HELPURL:"",UART_TX_PIN_MESSAGE0:"%1",UART_TX_PIN_TOOLTIP:"",UART_RX_PIN_HELPURL:"",UART_RX_PIN_MESSAGE0:"%1",UART_RX_PIN_TOOLTIP:"",I2C_PIN_HELPURL:"",I2C_PIN_MESSAGE0:"%1",I2C_PIN_TOOLTIP:"",MQTT_COMMON_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_COMMON_SETUP_MESSAGE0:"MQTT %1 client_id %2 server %3 port %4 user %5 password %6 keepalive %7",MQTT_COMMON_SETUP_TOOLTIP:"",MQTT_TENCENT_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_TENCENT_SETUP_MESSAGE0:"MQTT Tencent IoT %1 Server %2 Port %3 AppId %4 Device %5 -- Output -- %6 ReportTopic %7 ControlTopic %8",MQTT_TENCENT_SETUP_TOOLTIP:"",MQTT_TENCENT_SETUPS_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient",MQTT_TENCENT_SETUPS_MESSAGE0:"MQTT Tencent IoT %1 Server %2 Port %3 AppId %4 Device %5 -- Output -- %6 ReportTopic %7 ControlTopic %8",MQTT_TENCENT_SETUPS_TOOLTIP:"",MQTT_SETUP_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_SETUP_MESSAGE0:"MQTT-Easy IoT %1 Server %2 Client ID %5 Iot_id %3 Iot_pwd %4",MQTT_SETUP_TOOLTIP:"",MQTT_CONNECT_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_CONNECT_MESSAGE0:"connect to MQTT",MQTT_CONNECT_TOOLTIP:"",MQTT_PUBLISH_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_PUBLISH_MESSAGE0:"publish %1 to topic %2",MQTT_PUBLISH_TOOLTIP:"",MQTT_REC_FROM_TOPIC_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_REC_FROM_TOPIC_MESSAGE0:"when recieved %2 from topic %1",MQTT_REC_FROM_TOPIC_TOOLTIP:"",MQTT_RECEIVE_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_RECEIVE_MESSAGE0:"when recieved %2 from topic %1",MQTT_RECEIVE_TOOLTIP:'Parameter "topic" only accepts variable',MQTT_RECEIVED_MESSAGE0:"when recieved message from topic %1",MQTT_MESSAGE_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_MESSAGE_MESSAGE0:"message from MQTT",MQTT_MESSAGE_TOOLTIP:"",MQTT_WAIT_MSG_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_WAIT_MSG_MESSAGE0:"wait for topic message in %1 mode",MQTT_WAIT_MSG_TOOLTIP:"It is recommended to run in 'while True'",MQTT_DISCONNECT_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/advance/iot/mqtt.html#id2",MQTT_DISCONNECT_MESSAGE0:"disconnect from MQTT",MQTT_DISCONNECT_TOOLTIP:"",MQTT_LAST_WILL_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/umqtt.simple.html?highlight=mqtt#MQTTClient.set_last_will",MQTT_LAST_WILL_MESSAGE0:"set MQTT topic %2 last will message as %1",MQTT_LAST_WILL_TOOLTIP:'Set the MQTT "last will" message. Should be called before connect().',MPYTHON_SIOT_CONNECT_HELPURL:"",MPYTHON_SIOT_CONNECT_TOOLTIP:"",MPYTHON_SIOT_CONNECT_MESSAGE0:"SIoT setting %1 client_id %2 server %3 user %4 password %5",MPYTHON_SIOT_ISCONNECTED_HELPURL:"",MPYTHON_SIOT_ISCONNECTED_TOOLTIP:"",MPYTHON_SIOT_ISCONNECTED_MESSAGE0:"SIoT is connected ?",MPYTHON_SIOT_SUBSCRIBE_HELPURL:"",MPYTHON_SIOT_SUBSCRIBE_TOOLTIP:"",MPYTHON_SIOT_SUBSCRIBE_MESSAGE0:"SIoT subscribe",MPYTHON_SIOT_SUBSCRIBE_EMPTY_TITLE:"click the left star to subscribe SIoT topic",MPYTHON_SIOT_SUBSCRIBE_INPUT_WITH:"subscribe SIoT Topic1",MPYTHON_SIOT_SUBSCRIBE_ITEM_TITLE:"Topic",MPYTHON_SIOT_SUBSCRIBE_ITEM_TOOLTIP:"",MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TITLE_ADD:"add up to 5 topics",MPYTHON_SIOT_SUBSCRIBE_CONTAINER_TOOLTIP:"",MPYTHON_SIOT_DISCONNECT_HELPURL:"",MPYTHON_SIOT_DISCONNECT_TOOLTIP:"",MPYTHON_SIOT_DISCONNECT_MESSAGE0:"SIoT disconnect",MPYTHON_SIOT_MESSAGE_HELPURL:"",MPYTHON_SIOT_MESSAGE_TOOLTIP:"",MPYTHON_SIOT_MESSAGE_MESSAGE0:"SIoT message",MPYTHON_SIOT_TOPIC1:"Topic1",MPYTHON_SIOT_TOPIC2:"Topic2",MPYTHON_SIOT_TOPIC3:"Topic3",MPYTHON_SIOT_TOPIC4:"Topic4",MPYTHON_SIOT_TOPIC5:"Topic5",MPYTHON_SIOT_PUBLISH_HELPURL:"",MPYTHON_SIOT_PUBLISH_TOOLTIP:"",MPYTHON_SIOT_PUBLISH_MESSAGE0:"SIoT publish message %1 to %2",MPYTHON_SIOT_PUBLISH_TO_MESSAGE0:"SIoT publish message %1 to topic %2",MPYTHON_SIOT_RECEIVE_HELPURL:"",MPYTHON_SIOT_RECEIVE_TOOLTIP:"",MPYTHON_SIOT_RECEIVE_MESSAGE0:"when SIoT received message from %1 %2 do %3",MPYTHON_SIOT_RECEIVE_FROM_MESSAGE0:"when SIoT received message from topic %1 %2 do %3",MPYTHON_IR_RECV_HELPURL:"",MPYTHON_IR_RECV_MESSAGE0:"infrared received int at rx pin %1",MPYTHON_IR_RECV_TOOLTIP:"The first time the receive is always empty",MPYTHON_BLUEBIT_OLED_PRINT_HELPURL:"",MPYTHON_BLUEBIT_OLED_PRINT_MESSAGE0:"bluebit OLED show %1 at x %2 y %3",MPYTHON_BLUEBIT_OLED_PRINT_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_INIT_HELPURL:"",MPYTHON_BLUEBIT_OLED_INIT_MESSAGE0:"bluebit OLED init at tx %1 rx %2",MPYTHON_BLUEBIT_OLED_INIT_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_CLEAR_HELPURL:"",MPYTHON_BLUEBIT_OLED_CLEAR_MESSAGE0:"bluebit OLED clear",MPYTHON_BLUEBIT_OLED_CLEAR_TOOLTIP:"",MPYTHON_BLUEBIT_OLED_BMP_HELPURL:"",MPYTHON_BLUEBIT_OLED_BMP_MESSAGE0:"bluebit OLED show image x %1 y %2 width %3 height %4 with hex image data %5",MPYTHON_BLUEBIT_OLED_BMP_TOOLTIP:"",MICROBIT_GESTURE_SHAKE:"shake",MICROBIT_GESTURE_UP:"up",MICROBIT_GESTURE_DOWN:"down",MICROBIT_GESTURE_LEFT:"left",MICROBIT_GESTURE_RIGHT:"Right",MICROBIT_GESTURE_FACE_UP:"upward",MICROBIT_GESTURE_FACE_DOWN:"down",MICROBIT_GESTURE_FREEFAIL:"free fall",MICROBIT_IMAGE_HEART:"heart",MICROBIT_IMAGE_HEART_SMALL:"heart (small)",MICROBIT_IMAGE_HAPPY:"Happy",MICROBIT_IMAGE_SMILE:"Smile Face",MICROBIT_IMAGE_SAD:"sad",MICROBIT_IMAGE_CONFUSED:"confusion",MICROBIT_IMAGE_ANGRY:"angry",MICROBIT_IMAGE_ASLEEP:"Sleep",MICROBIT_IMAGE_SUPRISED:"surprise",MICROBIT_IMAGE_SILLY:"Stupid",MICROBIT_IMAGE_FABULOUS:"Wonderful",MICROBIT_IMAGE_MEH:"Boredom",MICROBIT_IMAGE_YES:"Yes",MICROBIT_IMAGE_NO:"No",MICROBIT_IMAGE_CLOCK12:"12 clock",MICROBIT_IMAGE_CLOCK11:"11 clock",MICROBIT_IMAGE_CLOCK10:"10 clock",MICROBIT_IMAGE_CLOCK9:"9 clock",MICROBIT_IMAGE_CLOCK8:"8 clock",MICROBIT_IMAGE_CLOCK7:"7 clock",MICROBIT_IMAGE_CLOCK6:"6 clock",MICROBIT_IMAGE_CLOCK5:"5 clock",MICROBIT_IMAGE_CLOCK4:"4 clock",MICROBIT_IMAGE_CLOCK3:"3 clock",MICROBIT_IMAGE_CLOCK2:"2 clock",MICROBIT_IMAGE_CLOCK1:"1 clock",MICROBIT_IMAGE_ARROW_N:"Arrow-North",MICROBIT_IMAGE_ARROW_NE:"Arrow-Northeast",MICROBIT_IMAGE_ARROW_E:"arrow-east",MICROBIT_IMAGE_ARROW_SE:"arrow-southeast",MICROBIT_IMAGE_ARROW_S:"Arrow-South",MICROBIT_IMAGE_ARROW_SW:"arrow-southwest",MICROBIT_IMAGE_ARROW_W:"Arrow-West",MICROBIT_IMAGE_ARROW_NW:"Arrow-Northwest",MICROBIT_IMAGE_TRIANGLE:"triangle",MICROBIT_IMAGE_TRIANGLE_LEFT:"left triangle",MICROBIT_IMAGE_CHESSBOARD:"chessboard",MICROBIT_IMAGE_DIAMOND:"diamond",MICROBIT_IMAGE_DIAMOND_SMALL:"diamond (small)",MICROBIT_IMAGE_SQUARE:"square",MICROBIT_IMAGE_SQUARE_SMALL:"Square (small)",MICROBIT_IMAGE_RABBIT:"Rabbit",MICROBIT_IMAGE_COW:"cow",MICROBIT_IMAGE_MUSIC_CROTCHET:"quarter note",MICROBIT_IMAGE_MUSIC_QUAVER:"octave",MICROBIT_IMAGE_MUSIC_QUAVERS:"tremolo",MICROBIT_IMAGE_PITCHFORK:"fork",MICROBIT_IMAGE_XMAS:"Christmas Tree",MICROBIT_IMAGE_PACMAN:"Bean Eater",MICROBIT_IMAGE_TARGET:"target",MICROBIT_IMAGE_TSHIRT:"T-shirt",MICROBIT_IMAGE_ROLLERSKATE:"Roller Skating",MICROBIT_IMAGE_DUCK:"duck",MICROBIT_IMAGE_HOUSE:"House",MICROBIT_IMAGE_TORTOISE:"tortoise",MICROBIT_IMAGE_BUTTERFLY:"Butterfly",MICROBIT_IMAGE_STICKFIGURE:"line drawing",MICROBIT_IMAGE_GHOST:"Ghost",MICROBIT_IMAGE_SWORD:"Sword",MICROBIT_IMAGE_GIRAFFE:"Giraffe",MICROBIT_IMAGE_SKULL:"Head",MICROBIT_IMAGE_UMBRELLA:"umbrella",MICROBIT_IMAGE_SNAKE:"snake",MICROBIT_IMAGE_ALL_CLOCKS:"All Clocks",MICROBIT_IMAGE_ALL_ARROWS:"All arrows",mpython_bme280_hum_tem_pre_MESSAGE0:("Meteorological %1","%1"),mpython_bme280_hum_tem_pre_TOOLTIP:("%","Air pressure unit is 'Pa', temperature unit is 'Celsius', ambient humidity unit is '%'"),mpythonbox_sound_MESSAGE0:"Sound value",mpythonbox_sound_TOOLTIP:"0~4095。",mpythonbox_sound_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython.html",MPYTHONBOX_SLIDER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_SLIDER_MESSAGE0:"Slide bar",MPYTHONBOX_SLIDER_TOOLTIP:"0~4095。",MPYTHONBOX_5BUTTON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_5BUTTON_MESSAGE0:"Five way button%1",MPYTHONBOX_5BUTTON_TOOLTIP:"",MPYTHONBOX_MOTOR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython-box",MPYTHONBOX_MOTOR_MESSAGE0:"Motor speed%1",MPYTHONBOX_MOTOR_TOOLTIP:"",MPYTHONBOX_ULTRASONIC_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",MPYTHONBOX_ULTRASONIC_MESSAGE0:"Ultrasonic",MPYTHONBOX_ULTRASONIC_TOOLTIP:"3~340CM",MPYTHONBOX_THEHUMANBODYINFRARE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mPythonBox/lib/mpython_box.html#mpython_box.get_key",MPYTHONBOX_THEHUMANBODYINFRARE_MESSAGE0:"Human body infrared",MPYTHONBOX_THEHUMANBODYINFRARE_TOOLTIP:"",MPYTHONBOX_RGB_pixel_HELPURL:"",MPYTHONBOX_RGB_pixel_MESSAGE0:"Set column%1 line%2 R%3 G%4 B%5",MPYTHONBOX_RGB_pixel_TOOLTIP:"",MPYTHONBOX_RGB_get_pixel_HELPURL:"",MPYTHONBOX_RGB_get_pixel_MESSAGE0:"Returns the RGB color of column%1, line%2",MPYTHONBOX_RGB_get_pixel_TOOLTIP:"",MPYTHONBOX_RGB_ImageText_HELPURL:"",MPYTHONBOX_RGB_ImageText_MESSAGE0:"Scroll Display Text%1 Speed%2",MPYTHONBOX_RGB_ImageText_TOOLTIP:"",MPYTHONBOX_RGB_SetImage_HELPURL:("",""),MPYTHONBOX_RGB_SetImage_TOOLTIP:("",""),MPYTHONBOX_RGB_SetImage_MESSAGE0:("Create image %1 row1 %2 row2 %3 row3 %4 row4 %5 row5 %6","Create an image %1 The first line%2, the second line%3, the third line%4, the fourth line%5, the fifth line%6"),MPYTHONBOX_RGB_Image_HELPURL:"",MPYTHONBOX_RGB_Image_MESSAGE0:"According to the image%1",MPYTHONBOX_RGB_Image_TOOLTIP:"According to the image",MPYTHONBOX_RGB_SHOW_IMAGE_MESSAGE0:"Display image/text %1",MPYTHONBOX_RGB_SHOW_IMAGE_TOOLTIP:"",MPYTHONBOX_RGB_SHOW_IMAGE_HELPURL:"",MPYTHONBOX_RGB_SHOW_IMAGEImport_MESSAGE0:"Display image %1",MPYTHONBOX_RGB_SHOW_IMAGEImport_TOOLTIP:"Display image。",MPYTHONBOX_RGB_SHOW_IMAGEImport_HELPURL:"",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_MESSAGE0:"Copy image %1",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_TOOLTIP:"Copy image",MPYTHONBOX_RGB_SHOW_IMAGE_Copy_HELPURL:"",MPYTHONBOX_RGB_ImageCot_HELPURL:"",MPYTHONBOX_RGB_ImageCot_MESSAGE0:"Cut image%1 column%2 rows%3 width%4 high%5",MPYTHONBOX_RGB_ImageCot_TOOLTIP:"Cut image",MPYTHONBOX_RGB_IMAGE_BUILTINS_MESSAGE0:"Built in image %1",MPYTHONBOX_RGB_IMAGE_BUILTINS_TOOLTIP:"Select a built-in image.",MPYTHONBOX_RGB_IMAGE_BUILTINS_HELPURL:"",MPYTHONBOX_RGB_IMAGE_SHIFT_MESSAGE0:"Translation image %1 %2 %3 ",MPYTHONBOX_RGB_IMAGE_SHIFT_TOOLTIP:"Move the image in a specific direction and return the result of the move.",MPYTHONBOX_RGB_IMAGE_SHIFT_HELPURL:"",MPYTHONBOX_RGB_clear_HELPURL:"",MPYTHONBOX_RGB_clear_MESSAGE0:"Turn off all RGB",MPYTHONBOX_RGB_clear_TOOLTIP:"",MPYTHONBOX_RGB_pixel_return_HELPURL:"",MPYTHONBOX_RGB_pixel_return_MESSAGE0:"Return %1 column %2 line colour",MPYTHONBOX_RGB_pixel_return_TOOLTIP:"Return to the number of columns, row RGB color",MPYTHONBOX_TRIAXIAL_ACCELERATION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_TRIAXIAL_ACCELERATION_MESSAGE0:"%1Triaxial acceleration",MPYTHONBOX_TRIAXIAL_ACCELERATION_TOOLTIP:"Unit g, range-2~+2g。",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_MESSAGE0:"%1Triaxial angular velocity",MPYTHONBOX_TRIAXIAL_AUGULAR_VELOCITY_TOOLTIP:"range±500°/seconds",MPYTHONBOX_EULER_ANGLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_EULER_ANGLE_MESSAGE0:"%1Euler Angle",MPYTHONBOX_EULER_ANGLE_TOOLTIP:"Returns the current euler Angle(Pitch,Roll,Yaw),Unit Angle",MPYTHONBOX_QUATERNION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython.html",MPYTHONBOX_QUATERNION_MESSAGE0:"%1quaternions",MPYTHONBOX_QUATERNION_TOOLTIP:"Returns the current quaternion(w,x,y,z)",MPYTHONBOX_CAMERA_LED_HELPURL:"",MPYTHONBOX_CAMERA_LED_MESSAGE0:"camear light %1",MPYTHONBOX_CAMERA_LED_TOOLTIP:"",LIST_FIRST_INDEX_HELPURL:"",LIST_FIRST_INDEX_MESSAGE0:"Location of item%1 in list%2 %3",LIST_FIRST_INDEX_TOOLTIP:"",MPYTHON_AI_LCD_INIT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.init",MPYTHON_AI_LCD_INIT_MESSAGE0:"Screen Initialization ",MPYTHON_AI_LCD_INIT_TOOLTIP:"",MPYTHON_AI_SENSOR_RESET_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%8D%95%E7%9B%AE%E6%91%84%E5%83%8F%E5%A4%B4%E9%87%8D%E7%BD%AE%E5%87%BD%E6%95%B0",MPYTHON_AI_SENSOR_RESET_MESSAGE0:"Initialize the camera",MPYTHON_AI_SENSOR_RESET_TOOLTIP:"",MPYTHON_AI_SENSOR_ENABLE_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",MPYTHON_AI_SENSOR_ENABLE_MESSAGE0:"Camera%1",MPYTHON_AI_SENSOR_ENABLE_TOOLTIP:"",MPYTHON_AI_LCD_TEXT_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/lcd.html#%E4%BE%8B%E7%A8%8B-1%EF%BC%9A-%E6%98%BE%E7%A4%BA%E8%8B%B1%E6%96%87",MPYTHON_AI_LCD_TEXT_MESSAGE0:"Display text x %1 y %2 content %3",MPYTHON_AI_LCD_TEXT_TOOLTIP:"",MPYTHON_AI_SENSOR_SKIP_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%B7%B3%E5%B8%A7",MPYTHON_AI_SENSOR_SKIP_MESSAGE0:"The number of frames skipped by the camera %1 Millisecond %2 ",MPYTHON_AI_SENSOR_SKIP_TOOLTIP:"",MPYTHON_AI_SENSOR_RETURN_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E5%88%86%E8%BE%A8%E7%8E%87%E5%AE%BD%E5%BA%A6",MPYTHON_AI_SENSOR_RETURN_MESSAGE0:"测 摄像头 获取%1",MPYTHON_AI_SENSOR_RETURN_TOOLTIP:"",MPYTHON_AI_SENSOR_SETS_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E5%AF%B9%E6%AF%94%E5%BA%A6",MPYTHON_AI_SENSOR_SETS_MESSAGE0:"Camera set %1 as %2",MPYTHON_AI_SENSOR_SETS_TOOLTIP:"",MPYTHON_AI_SENSOR_AUTO_GAIN_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",MPYTHON_AI_SENSOR_AUTO_GAIN_MESSAGE0:"Automatic gain of camera%1",MPYTHON_AI_SENSOR_AUTO_GAIN_TOOLTIP:"",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%A2%9E%E7%9B%8A",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_MESSAGE0:"Camera White Balance%1",MPYTHON_AI_SENSOR_AUTO_WHITEBAL_TOOLTIP:"",MPYTHON_AI_SENSOR_LEVEL_MI_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%AE%BE%E7%BD%AE%E6%B0%B4%E5%B9%B3%E9%95%9C%E5%83%8F",MPYTHON_AI_SENSOR_LEVEL_MI_MESSAGE0:"Camera %1 %2",MPYTHON_AI_SENSOR_LEVEL_MI_TOOLTIP:"",MPYTHON_AI_LCD_DISPLAY_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_DISPLAY_MESSAGE0:"Screen display takes effect",MPYTHON_AI_LCD_DISPLAY_TOOLTIP:"",MPYTHON_AI_LCD_DISPLAY_SIZE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_DISPLAY_SIZE_MESSAGE0:"Image display takes effect x%1 y%2 wide%3 high%4",MPYTHON_AI_LCD_DISPLAY_SIZE_TOOLTIP:"",MPYTHON_AI_SENSOR_IMAGES_HELPURL:"https://maixpy.sipeed.com/zh/libs/machine_vision/sensor.html#%E8%8E%B7%E5%8F%96%E5%9B%BE%E5%83%8F",MPYTHON_AI_SENSOR_IMAGES_MESSAGE0:"Camera captures images",MPYTHON_AI_SENSOR_IMAGES_TOOLTIP:"",MPYTHON_AI_IMAGE_FACEDETECT_HELPURL:"https://maixpy.sipeed.com/zh/libs/Maix/kpu.html#%E8%BF%90%E8%A1%8Cyolo2%E7%BD%91%E7%BB%9C",MPYTHON_AI_IMAGE_FACEDETECT_MESSAGE0:"Face recognition",MPYTHON_AI_IMAGE_FACEDETECT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_REC_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_REC_MESSAGE0:"Rectangular%1 x%3 y%4 width%5 high%6 color R%7 G%8 B%9 coarsening%2",MPYTHON_AI_LCD_SHOW_REC_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_STRING_MESSAGE0:"line x1%1 y1%2 reachx2%3 y2%4 Color isR%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_STRING_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_STRING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_CLEAR_ALL_MESSAGE0:"Clear screen display",MPYTHON_AI_LCD_CLEAR_ALL_TOOLTIP:"",MPYTHON_AI_LCD_CLEAR_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_return_colour_MESSAGE0:"LCD Return x%1 y%2 colour",MPYTHON_AI_LCD_return_colour_TOOLTIP:"",MPYTHON_AI_LCD_return_colour_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_CIRCLE_MESSAGE0:"circular%1 x%2 y%3 radius%4 colour R%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_CIRCLE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_CIRCLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_TEXT_MOST_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_TEXT_MOST_MESSAGE0:"Display text x %1 y %2 content %3 colourR%4 G%5 B%6 size%7",MPYTHON_AI_LCD_TEXT_MOST_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_TEN_STRING_MESSAGE0:"Cross line x%1 y%2 colourR%3 G%4 B%5 size%6 Thickening%7",MPYTHON_AI_LCD_SHOW_TEN_STRING_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_TEN_STRING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_ARROWS_MESSAGE0:"Arrow x1%1 y1%2 x2%3 y2%4 colourR%5 G%6 B%7 Thickening%8",MPYTHON_AI_LCD_SHOW_ARROWS_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ARROWS_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.draw_rectangle",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_HELPURL:".https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.display",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_MESSAGE0:"Display image path%1",MPYTHON_AI_LCD_SHOW_IMAGE_PIRCTURE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.invert",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_MESSAGE0:"Image conversion to%1",MPYTHON_AI_LCD_SHOW_IMAGE_HEAT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.linpolar",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_MESSAGE0:"Image from Cartesian coordinates to%1 Reprojection of coordinates %2",MPYTHON_AI_LCD_SHOW_IMAGE_DESCARTES_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.dilate",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_MESSAGE0:"Image Expansion Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_EROSION_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.midpoint",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_MESSAGE0:"Image Point Filtering Level%1 Wave filtering%2",MPYTHON_AI_LCD_SHOW_IMAGE_MIDDLE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.modehttps://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mode",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_MESSAGE0:"Image Modal Filtering Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_MODE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.mean",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_MESSAGE0:"Image Fuzzy Filtering Level%1",MPYTHON_AI_LCD_SHOW_IMAGE_INDISTINCT_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.cartoon",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_MESSAGE0:"Image Cartoonization Level%1 Initial Pixel Difference%2 Adjacent pixel difference%3",MPYTHON_AI_LCD_SHOW_IMAGE_CARTOON_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_IMAGE_3D_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.rotation_corr",MPYTHON_AI_LCD_SHOW_IMAGE_3D_MESSAGE0:"Image 3D Rotation Up and Down%1 Rotate left and right%2 degrees%3 or so move%4 up and down move%5 zoom%6",MPYTHON_AI_LCD_SHOW_IMAGE_3D_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ECTYPE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.copy",MPYTHON_AI_LCD_SHOW_ECTYPE_MESSAGE0:"Save a copy of the image to the SD card image name%1 Image display area x%2 y%3 wide%4 high%5",MPYTHON_AI_LCD_SHOW_ECTYPE_TOOLTIP:"",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.save",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_MESSAGE0:"Create a copy of the image object to copy the image area x%1 y%2 wide%3 high%4",MPYTHON_AI_LCD_SHOW_ECTYPE_SHOW_TOOLTIP:"",MPYTHON_AI2_20CLASS_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_20CLASS_TRACKING_MESSAGE0:"20 kinds of recognition",MPYTHON_AI2_20CLASS_TRACKING_TOOLTIP:"",MPYTHON_AI2_NUMBER_DISCERN_HELPURL:("https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model","https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model"),MPYTHON_AI2_NUMBER_DISCERN_MESSAGE0:("Handwritten Number Recognition",'set the training model to "Number ID"'),MPYTHON_AI2_NUMBER_DISCERN_TOOLTIP:("","Select training model handwritten numerals"),MPYTHON_AI_LCD_PIXEL_COLOUR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html?highlight=get_pixel#mpython_classroom_kit.image.set_pixel",MPYTHON_AI_LCD_PIXEL_COLOUR_MESSAGE0:"screen x%1 y%2 Display color R%3 G%4 B%5",MPYTHON_AI_LCD_PIXEL_COLOUR_TOOLTIP:"",MPYTHON_AI_LCD_COLOUR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.lcd.clear",MPYTHON_AI_LCD_COLOUR_MESSAGE0:"Screen Initialization Display Color R%1 G%2 B%3",MPYTHON_AI_LCD_COLOUR_TOOLTIP:"",MPYTHON_AI_SENSOR_PATTERN_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.camera.set_pixformat",MPYTHON_AI_SENSOR_PATTERN_MESSAGE0:"Initialize the camera, set pixel mode as %1",MPYTHON_AI_SENSOR_PATTERN_TOOLTIP:"",MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_HELPURL:("",""),MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_MESSAGE0:("Tracking color display%1","Trace color display%1"),MPYTHON_AI_TRACE_CILOR_DISPLAYTEN_TOOLTIP:("",""),MPYTHON_AI2_FACE_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_FACE_TRACKING_MESSAGE0:'set the training model to "Face ID"',MPYTHON_AI2_FACE_TRACKING_TOOLTIP:"It can recognize and track faces, display face size and so on",MPYTHON_AI2_PHOTOGRAPH_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_PHOTOGRAPH_TRACKING_MESSAGE0:'call the camera for "Face ID"',MPYTHON_AI2_PHOTOGRAPH_TRACKING_TOOLTIP:"It can recognize and track faces, display face size and so on",MPYTHON_AI2_RESULT_FACE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_MESSAGE0:'get the recognition result of "Face ID"',MPYTHON_AI2_RESULT_FACE_TOOLTIP:"After acquisition and identification All the parameters",MPYTHON_AI2_RESULT_FACE_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_X_MESSAGE0:'get the X coordinate of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_X_TOOLTIP:"After acquisition and identification x coordinates",MPYTHON_AI2_RESULT_FACE_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_Y_MESSAGE0:'get the Y coordinate of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_Y_TOOLTIP:"After acquisition and identification y coordinates",MPYTHON_AI2_RESULT_FACE_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_W_MESSAGE0:'get the width of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_W_TOOLTIP:"After acquisition and identification width",MPYTHON_AI2_RESULT_FACE_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_H_MESSAGE0:'get the height of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_H_TOOLTIP:"After acquisition and identification height",MPYTHON_AI2_RESULT_FACE_VALUE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_VALUE_MESSAGE0:'get the confidence of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_VALUE_TOOLTIP:"After acquisition and identification Confidence",MPYTHON_AI2_RESULT_FACE_OBJNUM_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_FACE_OBJNUM_MESSAGE0:'get the object count of the "Face ID" result',MPYTHON_AI2_RESULT_FACE_OBJNUM_TOOLTIP:"After acquisition and identification number",MPYTHON_AI2_20class_TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_20class_TRACKING_MESSAGE0:'set the training model to "20 Class ID"',MPYTHON_AI2_20class_TRACKING_TOOLTIP:"Can identify 20 types, respectively are 0-19 for aircraft, bicycle, bird, boat, bottle, bus, car, cat, chair, cow, dining table, dog, house, motorcycle, person, potted plant, sheep, sofa, train, TV",MPYTHON_AI2_PHOTOGRAPH_20TRACKING_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_PHOTOGRAPH_20TRACKING_MESSAGE0:'call the camera for "20 Class ID"',MPYTHON_AI2_PHOTOGRAPH_20TRACKING_TOOLTIP:"",MPYTHON_AI2_RESULT_20CLASS_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_MESSAGE0:'get the recognition result of "20 Class ID"',MPYTHON_AI2_RESULT_20CLASS_TOOLTIP:"After acquisition and identification All the parameters",MPYTHON_AI2_RESULT_20CLASS_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_X_MESSAGE0:'get the X coordinate of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_X_TOOLTIP:"After acquisition and identification x coordinates",MPYTHON_AI2_RESULT_20CLASS_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_Y_MESSAGE0:'get the Y coordinate of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_Y_TOOLTIP:"After acquisition and identification y coordinates",MPYTHON_AI2_RESULT_20CLASS_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_W_MESSAGE0:'get the width of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_W_TOOLTIP:"After acquisition and identification width",MPYTHON_AI2_RESULT_20CLASS_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_H_MESSAGE0:'get the height of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_H_TOOLTIP:"After acquisition and identification height",MPYTHON_AI2_RESULT_20CLASS_VALUE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_VALUE_MESSAGE0:'get the confidence of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_VALUE_TOOLTIP:"After acquisition and identification Confidence",MPYTHON_AI2_RESULT_20CLASS_OBJNUM_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_OBJNUM_MESSAGE0:'get the object count of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_OBJNUM_TOOLTIP:"After acquisition and identification number",MPYTHON_AI2_RESULT_20CLASS_CLASSID_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_CLASSID_MESSAGE0:'get the type name of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_CLASSID_TOOLTIP:"Can identify 20 types, respectively are 0-19 for aircraft, bicycle, bird, boat, bottle, bus, car, cat, chair, cow, dining table, dog, house, motorcycle, person, potted plant, sheep, sofa, train, TV",MPYTHON_AI2_RESULT_20CLASS_INDEX_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_20CLASS_INDEX_MESSAGE0:'get the type count of the "20 Class ID" result',MPYTHON_AI2_RESULT_20CLASS_INDEX_TOOLTIP:"After acquisition and identification type number",MPYTHON_AI2_RESULT_NUMBER_DISCERN_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.model.select_model",MPYTHON_AI2_RESULT_NUMBER_DISCERN_MESSAGE0:'call the camera for "Number ID"',MPYTHON_AI2_RESULT_NUMBER_DISCERN_TOOLTIP:"Call camera identification",MPYTHON_AI2_NUMBER_DETECT_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_ALL_MESSAGE0:'get the recognition result of "Number ID"',MPYTHON_AI2_NUMBER_DETECT_ALL_TOOLTIP:"Handwritten digit recognition parameters",MPYTHON_AI2_NUMBER_DETECT_NUMBER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_NUMBER_MESSAGE0:'get the digital of the "Number ID" result',MPYTHON_AI2_NUMBER_DETECT_NUMBER_TOOLTIP:"Handwritten digits recognize Numbers",MPYTHON_AI2_NUMBER_DETECT_ADIENCE_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#id2",MPYTHON_AI2_NUMBER_DETECT_ADIENCE_MESSAGE0:'get the confidence of the "Number ID" result',MPYTHON_AI2_NUMBER_DETECT_ADIENCE_TOOLTIP:"Handwritten digit recognition digital confidence",MPYTHON_AI_TRACE_COLOR_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#mpython_classroom_kit.image.find_blobs",MPYTHON_AI_TRACE_COLOR_MESSAGE0:"Trace color block LAB color %1 bounding box less than %2 pixels less than %3 filter",MPYTHON_AI_TRACE_COLOR_TOOLTIP:"Track the color piece",MPYTHON_AI_BLOB_ALL_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_ALL_MESSAGE0:"%1Color piece block all parameters",MPYTHON_AI_BLOB_ALL_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_X_MESSAGE0:"%1Color piece x coordinates",MPYTHON_AI_BLOB_X_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_Y_MESSAGE0:"%1Color piece y coordinates",MPYTHON_AI_BLOB_Y_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_W_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_W_MESSAGE0:"%1Color piece width",MPYTHON_AI_BLOB_W_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_H_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_H_MESSAGE0:"%1Color piece height",MPYTHON_AI_BLOB_H_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_NUMBER_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_NUMBER_MESSAGE0:"%1Color piece number",MPYTHON_AI_BLOB_NUMBER_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_CENTER_X_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_CENTER_X_MESSAGE0:"%1Color piece center x coordinates",MPYTHON_AI_BLOB_CENTER_X_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_CENTER_Y_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_CENTER_Y_MESSAGE0:"%1Color piece center y coordinates",MPYTHON_AI_BLOB_CENTER_Y_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_AI_BLOB_ORTHOGON_HELPURL:"https://mpython.readthedocs.io/zh/doc_mpythonbox/mpython_classroom_kit/lib/mpython_classroom_kit.html#blob",MPYTHON_AI_BLOB_ORTHOGON_MESSAGE0:"%1Color piece rectangular",MPYTHON_AI_BLOB_ORTHOGON_TOOLTIP:"Returns blob class -- a color block object",MPYTHON_DRILL_WEIGHT_MESSAGE0:"Initialize training%1",MPYTHON_DRILL_WEIGHT_TOOLTIP:"",MPYTHON_DRILL_WEIGHT_HELPURL:"",MPYTHON_DRILL_LINEAR_REGRESSION_HELPURL:"",MPYTHON_DRILL_LINEAR_REGRESSION_MESSAGE0:"Instantiate the linear regression line",MPYTHON_DRILL_LINEAR_REGRESSION_TOOLTIP:"",MPYTHON_DRILL_TITLE_HELPURL:"",MPYTHON_DRILL_TITLE_MESSAGE0:" title%1 size%2",MPYTHON_DRILL_TITLE_TOOLTIP:"",MPYTHON_DRILL_LABEL_HELPURL:"",MPYTHON_DRILL_LABEL_MESSAGE0:"label%1 title%2 size%3",MPYTHON_DRILL_LABEL_TOOLTIP:"",MPYTHON_DRILL_DRILL_REALITY_HELPURL:"",MPYTHON_DRILL_DRILL_REALITY_MESSAGE0:"Real data lines Sign marks%1 The color of r%2 g%3 b%4 title%5",MPYTHON_DRILL_DRILL_REALITY_TOOLTIP:"",MPYTHON_DRILL_PREDICTED_REALITY_HELPURL:"",MPYTHON_DRILL_PREDICTED_REALITY_MESSAGE0:"Predict linear regression lines Sign marks%1 The color of r%2 g%3 b%4 title%5",MPYTHON_DRILL_PREDICTED_REALITY_TOOLTIP:"",MPYTHON_DRILL_LEGEND_HELPURL:"",MPYTHON_DRILL_LEGEND_MESSAGE0:"Show legend",MPYTHON_DRILL_LEGEND_TOOLTIP:"",MPYTHON_DRILL_SHOW_HELPURL:"",MPYTHON_DRILL_SHOW_MESSAGE0:"Display images",MPYTHON_DRILL_SHOW_TOOLTIP:"",MPYTHON_DRILL_DRILL_PRINT_HELPURL:"",MPYTHON_DRILL_DRILL_PRINT_MESSAGE0:"Returns the corresponding key value%1",MPYTHON_DRILL_DRILL_PRINT_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_MESSAGE0:"Initialize Iris dataset",MPYTHONS_FLOWER_DE_LUCE_INITIALIZE_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_PCA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_PCA_MESSAGE0:"flower-de-luce Principal component analysis",MPYTHONS_FLOWER_DE_LUCE_PCA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_FA3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_FA3D_MESSAGE0:"flower-de-luce Factor analysis 3D",MPYTHONS_FLOWER_DE_LUCE_FA3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_FA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_FA_MESSAGE0:"flower-de-luce Factor analysis",MPYTHONS_FLOWER_DE_LUCE_FA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_MESSAGE0:"Predicting graphic flower-de-luce type%1 Render content x%3 y%4 Present species%2 color r%5 g%6 b%7 title%8 upward merge%9",MPYTHONS_FLOWER_DE_LUCE_PCA_DISPLAY_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_DATA_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_DATA_MESSAGE0:"Predicting graphic Render content x%1 y%2 Present species%3 color r%4 g%5 b%6 title%7",MPYTHONS_FLOWER_DE_LUCE_DATA_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_DATA3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_DATA3D_MESSAGE0:"3D Predicting graphic Render content x%1 y%2 z%3 color r%4 g%5 b%6 title%7",MPYTHONS_FLOWER_DE_LUCE_DATA3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_TITLE_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_TITLE_MESSAGE0:" title%1 size%2",MPYTHONS_FLOWER_DE_LUCE_TITLE_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LABEL_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LABEL_MESSAGE0:"label%1 title%2 size%3",MPYTHONS_FLOWER_DE_LUCE_LABEL_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_MESSAGE0:"3D title%1 size%2",MPYTHONS_FLOWER_DE_LUCE_TITLE3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_MESSAGE0:"3D label%1 title%2 size%3",MPYTHONS_FLOWER_DE_LUCE_LABEL3D_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LEGEND_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LEGEND_MESSAGE0:"Show legend",MPYTHONS_FLOWER_DE_LUCE_LEGEND_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_SHOW_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_SHOW_MESSAGE0:"Display images",MPYTHONS_FLOWER_DE_LUCE_SHOW_TOOLTIP:"",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_HELPURL:"",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_MESSAGE0:"X and y coordinates of calyx and petals",MPYTHONS_FLOWER_DE_LUCE_LOAD_IRIS_TOOLTIP:"There are 150 records, representing 50 Iris-setosa, Iris-versicolor and Iris-virginica respectively",MPYTHONS_FLOWER_DE_LUCE_Iris_setosa:"Iris setosa",MPYTHONS_FLOWER_DE_LUCE_Iris_versicolor:"Iris versicolor",MPYTHONS_FLOWER_DE_LUCE_Iris_virginica:"Iris virginica",MPYTHONS_FLOWER_DE_LUCE_scatter_diagram:"scatter diagram",MPYTHONS_FLOWER_DE_LUCE_kde_diagram:"kde diagram",MPYTHONS_FLOWER_DE_LUCE_box_diagram:"box diagram",MPYTHONS_FLOWER_DE_LUCE_merge:"merge",MPYTHONS_FLOWER_DE_LUCE_not_merge:"Don it merge",MPYTHONS_FLOWER_DE_LUCE_calyx_length:"calyx length",MPYTHONS_FLOWER_DE_LUCE_calyx_width:"calyx width",MPYTHONS_FLOWER_DE_LUCE_petal_length:"petal length",MPYTHONS_FLOWER_DE_LUCE_petal_width:"petal width",MPYTHON_DRILL_DRILL_full_line:"full line",MPYTHON_DRILL_DRILL_dash_line:"dash line",MPYTHON_DRILL_DRILL_chain_line:"chain line",MPYTHON_DRILL_DRILL_imaginary_line:"imaginary line",MPYTHON_DRILL_DRILL_dot:"dot",MPYTHON_DRILL_DRILL_pixel:"pixel",MPYTHON_DRILL_DRILL_solid_rim:"solid rim",MPYTHON_DRILL_DRILL_down_triangle:"down triangle",MPYTHON_DRILL_DRILL_up_triangle:"up triangle",MPYTHON_DRILL_DRILL_right_triangle:"right triangle",MPYTHON_DRILL_DRILL_left_triangle:"left triangle",MPYTHON_DRILL_DRILL_down_flower_triangle:"down flower triangle",MPYTHON_DRILL_DRILL_up_flower_triangle:"up flower triangle",MPYTHON_DRILL_DRILL_right_flower_triangle:"right flower triangle",MPYTHON_DRILL_DRILL_left_flower_triangle:"left flower triangle",MPYTHON_DRILL_DRILL_solid_square:"solid square",MPYTHON_DRILL_DRILL_solid_pentagon:"solid pentagon",MPYTHON_DRILL_DRILL_star:"star",MPYTHON_DRILL_DRILL_vertical_hexagon:"vertical hexagon",MPYTHON_DRILL_DRILL_across_hexagon:"across hexagon",MPYTHON_DRILL_DRILL_cross:"cross",MPYTHON_DRILL_DRILL_X:"X",MPYTHON_DRILL_DRILL_rhombus:"rhombus",MPYTHON_DRILL_DRILL_thin_rhombus:"thin rhombus",MPYTHON_DRILL_DRILL_vertical_line:"vertical line",MPYTHONS_CONVERT_PICTURE_HELPURL:" ",MPYTHONS_CONVERT_PICTURE_MESSAGE0:" convert image to 28 ^ 2 binary image %1 pending image storage path %2 processed image storage path %3 format %4",MPYTHONS_CONVERT_PICTURE_TOOLTIP:"control board passes WIF to voice assistant via serial port ",MPYTHONS_NUMBER_REPERTOIRE_HELPURL:" ",MPYTHONS_NUMBER_REPERTOIRE_MESSAGE0:" find parse handwritten numeric data store path %1",MPYTHONS_NUMBER_REPERTOIRE_TOOLTIP:"use handwritten number library ",MPYTHONS_SHOW_NUMBER_PATH_HELPURL:" ",MPYTHONS_SHOW_NUMBER_PATH_MESSAGE0:" handwritten digital image storage path %1",MPYTHONS_SHOW_NUMBER_PATH_TOOLTIP:"path of handwritten digital image ",MPYTHONS_SHOW_NUMBER_HELPURL:" ",MPYTHONS_SHOW_NUMBER_MESSAGE0:" display handwritten digital image ",MPYTHONS_SHOW_NUMBER_TOOLTIP:"display handwritten digital image ",MPYTHONS_NUMBER_RECOGNITION_HELPURL:" ",MPYTHONS_NUMBER_RECOGNITION_MESSAGE0:" identify handwritten digital image storage path %1",MPYTHONS_NUMBER_RECOGNITION_TOOLTIP:"path to recognize handwritten digital image ",MPYTHONS_NUMBER_PLACEHOLDER_HELPURL:" ",MPYTHONS_NUMBER_PLACEHOLDER_MESSAGE0:" create variable %1 initialize neural network tensor variable name %2",MPYTHONS_NUMBER_PLACEHOLDER_TOOLTIP:" ",MPYTHON_DRILL_RESHAPE_MESSAGE0:"create variable %1 and convert the input photo variable %2 into neural network output tensor %3",MPYTHON_DRILL_RESHAPE_TOOLTIP:" ",MPYTHON_DRILL_RESHAPE_HELPURL:" ",MPYTHON_NUMBER_CONV_WEIGHT_MESSAGE0:"create variable %1 Shared variable name %2 initialization mode %3",MPYTHON_NUMBER_CONV_WEIGHT_TOOLTIP:" ",MPYTHON_NUMBER_CONV_WEIGHT_HELPURL:" ",MPYTHON_NUMBER_INITIALIZER_MESSAGE0:"produce truncated normal distribution random number output tensor %1 standard deviation %2",MPYTHON_NUMBER_INITIALIZER_TOOLTIP:" ",MPYTHON_NUMBER_INITIALIZER_HELPURL:" ",MPYTHON_NUMBER_CONSTANT_MESSAGE0:"create constant value %1 output tensor %2",MPYTHON_NUMBER_CONSTANT_TOOLTIP:" ",MPYTHON_NUMBER_CONSTANT_HELPURL:" ",MPYTHON_NUMBER_CONV2D_MESSAGE0:"neural network output tensor %1 Shared variable %2 step size %3 fill %4",MPYTHON_NUMBER_CONV2D_TOOLTIP:" ",MPYTHON_NUMBER_CONV2D_HELPURL:" ",MPYTHON_NUMBER_CONV_BIASES_MESSAGE0:"tensor %1",MPYTHON_NUMBER_CONV_BIASES_TOOLTIP:" ",MPYTHON_NUMBER_CONV_BIASES_HELPURL:" ",MPYTHON_NUMBER_CONV_CONV2D_MESSAGE0:"convolution two-dimensional variable %1 %2",MPYTHON_NUMBER_CONV_CONV2D_TOOLTIP:" ",MPYTHON_NUMBER_CONV_CONV2D_HELPURL:" ",MPYTHON_NUMBER_RELU_MESSAGE0:"create variable %1 Relu forward drive function convolution 2d layer %2",MPYTHON_NUMBER_RELU_TOOLTIP:" ",MPYTHON_NUMBER_RELU_HELPURL:" ",MPYTHON_NUMBER_MAX_POOL_MESSAGE0:"pooling 2d layer variable %1 convolution layer %2 pooling window %3 step size %4 fill %5",MPYTHON_NUMBER_MAX_POOL_TOOLTIP:" ",MPYTHON_NUMBER_MAX_POOL_HELPURL:" ",MPYTHON_NUMBER_MATMUL_MESSAGE0:"the corresponding elements of the two parameters are multiplied x%1 y%2",MPYTHON_NUMBER_MATMUL_TOOLTIP:" ",MPYTHON_NUMBER_MATMUL_HELPURL:" ",MPYTHON_NUMBER_ADD_MESSAGE0:"full connection layer variable %1 add elements of two parameters x%2 y%3",MPYTHON_NUMBER_ADD_TOOLTIP:" ",MPYTHON_NUMBER_ADD_HELPURL:" ",MPYTHON_NUMBER_SOFTMAX_MESSAGE0:"create variable %1 prediction model accuracy variable name %2",MPYTHON_NUMBER_SOFTMAX_TOOLTIP:" ",MPYTHON_NUMBER_SOFTMAX_HELPURL:" ",MPYTHON_NUMBER_REDUCE_MEAN_MESSAGE0:"create variable %1 loss function %2",MPYTHON_NUMBER_REDUCE_MEAN_TOOLTIP:" ",MPYTHON_NUMBER_REDUCE_MEAN_HELPURL:" ",MPYTHON_NUMBER_LOG_MESSAGE0:"natural logarithm %1",MPYTHON_NUMBER_LOG_TOOLTIP:" ",MPYTHON_NUMBER_LOG_HELPURL:" ",MPYTHON_NUMBER_REDUCE_SUM_MESSAGE0:"compress sum %1 dimension %2",MPYTHON_NUMBER_REDUCE_SUM_TOOLTIP:"because the log function is monotonically increasing, logP(Y|X) will also reach its maximum value, so maximizing P(Y|X) after adding a negative sign in front is equivalent to minimizing L.",MPYTHON_NUMBER_REDUCE_SUM_HELPURL:"https://www.cnblogs.com/guoyaohua/p/9217206.html",MPYTHON_NUMBER_TRAIN_MESSAGE0:"optimize learning rate %1",MPYTHON_NUMBER_TRAIN_TOOLTIP:" ",MPYTHON_NUMBER_TRAIN_HELPURL:" ",MPYTHON_NUMBER_MINIMIZE_MESSAGE0:"create variable %1 optimize tensor %2",MPYTHON_NUMBER_MINIMIZE_TOOLTIP:" ",MPYTHON_NUMBER_MINIMIZE_HELPURL:" ",MPYTHON_NUMBER_INIT_MESSAGE0:"initialization model complete ",MPYTHON_NUMBER_INIT_TOOLTIP:" ",MPYTHON_NUMBER_INIT_HELPURL:" ",MPYTHON_NUMBER_TRAIN_TEST_MESSAGE0:"select handwritten number set %1 number %2",MPYTHON_NUMBER_TRAIN_TEST_TOOLTIP:" ",MPYTHON_NUMBER_TRAIN_TEST_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN_MESSAGE0:"start data stream graph session to compute session %1 picture %2 tag %3",MPYTHON_NUMBER_SESSION_RUN_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN2_MESSAGE0:"start data stream graph session to compute session %1 picture %2 tag %3",MPYTHON_NUMBER_SESSION_RUN2_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN2_HELPURL:" ",MPYTHON_NUMBER_SESSION_RUN3_MESSAGE0:"prediction model %1 fit %2 session %3",MPYTHON_NUMBER_SESSION_RUN3_TOOLTIP:" ",MPYTHON_NUMBER_SESSION_RUN3_HELPURL:" ",MPYTHON_NUMBER_EQUAL_MESSAGE0:"Whether each dimension of two tensors is equalx%1 y%2",MPYTHON_NUMBER_EQUAL_TOOLTIP:"",MPYTHON_NUMBER_EQUAL_HELPURL:"",MPYTHON_NUMBER_ARGMAX_MESSAGE0:"tensor%1 %2Compare the index that returns the maximum value",MPYTHON_NUMBER_ARGMAX_TOOLTIP:"",MPYTHON_NUMBER_ARGMAX_HELPURL:"",MPYTHON_NUMBER_CAST_MESSAGE0:"Floating point %1",MPYTHON_NUMBER_CAST_TOOLTIP:"",MPYTHON_NUMBER_CAST_HELPURL:"",MPYTHONS_NUMBER_SAVER_SAVE_HELPURL:"",MPYTHONS_NUMBER_SAVER_SAVE_MESSAGE0:"Handwritten numeral recognition model variable name %1 store path%2",MPYTHONS_NUMBER_SAVER_SAVE_TOOLTIP:"MNIST Handwritten numeral recognition model Save the path",MPYTHONS_NUMBER_SAVER_RESTORE_HELPURL:"",MPYTHONS_NUMBER_SAVER_RESTORE_MESSAGE0:"Load model %1 store path%2",MPYTHONS_NUMBER_SAVER_RESTORE_TOOLTIP:"Load model",MPYTHONS_NUMBER_SAME:"SAME",MPYTHONS_NUMBER_VALID:"VALID",MPYTHONS_NUMBER_train:"train",MPYTHONS_NUMBER_test:"test",MPYTHONS_NUMBER_row:"row",MPYTHONS_NUMBER_rank:"rank",MPYTHONS_FACE_RECOGNITION_CAMERA_HELPURL:"",MPYTHONS_FACE_RECOGNITION_CAMERA_MESSAGE0:"Call camera %1",MPYTHONS_FACE_RECOGNITION_CAMERA_TOOLTIP:"Call the built-in camera in the notebook, so the parameter is 0. If there are other cameras, the parameter can be adjusted to 1,2",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_HELPURL:"",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_MESSAGE0:"off the camera",MPYTHONS_FACE_RECOGNITION_CAMERA_OFF_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_MESSAGE0:"Delete all Windows",MPYTHONS_FACE_RECOGNITION_WINDOWS_DELETE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0:"Load model store path%1",MPYTHONS_FACE_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_MESSAGE0:"Read the picture from the camera",MPYTHONS_FACE_RECOGNITION_READ_IMAGES_TOOLTIP:"Ret True if the image is read, otherwise false;The second parameter is frame, which is the image of the currently captured frame.",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_MESSAGE0:"Grayscale image",MPYTHONS_FACE_RECOGNITION_GRAY_IMAGES_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_MESSAGE0:"Each time the face is detected, the image size is reduced proportionally%1",MPYTHONS_FACE_RECOGNITION_DETECTION_FACES_TOOLTIP:"",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_HELPURL:"",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_MESSAGE0:"Face area displays rectangular box color r%1 g%2 b%3",MPYTHONS_FACE_DISPLAY_RECOGNITION_ORTHOGON_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_MESSAGE0:"Save the image location%1 ID%2 Serial number%3",MPYTHONS_FACE_RECOGNITIONR_PSTORAGE_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_MESSAGE0:"Window to display the image filename%1",MPYTHONS_FACE_RECOGNITIONR_PRESERVE_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITIONR_ESC_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_ESC_MESSAGE0:"Exit via esc key",MPYTHONS_FACE_RECOGNITIONR_ESC_TOOLTIP:"Use only when the window is on top",MPYTHONS_FACE_RECOGNITIONR_HELPURL:"",MPYTHONS_FACE_RECOGNITIONR_MESSAGE0:"Gets the coordinate value of the face in the image face%1",MPYTHONS_FACE_RECOGNITIONR_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_HELPURL:"",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_MESSAGE0:"If the image is read",MPYTHONS_FACE_RECOGNITION_JUDGE_FACES_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_HELPURL:"",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_MESSAGE0:"Whether to turn on the camera",MPYTHONS_FACE_RECOGNITION_JUDGE_CAMERA_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_MESSAGE0:"Get photos and id Photo storage path%1",MPYTHONS_FACE_RECOGNITION_ACQUIRE_ID_PICTURE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_MESSAGE0:"Initialize Training model",MPYTHONS_FACE_RECOGNITION_INITIALIZE_TRANI_MODEL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_START_DRILL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_START_DRILL_MESSAGE0:"Start Training model",MPYTHONS_FACE_RECOGNITION_START_DRILL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_HELPURL:"",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_MESSAGE0:"%1Training model store path%2",MPYTHONS_FACE_RECOGNITION_STORAGE_DRILL_MODEL_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_HELPURL:"",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_MESSAGE0:"Face model training number",MPYTHONS_FACE_RECOGNITION_DRILL_NUMBERS_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FONT_HELPURL:"",MPYTHONS_FACE_RECOGNITION_FONT_MESSAGE0:"Window display Recognized name%1 Set font to%2 color r%3 g%4 b%5",MPYTHONS_FACE_RECOGNITION_FONT_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_PERCENT_HELPURL:"",MPYTHONS_FACE_RECOGNITION_PERCENT_MESSAGE0:"Window display Confidence of identification%1 Set font to%2 color r%3 g%4 b%5",MPYTHONS_FACE_RECOGNITION_PERCENT_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_HELPURL:"",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_MESSAGE0:"Predict human face name%1 Degree of confidence%2",MPYTHONS_FACE_RECOGNITION_FORECAST_FACE_INITIALIZE_TOOLTIP:"",MPYTHONS_FACE_RECOGNITION_FORECAST_Write:"write",MPYTHONS_FACE_RECOGNITION_FORECAST_Read:"read",MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_INITIALIZE_MESSAGE0:"初始化 聊天机器人",MPYTHONS_ADIALOGUE_ROBOT_INITIALIZE_TOOLTIP:"",MPYTHONS_DIALOGUE_ROBOT_CHOOSE_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_CHOOSE_MESSAGE0:"选择训练器 聊天机器人",MPYTHONS_ADIALOGUE_ROBOT_CHOOSE_TOOLTIP:"",MPYTHONS_DIALOGUE_ROBOT_START_HELPURL:"",MPYTHONS_DIALOGUE_ROBOT_START_MESSAGE0:"选择与%1 聊天",MPYTHONS_ADIALOGUE_ROBOT_START_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS_MESSAGE0:"自定义 语料库 %1[%2]",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_MESSAGE0:"输入对话 获得响应 %1",MPYTHONS_ADIALOGUE_ROBOT_MY_FAQs_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_MESSAGE0:"识别响应",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_TOOLTIP:"",MPYTHONS_ADIALOGUE_ROBOT_FAQs_RETURN_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_MESSAGE0:"选择跟 %1 聊天",MPYTHONS_ADIALOGUE_ROBOT_CORPUS2_TOOLTIP:"",Jenny:"珍妮",Jack:"杰克",Tom:"汤姆",MPYTHONS_ADIALOGUE_ROBOT_FEED_HELPURL:"",MPYTHONS_ADIALOGUE_ROBOT_FEED_MESSAGE0:"选择 %1 %2 模式%3 %4 喂养%5",MPYTHONS_ADIALOGUE_ROBOT_FEED_TOOLTIP:"",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_HELPURL:"",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_MESSAGE0:"查看训练库 选择%1",MPYTHONS_ADIALOGUE_READ_TRAINING_LIBRARY_TOOLTIP:"",MPYTHON_GESTURE_RANDOM_NUMBER_HELPURL:"",MPYTHON_GESTURE_RANDOM_NUMBER_MESSAGE0:"生成随机数 %1",MPYTHON_GESTURE_RANDOM_NUMBER_TOOLTIP:"",MPYTHON_AGESTURE_SHOW_WINDOW_HELPURL:"",MPYTHON_AGESTURE_SHOW_WINDOW_MESSAGE0:"显示窗口",MPYTHON_AGESTURE_SHOW_WINDOW_TOOLTIP:"",MPYTHON_AGESTURE_IMSHOW_HELPURL:"",MPYTHON_AGESTURE_IMSHOW_MESSAGE0:"处理图像 %1",MPYTHON_AGESTURE_IMSHOW_TOOLTIP:"",MPYTHON_AGESTURE_TRAIN_MODEL_HELPURL:"",MPYTHON_AGESTURE_TRAIN_MODEL_MESSAGE0:"选择训练库 knn模型",MPYTHON_AGESTURE_TRAIN_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_LOAD_MODEL_HELPURL:"",MPYTHON_AGESTURE_LOAD_MODEL_MESSAGE0:"载入knn模型 存储路径%1",MPYTHON_AGESTURE_LOAD_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_OPEN_IMAGES_HELPURL:"",MPYTHON_AGESTURE_OPEN_IMAGES_MESSAGE0:"%1打开图片 存储路径%2 图片名%3",MPYTHON_AGESTURE_OPEN_IMAGES_TOOLTIP:"",MPYTHON_AGESTURE_ARRAY_MESSAGE0:"选择%1 构建特征数据%2",MPYTHON_AGESTURE_ARRAY_TOOLTIP:"",MPYTHON_AGESTURE_ARRAY_HELPURL:"",MPYTHON_GESTURE_RANDOM_RANK_MESSAGE0:"打乱排序%1 ",MPYTHON_GESTURE_RANDOM_RANK_TOOLTIP:"",MPYTHON_GESTURE_RANDOM_RANK_HELPURL:"",MPYTHON_GESTURE_READ_LEND_MESSAGE0:" %1 图片特征",MPYTHON_GESTURE_READ_LEND_TOOLTIP:"",MPYTHON_GESTURE_READ_LEND_HELPURL:"",MPYTHON_GESTURE_START_SRAIN_HELPURL:"",MPYTHON_GESTURE_START_SRAIN_MESSAGE0:"开始训练 手势识别 期望%1 目标%2",MPYTHON_GESTURE_START_SRAIN_TOOLTIP:"",MPYTHON_GESTURE_SCORE_HELPURL:"",MPYTHON_GESTURE_SCORE_MESSAGE0:"进行评分 期望%1 目标%2",MPYTHON_GESTURE_SCORE_TOOLTIP:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_HELPURL:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_TOOLTIP:"",MPYTHON_GESTURE_DIMENSIONALITY_REDUCTION_MESSAGE0:"%1 数组降维 图片总数%2",MPYTHON_GESTURE_FORECAST_HELPURL:"",MPYTHON_GESTURE_FORECAST_TOOLTIP:"",MPYTHON_GESTURE_FORECAST_MESSAGE0:"预测结果%1",MPYTHON_AGESTURE_SAVE_MODEL_HELPURL:"",MPYTHON_AGESTURE_SAVE_MODEL_MESSAGE0:"保存模型 存储路径%1",MPYTHON_AGESTURE_SAVE_MODEL_TOOLTIP:"",MPYTHON_AGESTURE_FORECAST_PICTURE_HELPURL:"",MPYTHON_AGESTURE_FORECAST_PICTURE_MESSAGE0:"%1图片 预测图片 ",MPYTHON_AGESTURE_FORECAST_PICTURE_TOOLTIP:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_HELPURL:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_TOOLTIP:"",MPYTHON_GESTURE_PICTURE_DIMENSIONALITY_REDUCTION_MESSAGE0:"%1 彩色图像降维",MPYTHONS_FACEAI_READ_PICTURE_PATH_HELPURL:"",MPYTHONS_FACEAI_READ_PICTURE_PATH_MESSAGE0:"选择人脸库 图片存储路径%1",MPYTHONS_FACEAI_READ_PICTURE_PATH_TOOLTIP:"",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_HELPURL:"",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_MESSAGE0:"加载模型 存储路径%1",MPYTHONS_FACEAI_RECOGNITION_IMPORT_MODEL_SITE_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_MESSAGE0:"第%1位人脸性别结果 置信度",MPYTHONS_FACEAI_FACE_GENDER_DETECTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_MESSAGE0:"第%1位人脸情绪结果 置信度",MPYTHONS_FACEAI_FACE_EMOTION_DETECTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_RESULT_MESSAGE0:"第%1位人脸性别 结果",MPYTHONS_FACEAI_FACE_GENDER_RESULT_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_MESSAGE0:"第%1位人脸情绪 结果",MPYTHONS_FACEAI_FACE_EMOTION_RESULT_TOOLTIP:"",MPYTHON_FACEAI_CHOOSE_FACE_POOL_HELPURL:"",MPYTHON_FACEAI_CHOOSE_FACE_POOL_MESSAGE0:"选择人脸库 %1",MPYTHON_FACEAI_CHOOSE_FACE_POOL_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_MESSAGE0:"第%1位情绪为 %2",MPYTHONS_FACEAI_FACE_EMOTION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_GENDER_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_GENDER_RETURN_MESSAGE0:"第%1位性别为 %2",MPYTHONS_FACEAI_FACE_GENDER_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_MESSAGE0:"人脸数量",MPYTHONS_FACEAI_FACE_NUMBER_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_MESSAGE0:"表情数量",MPYTHONS_FACEAI_FACE_EXPRESSION_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_HELPURL:"",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_MESSAGE0:"人脸实时检测 %1",MPYTHONS_FACEAI_FACE_RECOGNITION_VEDIO_RETURN_TOOLTIP:"",MPYTHONS_FACEAI_FACE_IMG_RESULT_HELPURL:"",MPYTHONS_FACEAI_FACE_IMG_RESULT_MESSAGE0:"显示图片",MPYTHONS_FACEAI_FACE_IMG_RESULT_TOOLTIP:"",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_HELPURL:"",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_MESSAGE0:"选择人脸%1 %2",MPYTHONS_FACEAI_CHOOSE_FACE_DATABASE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_INITIALIZE_HELPURL:"",MPYTHONS_WORD_CLOUD_INITIALIZE_MESSAGE0:"初始化 文章聚类",MPYTHONS_WORD_CLOUD_INITIALIZE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_TITLE_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_TITLE_MESSAGE0:"标题 第%1文章",MPYTHONS_WORD_CLOUD_TITLE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_CONTENT_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_CONTENT_MESSAGE0:"内容 第%1文章",MPYTHONS_WORD_CLOUD_CONTENT_TOOLTIP:"",MPYTHONS_WORD_CLOUD_JIEBA_HELPURL:"文章数量不超过100",MPYTHONS_WORD_CLOUD_JIEBA_MESSAGE0:"文章内容转为列表 第%1文章",MPYTHONS_WORD_CLOUD_JIEBA_TOOLTIP:"",MPYTHONS_WORD_CLOUD_STOPWORD_HELPURL:"",MPYTHONS_WORD_CLOUD_STOPWORD_MESSAGE0:"读取停词表%1",MPYTHONS_WORD_CLOUD_STOPWORD_TOOLTIP:"返回的是100篇文章里的符号",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_HELPURL:"",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_MESSAGE0:"删除后的新闻",MPYTHONS_WORD_CLOUD_DELETE_AFTER_NEWS_TOOLTIP:"",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_HELPURL:"",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_MESSAGE0:"构造词云所用的数据",MPYTHONS_WORD_CLOUD_THESAURUS_CONSTRUCTION_DATA_TOOLTIP:"",MPYTHONS_WORD_CLOUD_COUNT_RANK_HELPURL:"",MPYTHONS_WORD_CLOUD_COUNT_RANK_MESSAGE0:"计算总数 排序前%1",MPYTHONS_WORD_CLOUD_COUNT_RANK_TOOLTIP:"返回的是100篇文章里的文本",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_HELPURL:"",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_MESSAGE0:"文章聚类训练结果 保存为图片",MPYTHONS_WORD_CLOUD_SAVE_PICTURE_TOOLTIP:"",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_HELPURL:"",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_MESSAGE0:"显示图片",MPYTHONS_WORD_CLOUD_DISPLAY_PICTURE_TOOLTIP:"",FIRST:"first",LAST:"last",MPYTHON_USOCKET_BLOCK:"block",MPYTHON_USOCKET_UNBLOCK:"unblock",MPYTHON_USOCKET_SETSOCKOPT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",MPYTHON_USOCKET_SETSOCKOPT_MESSAGE0:"set socket %1 with af %2 and type %3",MPYTHON_USOCKET_SETSOCKOPT_TOOLTIP:"Sets the value of a given socket option. The required symbolic constants are defined in the socket module (SO_*, etc.). This value can be an integer or a class byte object representing a buffer.",MPYTHON_USOCKET_READ_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.read",MPYTHON_USOCKET_READ_MESSAGE0:"read %2 bytes from socket %1 and returns a byte object",MPYTHON_USOCKET_READ_TOOLTIP:"if no number of read is given, run in a mode similar to socket.readall ()",MPYTHON_USOCKET_SETBLOCKING_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.setblocking",MPYTHON_USOCKET_SETBLOCKING_MESSAGE0:"set socket %1 as %2 mode ",MPYTHON_USOCKET_SETBLOCKING_TOOLTIP:"",MPYTHON_USOCKET_SETTIMEOUT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.settimeout",MPYTHON_USOCKET_SETTIMEOUT_MESSAGE0:"socket %1 sets timeout as %2 seconds",MPYTHON_USOCKET_SETTIMEOUT_TOOLTIP:"",MPYTHON_USOCKET_SENDALL_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SENDALL_MESSAGE0:"Socket%1 sends%2 continuously and returns the number of bytes sent",MPYTHON_USOCKET_SENDALL_TOOLTIP:"Send all data to sockets. Sockets must be connected to remote sockets. Unlike send (), this method will attempt to send all data by sending blocks continuously.",MPYTHON_USOCKET_SENDS_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SENDS_MESSAGE0:"socket %1 send %2 and returns the number of bytes sent",MPYTHON_USOCKET_SENDS_TOOLTIP:"Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",MPYTHON_USOCKET_SEND_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.send",MPYTHON_USOCKET_SEND_MESSAGE0:"socket %1 send %2 and returns the number of bytes sent",MPYTHON_USOCKET_SEND_TOOLTIP:"Send data to the socket. The socket must be connected to a remote socket. Returns number of bytes sent, which may be smaller than the length of data (“short write”).",MPYTHON_LINE_BREAK_HELPURL:"",MPYTHON_LINE_BREAK_MESSAGE0:"Escape character %1",MPYTHON_LINE_BREAK_TOOLTIP:"Escape character",MPYTHON_USOCKET_SENDTO_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.sendto",MPYTHON_USOCKET_SENDTO_MESSAGE0:"socket %1 send %2 to address %3",MPYTHON_USOCKET_SENDTO_TOOLTIP:"Send data to the socket. The socket should not be connected to a remote socket, since the destination socket is specified by address.",MPYTHON_USOCKET_RECV_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recv",MPYTHON_USOCKET_RECV_MESSAGE0:"socket %1 receives with maximum amount %2 and returns received data object",MPYTHON_USOCKET_RECV_TOOLTIP:"",MPYTHON_TEXT_ESC_HELPURL:"",MPYTHON_TEXT_ESC_MESSAGE0:"text ESC %1",MPYTHON_TEXT_ESC_TOOLTIP:"text ESC",MPYTHON_USOCKET_RECVFROM_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.recvfrom",MPYTHON_USOCKET_RECVFROM_MESSAGE0:"socket %1 receives with maximum amount %2 and returns received data tuple",MPYTHON_USOCKET_RECVFROM_TOOLTIP:"Tuple format: (bytes, address)",MPYTHON_USOCKET_CONNECT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.connect",MPYTHON_USOCKET_CONNECT_MESSAGE0:"socket %1 connect to host %2 with port %3",MPYTHON_USOCKET_CONNECT_TOOLTIP:"",MPYTHON_USOCKET_GETADDRINFO_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.getaddrinfo",MPYTHON_USOCKET_GETADDRINFO_MESSAGE0:"parse host %1 with port %2 and return ip",MPYTHON_USOCKET_GETADDRINFO_TOOLTIP:"Internet required",MPYTHON_USOCKET_ACCEPT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept",MPYTHON_USOCKET_ACCEPT_MESSAGE0:"socket %1 receive connection request and return socket tuple",MPYTHON_USOCKET_ACCEPT_TOOLTIP:"Receive connection request.Socket needs to specify an address and listen to the connection.The return value is (conn, address)\nconn: A new socket object that can be used to send and receive message\naddress: Client address connected to the server",MPYTHON_USOCKET_LISTEN_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.listen",MPYTHON_USOCKET_LISTEN_MESSAGE0:"listen to socket %1 with backlog as %2",MPYTHON_USOCKET_LISTEN_TOOLTIP:"backlog : Maximum number of accepted sockets, at least 0, default reasonable value if not specified",MPYTHON_USOCKET_BIND_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.bind",MPYTHON_USOCKET_BIND_MESSAGE0:"socket %1 bind with address %2 and port %3",MPYTHON_USOCKET_BIND_TOOLTIP:"",MPYTHON_USOCKET_CLOSE_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.close",MPYTHON_USOCKET_CLOSE_MESSAGE0:"close socket %1",MPYTHON_USOCKET_CLOSE_TOOLTIP:"",MPYTHON_USOCKET_INIT_HELPURL:"http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket",MPYTHON_USOCKET_INIT_MESSAGE0:"create socket %1 with af %2 and type %3",MPYTHON_USOCKET_INIT_TOOLTIP:"AF_INET:=2 — TCP/IP – IPv4\nAF_INET6 :=10 — TCP/IP – IPv6\nSOCK_STREAM:=1 — TCP stream\nSOCK_DGRAM:=2 — UDP datagram\nSOCK_RAW :=3 — Original socket\nSO_REUSEADDR : =4 — Socket reusable\n",MPYTHON_GET_POST_HELPURL:"",MPYTHON_GET_POST_MESSAGE0:"%1 request url %2 submit fields %3",MPYTHON_GET_POST_TOOLTIP:"",MPYTHON_UREQUESTS_GET_POST_HELPURL:"",MPYTHON_UREQUESTS_GET_POST_TOOLTIP:"",MPYTHON_UREQUESTS_GET_POST_MESSAGE0:"%1 request url %2 submit fields %3",MPYTHON_UREQUESTS_POST_FILE_HELPURL:"",MPYTHON_UREQUESTS_POST_FILE_TOOLTIP:"",MPYTHON_UREQUESTS_POST_FILE_MESSAGE0:"Post submit file %1 request url %2 file path %3 mime type %4 fields %5",MPYTHON_RESPONSE_HELPURL:"",MPYTHON_RESPONSE_MESSAGE0:"return response content as %1",MPYTHON_RESPONSE_TOOLTIP:"",STRING:"string",_BYTE:"byte",TEXT:"text",MPYTHON_RESPONSE_ATTRIBUTE_HELPURL:"",MPYTHON_RESPONSE_ATTRIBUTE_MESSAGE0:"response attribute %1",MPYTHON_RESPONSE_ATTRIBUTE_TOOLTIP:"",MPYTHON_SLEEP_MESSAGE0:"waiting for %1 %2",MPYTHON_SLEEP_TOOLTIP:"Wait for the time before proceeding to the next command.\n1 second = 1,000 milliseconds (ms)\n1 second = 1,000,000 microseconds (μs)",MPYTHON_MS:"millisecond(ms)",MPYTHON_US:"microsecond(μs)",MPYTHON_TIME_DIFFERENCE_HELPURL:"",MPYTHON_TIME_DIFFERENCE_MESSAGE0:"Return time difference from %1 to %2",MPYTHON_TIME_DIFFERENCE_TOOLTIP:"Measure the period between successive calls to ticks_ms (), ticks_us ()",MPYTHON_TYPE_HELPURL:"",MPYTHON_TYPE_MESSAGE0:"type %1",MPYTHON_TYPE_TOOLTIP:"",MPYTHON_TYPE_IS_HELPURL:"",MPYTHON_TYPE_IS_MESSAGE0:"type %1 is %2",MPYTHON_TYPE_IS_TOOLTIP:"",MPYTHON_EVAL_HELPURL:"",MPYTHON_EVAL_MESSAGE0:"eval %1",MPYTHON_EVAL_TOOLTIP:"Simulate a string expression and return the result",MPYTHON_RETURN_HELPURL:"",MPYTHON_RETURN_MESSAGE0:"return %1",MPYTHON_RETURN_TOOLTIP:"",MPYTHON_BLUEBIT_AMBIENTLIGHT_HELPURL:"",MPYTHON_BLUEBIT_AMBIENTLIGHT_MESSAGE0:"I2C digital ray",MPYTHON_BLUEBIT_AMBIENTLIGHT_TOOLTIP:"",MPYTHON_WIFI_ALL_CONFIG_HELPURL:"",MPYTHON_WIFI_ALL_CONFIG_MESSAGE0:"Wi-Fi configuration information",MPYTHON_WIFI_ALL_CONFIG_TOOLTIP:"Returns all wifi configuration information as tuples",MPYTHON_WIFI_ISCONNECTED_HELPURL:"",MPYTHON_WIFI_ISCONNECTED_MESSAGE0:"Has connected to Wi-Fi",MPYTHON_WIFI_ISCONNECTED_TOOLTIP:"",MPYTHON_INIT_ASSISTANT_WIFI_HELPURL:"",MPYTHON_INIT_ASSISTANT_WIFI_MESSAGE0:"Wi-Fi Connect voice assistant Wi-Fi name%1 password%2",MPYTHON_INIT_ASSISTANT_WIFI_TOOLTIP:"Control board passes WIF to voice assistant through serial port",MPYTHON_INIT_ASSISTANT_PROFILE_HELPURL:"",MPYTHON_INIT_ASSISTANT_PROFILE_TOOLTIP:"Files need to be uploaded to the board on the file system first",MPYTHON_INIT_ASSISTANT_PROFILE_MESSAGE0:"Read Voice Assistant Text Files %1",MPYTHON_BLUEBIT_SEG_DISPLAY_HELPURL:"",MPYTHON_BLUEBIT_SEG_DISPLAY_MESSAGE0:"digital tube display %1",MPYTHON_BLUEBIT_SEG_DISPLAY_TOOLTIP:"-999~9999",MPYTHON_BLUEBIT_SEG_CLEAR_HELPURL:"",MPYTHON_BLUEBIT_SEG_CLEAR_MESSAGE0:"clear the digital tube display",MPYTHON_BLUEBIT_SEG_CLEAR_TOOLTIP:"",MPYTHON_MACHINE_RESET_HELPURL:"",MPYTHON_MACHINE_RESET_MESSAGE0:"reset",MPYTHON_MACHINE_RESET_TOOLTIP:"Same as pressing an external reset button",MPYTHON_BLUEBIT_GET_COLOR_HELPURL:"",MPYTHON_BLUEBIT_GET_COLOR_MESSAGE0:"I2C RGB color %1",MPYTHON_BLUEBIT_GET_COLOR_TOOLTIP:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_HELPURL:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_MESSAGE0:"I2C RGB color",MPYTHON_BLUEBIT_GET_ALL_COLOR_TOOLTIP:"Returns as list",MPYTHON_BLUEBIT_GET_COLOR_HSV_HELPURL:"",MPYTHON_BLUEBIT_GET_COLOR_HSV_MESSAGE0:"I2C HSV color %1",MPYTHON_BLUEBIT_GET_COLOR_HSV_TOOLTIP:"HSV(Hue, Saturation, Value)",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_HELPURL:"",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_MESSAGE0:"I2C HSV color",MPYTHON_BLUEBIT_GET_ALL_COLOR_HSV_TOOLTIP:"HSV(Hue, Saturation, Value)",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_MESSAGE0:"I2C force sensor Dial code %1",MPYTHON_BLUEBIT_GET_FORCE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_MESSAGE0:"I2C current sensor Dial code %1",MPYTHON_BLUEBIT_GET_ELECTRICITY_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_MESSAGE0:"I2C voltage sensor Dial code %1",MPYTHON_BLUEBIT_GET_VOLTAGE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_MESSAGE0:"I2C magnetic sensor Dial code %1",MPYTHON_BLUEBIT_GET_MAGNETIC_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PH_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PH_MEASURE_MESSAGE0:"I2C PH sensor Dial code %1",MPYTHON_BLUEBIT_GET_PH_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_TDS_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_TDS_MEASURE_MESSAGE0:"I2C TDS sensor Dial code %1",MPYTHON_BLUEBIT_GET_TDS_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_MESSAGE0:"I2C Pressure sensor Dial code %1",MPYTHON_BLUEBIT_GET_PRESSURE_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_HELPURL:"",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_MESSAGE0:"I2C Photogate Timer sensor Dial code %1",MPYTHON_BLUEBIT_GET_PHOTOGATE_TIMER_MEASURE_TOOLTIP:"I2C Address Corresponds to the Requirements of Coding Switches",MPYTHON_RED:"red",MPYTHON_GREEN:"green",MPYTHON_BLUE:"blue",MPYTHON_MUSIC_PIN_P6:"default",MPYTHON_MUSIC_PIN_P6_HELPURL:"",MPYTHON_MUSIC_PIN_P6_MESSAGE0:"%1",MPYTHON_MUSIC_PIN_P6_TOOLTIP:"",MICROBIT_MUSIC_PLAY_BUILT_IN_MESSAGE0:"play music %1 wait %2 loop %3 Pin %4",MICROBIT_MUSIC_PLAY_BUILT_IN_TOOLTIP:"Play the built-in music, you can set the standby mode and loop playback.",MICROBIT_MUSIC_PLAY_BUILT_IN_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",MICROBIT_MUSIC_PITCH_MESSAGE0:"play tone %1 %2 delay %3 millisecond(s) at Pin %4",MICROBIT_MUSIC_PITCH_TOOLTIP:"Plays the tone for the set length of time.",MICROBIT_MUSIC_PITCH_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.pitch",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_MESSAGE0:"at Pin %5 play note list %1 wait %2 %3 loop %4",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_TOOLTIP:"Play a list of notes, such as C4:4, G4:8, etc., the notes are in string form, the default pin is P6 of the mPython board",MICROBIT_MUSIC_PLAY_LIST_OF_NOTES_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/buzz.html",MICROBIT_MUSIC_RESET_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",MICROBIT_MUSIC_RESET_MESSAGE0:"restore music settings",MICROBIT_MUSIC_RESET_TOOLTIP:"Restore all music settings (current beats, scales, and periods) to their default values.",MICROBIT_MUSIC_STOP_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.stop",MICROBIT_MUSIC_STOP_MESSAGE0:"stop playing music at Pin %1",MICROBIT_MUSIC_STOP_TOOLTIP:"The default pin is P6 of the mPython board",MICROBIT_MUSIC_SET_TEMPO_MESSAGE0:"set each beat equal to %1 notes, the number of beats per minute is %2",MICROBIT_MUSIC_SET_TEMPO_TOOLTIP:"Set the playback speed (beat). A certain number of tick represents a beat, the number of beats per minute per beat (BPM beats per minute).",MICROBIT_MUSIC_SET_TEMPO_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",MICROBIT_MUSIC_SET_TEMPO_SPEED_MESSAGE0:"set the playback speed to %1 times",MICROBIT_MUSIC_SET_TEMPO_SPEED_TOOLTIP:"The 4th note is 1 beat, and the number of beats per minute is 120 by default, which is 1 times the playback speed.",MICROBIT_MUSIC_SET_TEMPO_SPEED_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.set_tempo",MICROBIT_MUSIC_GET_TEMPO_MESSAGE0:"current beats",MICROBIT_MUSIC_GET_TEMPO_TOOLTIP:"Get current beats: Taps per beat, beats per minute (BPM).",MICROBIT_MUSIC_GET_TEMPO_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",MPYTHON_BLUEBIT_HUM_TEM_HELPURL:"",MPYTHON_BLUEBIT_HUM_TEM_TOOLTIP:"",MPYTHON_BLUEBIT_HUM_TEM_MESSAGE0:"I2C %1",MPYTHON_BLUEBIT_TEMPERATURE:"temperature",MPYTHON_BLUEBIT_HUMIDITY:"humidity",MPYTHON_UART_INIT_HELPURL:"",MPYTHON_UART_INIT_MESSAGE0:"initialize serial port %4 as baudrate %1 tx %2 rx %3",MPYTHON_UART_INIT_TOOLTIP:"mPython board supports 3 sets of serial ports. 0 for repl, remaining 1, 2 sets of serial ports available. All pins can be used as the input of serial port rx, except P2, p3, p4, p10 can only be used as input, and all the other pins can be used as output tx. in theory.",MPYTHON_UART_DEINIT_HELPURL:"",MPYTHON_UART_DEINIT_MESSAGE0:"close serial port %1",MPYTHON_UART_DEINIT_TOOLTIP:"Turn off the UART bus",MPYTHON_UART_WRITE_STR_HELPURL:"",MPYTHON_UART_WRITE_STR_MESSAGE0:"serial port %1 write string %2 %3",MPYTHON_UART_WRITE_STR_TOOLTIP:"Write a text to the bus. \nReturn value: The number of bytes to write or None to time out.",MPYTHON_UART_WRITE_HEX_HELPURL:"",MPYTHON_UART_WRITE_HEX_MESSAGE0:"serial port %1 write hex string %2 %3",MPYTHON_UART_WRITE_HEX_TOOLTIP:"",MPYTHON_UART_HAS_DATA_HELPURL:"",MPYTHON_UART_HAS_DATA_MESSAGE0:"serial port %1 has readable data",MPYTHON_UART_HAS_DATA_TOOLTIP:"Returns an integer that counts the number of characters that can be read without blocking. \n If there are no characters available, it will return 0, if there are characters, it will return a positive number. \n This method can return 1 even if there are multiple readable characters.",MPYTHON_UART_READLINE_HELPURL:"",MPYTHON_UART_READLINE_MESSAGE0:"serial port %1 read a line of data",MPYTHON_UART_READLINE_TOOLTIP:"Read a line and end with a newline character.\nReturn value: Read row or None timeout.",MPYTHON_UART_READ_HELPURL:"",MPYTHON_UART_READ_MESSAGE0:"serial port %1 read data",MPYTHON_UART_READ_TOOLTIP:"Read as much serial data as possible.\n Return value: A list of bytes containing the bytes read. Returns None if the read times out.",MPYTHON_UART_READ_LENGTH_HELPURL:"",MPYTHON_UART_READ_LENGTH_MESSAGE0:"serial port %1 read data with length as %2",MPYTHON_UART_READ_LENGTH_TOOLTIP:"Read the specified length bytes data.\n Return value: A list of bytes containing the bytes read. Returns None if the read times out.",MPYTHON_UART_WRITE_BYTE_HELPURL:"",MPYTHON_UART_WRITE_BYTE_MESSAGE0:"serial port %1 write a byte %2",MPYTHON_UART_WRITE_BYTE_TOOLTIP:"The parameter is a integer as 0~255\nWrite a byte to the bus. \nReturn value: The number of bytes to write or None to time out.",MPYTHON_UART_WRITE_BYTES_HELPURL:"",MPYTHON_UART_WRITE_BYTES_MESSAGE0:"serial port %1 write bytes %2",MPYTHON_UART_WRITE_BYTES_TOOLTIP:"Write some bytes to the bus. \nReturn value: The number of bytes to write or None to time out.",TEXT_FORMAT_MESSAGE0:"format string %1 % %2",TEXT_FORMAT_TOOLTIP:"",TEXT_FORMAT_HELPURL:"",TEXT_FORMAT2_MESSAGE0:"format string %1 with %2",TEXT_FORMAT2_TOOLTIP:"",TEXT_FORMAT2_HELPURL:"",MPYTHON_BAUDRATE_HELPURL:"",MPYTHON_BAUDRATE_MESSAGE0:"%1",MPYTHON_BAUDRATE_TOOLTIP:"",MPYTHON_HIGH_LOW_HELPURL:"",MPYTHON_HIGH_LOW_MESSAGE0:"%1",MPYTHON_HIGH_LOW_TOOLTIP:"",MPYTHON_TEN_CONVERT_TO_HELPURL:"",MPYTHON_TEN_CONVERT_TO_MESSAGE0:"decimal int num %1 converted to %2 string",MPYTHON_TEN_CONVERT_TO_TOOLTIP:"",MPYTHON_BIN:"BIN",MPYTHON_OCT:"OCT",MPYTHON_HEX:"HEX",MPYTHON_CONVERT_TO_TEN_HELPURL:"",MPYTHON_CONVERT_TO_TEN_MESSAGE0:"%1 string %2 converted to decimal int num",MPYTHON_CONVERT_TO_TEN_TOOLTIP:"",MPYTHON_TEN_CONVERTED_TO_BYTES_HELPURL:"",MPYTHON_TEN_CONVERTED_TO_BYTES_MESSAGE0:"decimal int num %2 converted to %1 bytes",MPYTHON_TEN_CONVERTED_TO_BYTES_TOOLTIP:"",MPYTHON_INT_TO_CHR_HELPURL:"",MPYTHON_INT_TO_CHR_MESSAGE0:"shaping number %1 converted to character in ASCII",MPYTHON_INT_TO_CHR_TOOLTIP:"ASCII is a computer coding system based on the Latin alphabet, mainly used to display modern English and other Western European languages",MPYTHON_STR_TO_HEX_HELPURL:"",MPYTHON_STR_TO_HEX_MESSAGE0:"string %1 converted to hex bytes",MPYTHON_STR_TO_HEX_TOOLTIP:"Returns two hexadecimal numbers separated by spaces in the result",MPYTHON_CHR_TO_INT_HELPURL:"",MPYTHON_CHR_TO_INT_MESSAGE0:"character in ASCII %1 converted to shaping number",MPYTHON_CHR_TO_INT_TOOLTIP:"ASCII is a computer coding system based on the Latin alphabet, mainly used to display modern English and other Western European languages",MPYTHON_HEX_TO_BIN_STR_HELPURL:"",MPYTHON_HEX_TO_BIN_STR_MESSAGE0:"hex string %1 converted to bin bytes",MPYTHON_HEX_TO_BIN_STR_TOOLTIP:"",MPYTHON_DATA_TO_BASE64_HELPURL:"",MPYTHON_DATA_TO_BASE64_MESSAGE0:"encoding data %1 in base64 and return byte object",MPYTHON_DATA_TO_BASE64_TOOLTIP:"Base64 encoding is a process from binary to character",MPYTHON_BASE64_TO_DATA_HELPURL:"",MPYTHON_BASE64_TO_DATA_MESSAGE0:"decoding base64 data %1 and return byte object",MPYTHON_BASE64_TO_DATA_TOOLTIP:"Base64 encoding is a process from binary to character",MPYTHON_UJSON_DUMPS_HELPURL:"",MPYTHON_UJSON_DUMPS_MESSAGE0:"%1 converted to json string",MPYTHON_UJSON_DUMPS_TOOLTIP:"Key in json format must be a string, and value can be a legitimate json data type (string, number, object, array, Boolean, or none",MPYTHON_UJSON_LOADS_HELPURL:"",MPYTHON_UJSON_LOADS_MESSAGE0:"parse json string %1 and return the object",MPYTHON_UJSON_LOADS_TOOLTIP:"Key in json format must be a string, and value can be a legitimate json data type (string, number, object, array, Boolean, or none",MPYTHON_SETS_PIN_MODE_HELPURL:"https://mpython.readthedocs.io/zh/master/board/hardware.html#mpythonpindesc",MPYTHON_SETS_PIN_MODE_TOOLTIP:"Right-click help to view the pin declaration",MPYTHON_SETS_PIN_MODE_MESSAGE0:"set pin %1 as %2 mode %3 and set the value to %4",MPYTHON_SET_PIN_IN:"input",MPYTHON_SET_PIN_PUSH_PULL_OUT:"Push-pull output",MPYTHON_SET_PIN_LEAKY_OUT:"Leaky output",MPYTHON_SET_PIN_NO_PULL:"no pull",MPYTHON_SET_PIN_DOWN_PULL:"pull down",MPYTHON_SET_PIN_UP_PULL:"pull up",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_HELPURL:"",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_MESSAGE0:"thread lock object %1 requests lock",MPYTHON_LOCK_OBJECT_ACQUIRE_LOCK_TOOLTIP:"",MPYTHON_START_NEW_THREAD_HELPURL:"",MPYTHON_START_NEW_THREAD_MESSAGE0:"thread %1",MPYTHON_START_NEW_THREAD_TOOLTIP:"",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL:"",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0:"custom terminal widget on virtual pin V %1",MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP:"",MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL:"",MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0:"synchronizing the status of virtual pin V %1",MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP:"",MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL:"",MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0:"when Blynk disconnected",MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP:"",MPYTHON_BLYNK_ON_CONNECTED_HELPURL:"",MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0:"when Blynk connected",MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP:"",MPYTHON_BLYNKTIMER_RUN_HELPURL:"",MPYTHON_BLYNKTIMER_RUN_MESSAGE0:"run the BlynkTimer processes",MPYTHON_BLYNKTIMER_RUN_TOOLTIP:"It is recommended to put this block in 'repeat forever' block",MPYTHON_BLYNK_RUN_HELPURL:"",MPYTHON_BLYNK_RUN_MESSAGE0:"run the Blynk processes",MPYTHON_BLYNK_RUN_TOOLTIP:"It is recommended to put this block in 'repeat forever' block",MPYTHON_BLYNK_APP_NOTIFY_HELPURL:"",MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0:"Blynk APP notifies %1",MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP:"",MPYTHON_BLYNKTIMER_HELPURL:"",MPYTHON_BLYNKTIMER_MESSAGE0:"BlynkTimer number %1 mode %2 period %3 seconds",MPYTHON_BLYNKTIMER_TOOLTIP:'Note:\nthe serial number of the timer is automatically obtained, from top to bottom, starting from 0 and continuous, don`t do this"timer 0, timer 2", the exposed serial number parameter is convenient to view here!\nParameter:\nno_timers_err=False - disable exception raise if all all timers were stopped',MPYTHON_BLYNK_STOP_TIMERS_HELPURL:"",MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0:"stop Blynk timer %1",MPYTHON_BLYNK_STOP_TIMERS_TOOLTIP:'Note:\nthe serial number of the timer is automatically obtained, from top to bottom, starting from 0 and continuous, don`t do this"timer 0, timer 2", the exposed serial number parameter is convenient to view here!\nParameter:\nno_timers_err=False - disable exception raise if all all timers were stopped',MPYTHON_UART_INPUT_HELPURL:"",MPYTHON_UART_INPUT_MESSAGE0:"get input text from serial port, title %1",MPYTHON_UART_INPUT_TOOLTIP:"",MPYTHON_BLYNK_SET_PROPERTY_HELPURL:"",MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0:"set property %1 and value %2 to virtual pin",MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP:"Placed in a read or write event, the virtual pin is determined by the event,the component bound to the pin will have the added property",MPYTHON_BLYNK_EMAIL_HELPURL:"",MPYTHON_BLYNK_EMAIL_MESSAGE0:"email to pre-set email address with %1 subject %2 body %3",MPYTHON_BLYNK_EMAIL_TOOLTIP:"",MPYTHON_BLYNK_GET_TIMERS_HELPURL:"",MPYTHON_BLYNK_GET_TIMERS_MESSAGE0:"available Blynk timers",MPYTHON_BLYNK_GET_TIMERS_TOOLTIP:"",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL:"",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0:"send data %1 to Blynk APP's virtual pin V %2",MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP:"virtual pin: V0 ~ V255",MPYTHON_BLYNK_APP_DATA_HELPURL:"",MPYTHON_BLYNK_APP_DATA_MESSAGE0:"when received value %2 of virtual pin V %1 from Blynk",MPYTHON_BLYNK_APP_DATA_TOOLTIP:"Virtual pin: V0 ~ V255",MPYTHON_BLYNK_RECEIVED_MESSAGE0:"when received value of virtual pin V %1 from Blynk",MPYTHON_BLYNK_VALUE_MESSAGE0:"value from Blynk",MPYTHON_BLYNK_VALUE_TOOLTIP:"",MPYTHON_BLYNK_VALUE_HELPURL:"",MPYTHON_BLYNK_SETUP_HELPURL:"",MPYTHON_BLYNK_SETUP_MESSAGE0:"Blynk Settings %1 server %2 port %3 authorization code %4",MPYTHON_BLYNK_SETUP_TOOLTIP:'The server can be set to "blynk-cloud.com" or "blynk.mpython.cn"\n The default port is 8080\n Note: The mobile APP access port is 9443.',INT_TO_CHR_HELPURL:"",INT_TO_CHR_MESSAGE0:"int %1 to ASCII single character",INT_TO_CHR_TOOLTIP:"",a123_HELPURL:"",a123_MESSAGE0:"新 %1",a123_TOOLTIP:"",MPYTHON_ONENET_DISCONNECT_MESSAGE0:"disconnect from OneNET",MPYTHON_ONENET_DISCONNECT_TOOLTIP:"",MPYTHON_ONENET_DISCONNECT_HELPURL:"",MPYTHON_ONENET_MSG_MESSAGE0:"message from OneNET",MPYTHON_ONENET_MSG_TOOLTIP:"",MPYTHON_ONENET_MSG_HELPURL:"",MPYTHON_ONENET_RECV_MESSAGE0:"when received message %1 from OneNET",MPYTHON3_ONENET_RECV_MESSAGE0:"when received message from OneNET",MPYTHON_ONENET_RECV_TOOLTIP:"",MPYTHON_ONENET_RECV_HELPURL:"",MPYTHON_ONENET_RECV_MSG_MESSAGE0:"when received specific message %1 from OneNET",MPYTHON_ONENET_RECV_MSG_TOOLTIP:"",MPYTHON_ONENET_RECV_MSG_HELPURL:"",MPYTHON_ONENET_PUB_VALUE_MESSAGE0:"publish data to OneNET, name %1 value %2",MPYTHON_ONENET_PUB_VALUE_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE_HELPURL:"",MPYTHON_ONENET_PUB_DICT_MESSAGE0:"publish data to OneNET %1",MPYTHON_ONENET_PUB_DICT_TOOLTIP:"",MPYTHON_ONENET_PUB_DICT_HELPURL:"",MPYTHON_HCSR04_DISTANCE_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_DISTANCE_MESSAGE0:"%1 hcsr04 untrasonic distance, unit %2",MPYTHON_HCSR04_DISTANCE_TOOLTIP:"",MPYTHON_HCSR04_DISTANCE_MM_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_DISTANCE_MM_MESSAGE0:"%1 hcsr04 untrasonic(mm)",MPYTHON_HCSR04_DISTANCE_MM_TOOLTIP:"",MPYTHON_HCSR04_OBJ_HELPURL:"https://mpython-lib.readthedocs.io/zh/master/hcsr04/index.html#hcsr04",MPYTHON_HCSR04_OBJ_MESSAGE0:"Hcsr04 ultrasonic initialize name %1 trigger %2 echo %3",MPYTHON_HCSR04_OBJ_TOOLTIP:"",MPYTHON_PM2_5_LitresAir_HELPURL:"",MPYTHON_PM2_5_LitresAir_MESSAGE0:"RX pin %1 Number of particles with diameter of %2 in 0.1 liter air",MPYTHON_PM2_5_LitresAir_TOOLTIP:"",MPYTHON_PM2_5_MIC_HELPURL:"",MPYTHON_PM2_5_MIC_MESSAGE0:"RX pin %1 PM value concentration %2",MPYTHON_PM2_5_MIC_TOOLTIP:"",MPYTHON3_IR_REMOTE_RECV_MESSAGE0:"when infrared receiver %1 received message %2 do %3",MPYTHON_IR_REMOTE_ADDRESS_MESSAGE0:"callback address",MPYTHON_IR_REMOTE_MESSAGE_MESSAGE0:"received message",MPYTHON_IR_REMOTE_RECV_MESSAGE0:"infrared receive %1 callback address %2 callback command %3",MPYTHON_IR_REMOTE_RECV_HELPURL:"",MPYTHON_IR_REMOTE_RECV_TOOLTIP:"",MPYTHON_IR_REMOTE_SEND_MESSAGE0:"infrared send %1 address %2 command %3",MPYTHON_IR_REMOTE_SEND_HELPURL:"",MPYTHON_IR_REMOTE_SEND_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE2_MESSAGE0:"publish data to Wechat app, name %1 value %2",MPYTHON_ONENET_PUB_VALUE2_TOOLTIP:"",MPYTHON_ONENET_PUB_VALUE2_HELPURL:"",MPYTHON_ONENET_ACCEPT_MESSAGE:"If received message",MPYTHON_ONENET:"OneNET settings",MPYTHON_ONENET_WECHAT_APP:"Wechat app settings",MPYTHON_ONENET_OPTION_BOARDS:"optional mPython boards",MPYTHON_ONENET_TITLE:"OneNET",MPYTHON_SERVER:"server",MPYTHON_DEVICE_ID:"device_id",MPYTHON_PRODUCT_ID:"product_id",MPYTHON_API_KEY:"product_APIKey",MPYTHON_TOPIC:"topic",MPYTHON_ONENET_CALLBACK:"Callback function",MPYTHON_ONENET_CALLBACK_TITLE:"OneNET callback",MPYTHON_ONENET_OPTION_BOARDS_HELPURL:"",MPYTHON_ONENET_OPTION_BOARDS_MESSAGE0:"choose mPython App %1 in WeChat App",MPYTHON_ONENET_OPTION_BOARDS_TOOLTIP:"",TEXT_TO_BYTE_MESSAGE0:"convert %1 to bytes",TEXT_TO_BYTE_TOOLTIP:"Supported data type as string",TEXT_TO_BYTE_HELPURL:"",OTHER_TO_BYTE_MESSAGE0:"convert Non-text %1 to bytes",OTHER_TO_BYTE_TOOLTIP:"",OTHER_TO_BYTE_HELPURL:"",MPYTHON_BYTES_DECODE_HELPURL:"",MPYTHON_BYTES_DECODE_MESSAGE0:"convert bytes %1 to string",MPYTHON_BYTES_DECODE_TOOLTIP:"",MPYTHON_ONENET_TOOLTIP:"Create a OneNET connection",MPYTHON_ONENET_INIT_WIFI_MESSAGE0:"IoT make sure to connect to Wi-Fi with SSID %1 & Password %2",MPYTHON_ONENET_INIT_WIFI_TOOLTIP:"Let the board access the Wi-Fi environment",MPYTHON_ONENET_INIT_WIFI_HELPURL:"",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_HELPURL:"",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_MESSAGE0:"when receives %1 and %2 from WeChat App",MPYTHON_ONENET_RECV_FROM_WECHAT_APP_TOOLTIP:"",MPYTHON_MAC_ADDRESS_HELPURL:"",MPYTHON_MAC_ADDRESS_MESSAGE0:"MAC Address",MPYTHON_MAC_ADDRESS_TOOLTIP:"",MPYTHON_RADIO_REC_HELPURL:"",MPYTHON_RADIO_REC_MESSAGE0:"radio received",MPYTHON_RADIO_REC_TOOLTIP:"received data is bytes",MPYTHON_RADIO_SEND_HELPURL:"",MPYTHON_RADIO_SEND_MESSAGE0:"radio sends %1",MPYTHON_RADIO_SEND_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_CHANNEL_HELPURL:"",MPYTHON_RADIO_CHANNEL_MESSAGE0:"set radio channel %1",MPYTHON_RADIO_CHANNEL_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_ON_OFF_HELPURL:"",MPYTHON_RADIO_ON_OFF_MESSAGE0:"%1 radio",MPYTHON_RADIO_ON_OFF_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_MSG_MESSAGE0:"message from Radio",MPYTHON_RADIO_MSG_TOOLTIP:"",MPYTHON_RADIO_MSG_HELPURL:"",MPYTHON3_RADIO_RECV_MESSAGE0:"when receiving broadcast message from Radio %1 do %2",MPYTHON_RADIO_RECV_MESSAGE0:"when receiving broadcast message %1 from Radio",MPYTHON_RADIO_RECV_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_RECV_HELPURL:"",MPYTHON_RADIO_RECV_MSG_MESSAGE0:"when receiving specific broadcast message %1 from Radio %2 do %3",MPYTHON_RADIO_RECV_MSG_TOOLTIP:"channel: 1~13",MPYTHON_RADIO_RECV_MSG_HELPURL:"",MPYTHON_UDP_INIT_HELPURL:"",MPYTHON_UDP_INIT_MESSAGE0:"connect to UDP",MPYTHON_UDP_INIT_TOOLTIP:"base on Wi-Fi",MPYTHON_UDP_SEND_HELPURL:"",MPYTHON_UDP_SEND_MESSAGE0:"UDP send message %1 to all",MPYTHON_UDP_SEND_TOOLTIP:"",MPYTHON_UDP_SENDTO_HELPURL:"",MPYTHON_UDP_SENDTO_MESSAGE0:"UDP send message %1 to %2 port %3",MPYTHON_UDP_SENDTO_TOOLTIP:"",MPYTHON_UDP_RECV_HELPURL:"",MPYTHON_UDP_RECV_MESSAGE0:"UDP receive message",MPYTHON_UDP_RECV_TOOLTIP:"",MPYTHON_UDP_RECV_EVENT_HELPURL:"",MPYTHON_UDP_RECV_EVENT_MESSAGE0:"when received message from UDP %1 do %2",MPYTHON_UDP_RECV_EVENT_TOOLTIP:"",MPYTHON_UDP_RECV_MSG_MESSAGE0:"message from UDP",MPYTHON_UDP_RECV_MSG_TOOLTIP:"",MPYTHON_UDP_RECV_MSG_HELPURL:"",MPYTHON_DISPCHAR_MODE_1:"normal",MPYTHON_DISPCHAR_MODE_2:"rev",MPYTHON_DISPCHAR_MODE_3:"trans",MPYTHON_AUDIO_XUNFEI_TTS_HELPURL:"",MPYTHON_AUDIO_XUNFEI_TTS_MESSAGE0:"TTS play text %1",MPYTHON_AUDIO_XUNFEI_TTS_TOOLTIP:'The "Online Speech Synthesis" service needs to be enabled on the "Xunfei Open Platform" www.xfyun.cn',MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_HELPURL:"https://mpython.readthedocs.io/zh/master/extboard/tutorials/tutorials_parrot.html#id3",MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_MESSAGE0:"TTS config APPID %1 APIKey %2",MPYTHON_AUDIO_XUNFEI_TTS_CONFIG_TOOLTIP:'Enter the APPID and APIKey obtained on the "Xunfei Open Platform" www.xfyun.cn\nNote: To set the IP whitelist',MPYTHON_AUDIO_PLAY_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",MPYTHON_AUDIO_PLAY_MESSAGE0:"Audio play %1",MPYTHON_AUDIO_PLAY_TOOLTIP:"Need active speakers\nP8 left channel\nP9 right channel\nGND ground\nparameter: \n the url of the network mp3, or the mp3 that has been uploaded to the mPython board, e.g 'music_1.mp3'",MPYTHON_AUDIO_PLAY_CHOOSE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/audio.html#id1",MPYTHON_AUDIO_PLAY_CHOOSE_MESSAGE0:"Audio play %1",MPYTHON_AUDIO_PLAY_CHOOSE_TOOLTIP:"Need active speakers\nP8 left channel\nP9 right channel\nGND ground\nparameter: \n the url of the network mp3, or the mp3 that has been uploaded to the mPython board, e.g 'music_1.mp3'",MPYTHON_AUDIO_DEINIT_HELPURL:"",MPYTHON_AUDIO_DEINIT_MESSAGE0:"deinit Audio",MPYTHON_AUDIO_DEINIT_TOOLTIP:"Create a cache for controlling the audio decoding",MPYTHON_AUDIO_CMD_HELPURL:"",MPYTHON_AUDIO_CMD_MESSAGE0:"Audio %1",MPYTHON_AUDIO_CMD_TOOLTIP:"",MPYTHON_AUDIO_INIT_HELPURL:"",MPYTHON_AUDIO_INIT_MESSAGE0:"initialize Audio",MPYTHON_AUDIO_INIT_TOOLTIP:"Create a cache for controlling the audio decoding",MPYTHON_AUDIO_START_RECORDING_HELPURL:"",MPYTHON_AUDIO_START_RECORDING_MESSAGE0:"Start the recording The recording time %1 seconds",MPYTHON_AUDIO_START_RECORDING_TOOLTIP:"Need mPython board v1.1 or above hardware version.The recording should not be longer than 5 seconds",MPYTHON_AUDIO_RECORDING_RESULT_HELPURL:"",MPYTHON_AUDIO_RECORDING_RESULT_MESSAGE0:"Recording the results",MPYTHON_AUDIO_RECORDING_RESULT_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_AUDIO_DISCERN_RECORDING_HELPURL:"",MPYTHON_AUDIO_DISCERN_RECORDING_MESSAGE0:"For %1 Discern",MPYTHON_AUDIO_DISCERN_RECORDING_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_HELPURL:"",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_MESSAGE0:"Discern Recording the results",MPYTHON_AUDIO_DISCERN_RECORDING_RESULT_TOOLTIP:"Need mPython board v1.1 or above hardware version.",MPYTHON_RECORD_INIT_HELPURL:"",MPYTHON_RECORD_INIT_MESSAGE0:"initialize Recording",MPYTHON_RECORD_INIT_TOOLTIP:"Recording initialization.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_RECORD_DEINIT_HELPURL:"",MPYTHON_RECORD_DEINIT_MESSAGE0:"Trelease cache of Recording",MPYTHON_RECORD_DEINIT_TOOLTIP:"Release the cache after the recording ends.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_RECORD_WAV_HELPURL:"",MPYTHON_RECORD_WAV_MESSAGE0:"record audio with storage path %1 and duration %2 second(s)",MPYTHON_RECORD_WAV_TOOLTIP:"Record audio and store it in *.wav format.\nNeed mPython board v1.1 or above hardware version.",MPYTHON_ASR_HELPURL:"",MPYTHON_ASR_MESSAGE0:"get voice command within %1 seconds",MPYTHON_ASR_TOOLTIP:"Can recognize voice command within 3 seconds.\nNeed mPython board v1.1 or above hardware version.",mpython_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_button_A:"P5 (button A)",mpython_button_B:"P11 (button B)",mpython_PIN7_RGB:"P7 (Onboard RGB)",MPYTHON_PWM_PIN_P7:"P7 (mPython board)",MPYTHON_PWM_PIN_P9:"P9 (mPython box)",mpython_tem:"temperature",mpython_hum:"humidity",mpython_pre:"air pressure",mpython_left_right:"left-right",mpython_front_back:"front-back",mpython_vertical:("vertical","vertical"),mpython_horizontal:("horizontal","horizontal"),mpython_run_in_back:"background",mpython_run_in_front:"foreground",mpython_draw:"draw",mpython_clear:"clear",mpython_s:"second",mpython_ms:"millisecond",mpython_us:"microsecond",mpython_year:"year",mpython_month:"month",mpython_date:"day",mpython_hour:"hour",mpython_minute:"minute",mpython_week:"week number",mpython_days:"days number",MPYTHON_ORDER:"#",MPYTHON_REVERSE_ORDER:"countdown #",MATH_RANDOM_RANDRANGE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MATH_RANDOM_RANDRANGE_TOOLTIP:"Returns a random number in the specified incremental cardinality set, the base value defaults to 1",MATH_RANDOM_RANDRANGE_MESSAGE0:"random number increments from increment interval [%1 , %2) by step %3",MATH_KEEP_DECIMAL_HELPURL:"",MATH_KEEP_DECIMAL_TOOLTIP:"",MATH_KEEP_DECIMAL_MESSAGE0:"%1 keep %2 decimal places",MPYTHON_MIN:"min value",MPYTHON_MAX:"max value",MPYTHON_LENTH:"length",TUPLE_MIN_MAX_LEN_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_MIN_MAX_LEN_TOOLTIP:"",TUPLE_MIN_MAX_LEN_MESSAGE0:"tuple %1 %2",TUPLE_ITEM_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_ITEM_EXIST_TOOLTIP:"",TUPLE_ITEM_EXIST_MESSAGE0:"tuple %1 include %2",LIST_ITEM_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_ITEM_EXIST_TOOLTIP:"",LIST_ITEM_EXIST_MESSAGE0:"list %1 include %2",PARTS_OF_TUPLE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_TUPLE_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",PARTS_OF_TUPLE_MESSAGE0:"return tuple %1 from the %2 to the last item",PARTS_OF_TUPLE2_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_TUPLE2_TOOLTIP:"Incremental order fetching \n Example: \n reciprocal number 5 to reciprocal number 2; \n 0th to 5th",PARTS_OF_TUPLE2_MESSAGE0:"return tuple %1 takes %2 %3 items to %4 %5 items",PARTS_OF_LIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",PARTS_OF_LIST_TOOLTIP:"Incremental order fetching \n Example: \n reciprocal number 5 to reciprocal number 2; \n 0th to 5th",PARTS_OF_LIST_MESSAGE0:"return list %1 takes %2 %3 items to %4 %5 items",LIST_TO_TUPLE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_TO_TUPLE_TOOLTIP:"",LIST_TO_TUPLE_MESSAGE0:"list %1 conversion to tuple",tuple_create_with_MESSAGE0:"define tuple %1 = %2 ",tuple_create_with_TOOLTIP:"When you only have one element, you need to add a comma after the element",tuple_create_with_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",tuple_order_item_MESSAGE0:"tuple %1 %2 %3 item",tuple_order_item_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",tuple_order_item_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LIST_ORDER_ITEM_MESSAGE0:"list %1 %2 %3 item",LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_LIST_ORDER_ITEM_MESSAGE0:"set list %1 %2 %3 item as %4",SET_LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",INSERT_LIST_ORDER_ITEM_MESSAGE0:"insert list %1 %2 %3 item as %4",INSERT_LIST_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",INSERT_LIST_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_TUPLE_ORDER_ITEM_MESSAGE0:"set tuple %1 %2 %3 item as %4",SET_TUPLE_ORDER_ITEM_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_TUPLE_ORDER_ITEM_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_TOOLTIP:"",DICT_CREATE_WITH_MESSAGE0:"define dictionary %1 = %2",SET_CREATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_CREATE_WITH_TOOLTIP:"",SET_CREATE_WITH_MESSAGE0:"define set %1 = %2",SET_UPDATE_WITH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_UPDATE_WITH_TOOLTIP:"Add parameters as strings, lists, tuples, sets, dictionaries (add only key). For existing elements, do not do anything",SET_UPDATE_WITH_MESSAGE0:"update set %1 with %2",INTERSECTION_OF_SETS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",INTERSECTION_OF_SETS_TOOLTIP:"",INTERSECTION_OF_SETS_MESSAGE0:"%1 of set %2 and set %3",MPYTHON_INTERSECTION:"intersection",MPYTHON_UNION:"union",MPYTHON_DIFFERENCE:"difference",SETS_UPDATE_WAYS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SETS_UPDATE_WAYS_TOOLTIP:"",SETS_UPDATE_WAYS_MESSAGE0:"update set %1 as the %3 with set %2",SUBSET_SUPERSET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SUBSET_SUPERSET_TOOLTIP:"",SUBSET_SUPERSET_MESSAGE0:"set %1 is %3 of set %2",MPYTHON_SUBSET:"subset",MPYTHON_SUPERSET:"superset",GET_SETS_POP_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",GET_SETS_POP_TOOLTIP:"",GET_SETS_POP_MESSAGE0:"return a random item from the set %1, and remove it",LEN_OF_SETS_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",LEN_OF_SETS_TOOLTIP:"",LEN_OF_SETS_MESSAGE0:"length of set %1",CREATE_EMPTY_SET_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",CREATE_EMPTY_SET_TOOLTIP:"",CREATE_EMPTY_SET_MESSAGE0:"create empty sets %1",BIT_INVERSION_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",BIT_INVERSION_TOOLTIP:"Reverse each binary bit of data",BIT_INVERSION_MESSAGE0:"invert each binary bit of the data %1",TUPLE_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",TUPLE_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"The sequence count starts from 0, and the reverse count starts from 1.",SET_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",SET_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"Items can be strings, assigned variables, tuples",DICT_CREATE_WITH_ITEMS_INSERT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_CREATE_WITH_ITEMS_INSERT_TOOLTIP:"",DICT_KEY_VALUE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_VALUE_TOOLTIP:"",DICT_KEY_VALUE_MESSAGE0:"value of the key %2 in dictionary %1",ADD_DICT_KEY_VALUE_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",ADD_DICT_KEY_VALUE_TOOLTIP:"Update the key if the key already exists",ADD_DICT_KEY_VALUE_MESSAGE0:"add key %2 & value %3 to dictionary %1",DICT_LENGTH_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_LENGTH_TOOLTIP:"",DICT_LENGTH_MESSAGE0:"length of dictionary %1",DICT_KEY_EXIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_EXIST_TOOLTIP:"",DICT_KEY_EXIST_MESSAGE0:"dictionary %1 include key %2",DICT_KEY_OR_VAL_LIST_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",DICT_KEY_OR_VAL_LIST_TOOLTIP:"",DICT_KEY_OR_VAL_LIST_MESSAGE0:"list of %2 in dictionary %1",DICT_KEYS:"KEY",DICT_VALUES:"VALUE",mpython_lists_append_MESSAGE0:"add item %2 at the end of list %1",mpython_lists_append_TOOLTIP:"",mpython_lists_append_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_lists_extend_MESSAGE0:"list %1 append list %2",mpython_lists_extend_TOOLTIP:"",mpython_lists_extend_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_lists_clear_MESSAGE0:"clear list %1",mpython_lists_clear_TOOLTIP:"",mpython_lists_clear_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MPYTHON_REMOVE_REPETITION_MESSAGE0:"list%1 remove repetition",MPYTHON_REMOVE_REPETITION_TOOLTIP:"",MPYTHON_REMOVE_REPETITION_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_Timer_value_MESSAGE0:"timer %1 count value",mpython_Timer_value_TOOLTIP:"Get and return the current count value of the timer",mpython_Timer_deinit_MESSAGE0:"clear timer / event %1",mpython_Timer_deinit_TOOLTIP:"Cancel the initialization of the timer. Stop timer and disable timer peripherals",mpython_Interrupt_AB_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/buttons.html#id3",mpython_Interrupt_AB_TOOLTIP:"",mpython_Interrupt_AB_MESSAGE0:"when the button %1 is %2",mpython_Interrupt_pin_HELPURL:"https://mpython.readthedocs.io/zh/latest/tutorials/basics/io/digital_io.html#id3",mpython_Interrupt_pin_TOOLTIP:"Rising edge trigger: from low level to high level; falling edge trigger: from high level to low level",mpython_Interrupt_pin_MESSAGE0:"when pin %1 level is from %2",mpython_Interrupt_pin_IRQ_FALLING:"↘ high to low",mpython_Interrupt_pin_IRQ_RISING:"↗ low to high",mpython_IRQ_FALLING:"pressed",mpython_IRQ_RISING:"released",mpython_PERIODIC:"repeated mode",mpython_ONE_SHOT:"delayed mode",MPYTHON_IS_SHAKED_MESSAGE0:"the board %1",MPYTHON_IS_SHAKED_HELPURL:"",MPYTHON_IS_SHAKED_TOOLTIP:"",MPYTHON_IS_SHAKED:"was shaked",MPYTHON_IS_THROWN:"was thrown",MPYTHON_SHAKE_DETECTOR_MESSAGE0:"when the board %1",MPYTHON_SHAKE_DETECTOR_HELPURL:"",MPYTHON_SHAKE_DETECTOR_TOOLTIP:"",MPYTHON_IS_TILTED_MESSAGE0:"the board is %1",MPYTHON_IS_TILTED_HELPURL:"",MPYTHON_IS_TILTED_TOOLTIP:"",MPYTHON_TILT_DETECTOR_MESSAGE0:"when the board is %1",MPYTHON_TILT_DETECTOR_HELPURL:"",MPYTHON_TILT_DETECTOR_TOOLTIP:"",MPYTHON_DIRECTION_FORWARD:"tilt forward",MPYTHON_DIRECTION_BACK:"tilt back",MPYTHON_DIRECTION_RIGHT:"tilt right",MPYTHON_DIRECTION_LEFT:"tilt left",MPYTHON_DIRECTION_NONE:"flat",MPYTHON_TOUCH_EVENT_MESSAGE0:"when the touchpad %1 is %2",MPYTHON_TOUCH_EVENT_HELPURL:"",MPYTHON_TOUCH_EVENT_TOOLTIP:"",MPYTHON_TOUCH_EVENT_PRESSED:"pressed",MPYTHON_TOUCH_EVENT_UNPRESSED:"unpressed",MPYTHON_CUSTOM_EVENT_MESSAGE0:"event %1 : when %2",MPYTHON_CUSTOM_EVENT_HELPURL:"",MPYTHON_CUSTOM_EVENT_TOOLTIP:"Custom events use port 1/2/4/7/8/9/10, shared with Timers, cannot access one port at the same time.\nMax up to 4 events/timers at the same time.\nIf there is conflict, try changing the number.",mpython_music_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_music_range_pitch_TOOLTIP:"duration is the length of a single frequency",mpython_music_range_pitch_MESSAGE0:"play tone from %1 to %2 step %3 duration %4 ms Pin %5",mpython_neopixel_init_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_neopixel_init_TOOLTIP:"",mpython_neopixel_init_MESSAGE0:"initialize light strip with Name %1 Pin %2 Quantity %3",MPYTHON_NEOPIXEL_RAINBOW_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",MPYTHON_NEOPIXEL_RAINBOW_TOOLTIP:"",MPYTHON_NEOPIXEL_RAINBOW_MESSAGE0:"define rainbow effect of light strip with Name %1 Quantity %2 bright %3 offset %4",MPYTHON_NEOPIXEL_BRIGHTNESS_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/neopixel.html#NeoPixel.brightness",MPYTHON_NEOPIXEL_BRIGHTNESS_TOOLTIP:"Adjust the brightness range of 0 to 100",MPYTHON_NEOPIXEL_BRIGHTNESS_MESSAGE0:"light strip %1 set brightness as %2",mpython_neopixel_single_TOOLTIP:"",mpython_neopixel_single_MESSAGE0:"light strip %1 # %2 R %3 G %4 B %5",mpython_neopixel_single_gui_MESSAGE0:"light strip %1 # %2 color as %3",mpython_neopixel_single_gui_TOOLTIP:"",mpython_neopixel_show_TOOLTIP:"",mpython_neopixel_show_MESSAGE0:"light strip %1 setting take effect",mpython_neopixel_off_TOOLTIP:"",mpython_neopixel_off_MESSAGE0:"light strip %1 off",mpython_neopixel_all_TOOLTIP:"",mpython_neopixel_all_MESSAGE0:"light strip %1 full bright R %2 G %3 B %4",mpython_neopixel_all_gui_TOOLTIP:"",mpython_neopixel_all_gui_MESSAGE0:"light strip %1 full bright with color %2",mpython_time_localtime_MESSAGE0:"local time %1",mpython_time_localtime_TOOLTIP:"Week number: return 0 to 6, Monday is 0, Sunday is 6\nDays number: return the position of the day in the year\nIt is recommended to connect wifi and get network time first.",mpython_WiFi_config_MESSAGE0:"Wi-Fi configuration information %1",mpython_WiFi_config_TOOLTIP:"",mpython_time_ticks_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/mPythonX.html",mpython_time_ticks_MESSAGE0:"run time %1",mpython_time_ticks_TOOLTIP:"",MPYTHON_TIMER_DEF_MESSAGE0:"define timer %1",MPYTHON_TIMER_INIT_MESSAGE0:"init timer %1 %2 , cycle %3 millisecond(s)",mpython_Timer_MESSAGE0:"set timer %1 %2 , cycle %3 millisecond(s)",mpython_Timer_TOOLTIP:"Create timer n, n=1-14.\nMax up to 4 timers at the same time.\nIf there is conflict, try changing the number.\n3 for internal program,\n5/6 for servo system and ADC,\n11 is used for shaked event,\n12 is used for touchpad event,\n13 is used for Radio or DHT11/DHT22 timing value,\n14 is used for OneNET or tilt detection,\nothers ports are shared with custom events.",mpython_Timer_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/blocks/index.html",mpython_init_bluetooth_MESSAGE0:"Initialize Bluetooth Name %1",mpython_init_bluetooth_TOOLTIP:"Initialize Bluetooth Name",mpython_OnOff_bluetooth_MESSAGE0:"Bluetooth device %1 broadcasting",mpython_OnOff_bluetooth_TOOLTIP:"Bluetooth devices turn on or off broadcasting",mpython_HID_consumer_bluetooth_MESSAGE0:"HID Consumption Equipment%1 Status%2",mpython_HID_consumer_bluetooth_TOOLTIP:"Controllers that simulate HID consumer devices, such as Bluetooth remote controls",mpython_HID_mouse_bluetooth_MESSAGE0:"HID Mouse button%1",mpython_HID_mouse_bluetooth_TOOLTIP:"HID Mouse button",mpython_HID_mouse_pointer_bluetooth_MESSAGE0:"Mouse pointer movement x%2 y%1",mpython_HID_mouse_pointer_bluetooth_TOOLTIP:"Relative Displacement of Mouse Pointer Coordinates X and Y,Range -1023 ~ 1023",mpython_HID_release_mouse_bluetooth_MESSAGE0:"Mouse Release Key",mpython_HID_release_mouse_bluetooth_TOOLTIP:"Mouse device",mpython_HID_keyboard_bluetooth_MESSAGE0:"HID Keyboard device keys%1",mpython_HID_keyboard_bluetooth_TOOLTIP:"HID keyboard equipment",mpython_HID_keyboard_group_bluetooth_MESSAGE0:"HID device keys%1 combination keys%2",mpython_HID_keyboard_group_bluetooth_TOOLTIP:'If you want to use multiple keystrokes to combine instructions, you can use "|" or arithmetic',mpython_HID_keyboard_part_bluetooth_MESSAGE0:"HID Device combination key%1",mpython_HID_keyboard_part_bluetooth_TOOLTIP:'If you want to use multiple key combinations of instructions, you can use "|" or operation',mpython_HID_release_keyboard_bluetooth_MESSAGE0:"Keyboard Release Key",mpython_HID_release_keyboard_bluetooth_TOOLTIP:"Keyboard equipment",mpython_init_wifi_MESSAGE0:"connect to Wi-Fi with SSID %1 & Password %2",mpython_init_wifi_TOOLTIP:"Let the board access the Wi-Fi environment",MPYTHON_WIFI_IFCONFIG_MESSAGE0:"Wi-Fi set static IP %1 IP address %2 netmask %3 gateway %4 DNS %5",MPYTHON_WIFI_IFCONFIG_TOOLTIP:"",MPYTHON_WIFI_IFCONFIG_HELPURL:"",mpython_dis_WiFi_MESSAGE0:"disconnect Wi-Fi connection",mpython_dis_WiFi_TOOLTIP:"",MPYTHON_ENABLE_APWIFI_HELPURL:"https://mpython.readthedocs.io/zh/master/tutorials/basics/network/network_basics.html#ap",MPYTHON_ENABLE_APWIFI_TOOLTIP:"The password can be empty or alphanumeric with more than 8 digits.\nAP mode is only used for communication between the control boards. It cannot be used as a hotspot to make other devices access the Internet.",MPYTHON_ENABLE_APWIFI_MESSAGE0:"open AP mode with SSID %1 & Password %2 Channel %3",mpython_disable_APWiFi_MESSAGE0:"close AP mode",mpython_disable_APWiFi_TOOLTIP:"",mpython_ntptime_settime_MESSAGE0:"synchronize network time, timezone %1 & timing server %2",mpython_ntptime_settime_TOOLTIP:"NTP time synchronization is a time synchronization network technology",mpython_wifi_get_date_MESSAGE0:"get the current date string",mpython_wifi_get_date_TOOLTIP:"",mpython_wifi_get_time_MESSAGE0:"get the current time string",mpython_wifi_get_time_TOOLTIP:"",mpython_ntptime_timezone_E1:"UTC+1",mpython_ntptime_timezone_E2:"UTC+2",mpython_ntptime_timezone_E3:"UTC+3",mpython_ntptime_timezone_E4:"UTC+4",mpython_ntptime_timezone_E5:"UTC+5",mpython_ntptime_timezone_E6:"UTC+6",mpython_ntptime_timezone_E7:"UTC+7",mpython_ntptime_timezone_E8:"UTC+8",mpython_ntptime_timezone_E9:"UTC+9",mpython_ntptime_timezone_E10:"UTC+10",mpython_ntptime_timezone_E11:"UTC+11",mpython_ntptime_timezone_E12:"UTC+12",mpython_ntptime_timezone_0:"UTC",mpython_ntptime_timezone_W1:"UTC-1",mpython_ntptime_timezone_W2:"UTC-2",mpython_ntptime_timezone_W3:"UTC-3",mpython_ntptime_timezone_W4:"UTC-4",mpython_ntptime_timezone_W5:"UTC-5",mpython_ntptime_timezone_W6:"UTC-6",mpython_ntptime_timezone_W7:"UTC-7",mpython_ntptime_timezone_W8:"UTC-8",mpython_ntptime_timezone_W9:"UTC-9",mpython_ntptime_timezone_W10:"UTC-10",mpython_ntptime_timezone_W11:"UTC-11",mpython_ntptime_timezone_W12:"UTC-12",FILE_TO_LIST_HELPURL:"",FILE_TO_LIST_TOOLTIP:"Read the text file content of the specified path (only in UTF-8 format) and converts it to a list format, separated by the selected separator.",FILE_TO_LIST_MESSAGE0:"convert the text file %1 to a list separated by %2",FILE_TO_BIN_HELPURL:"",FILE_TO_BIN_TOOLTIP:"Reads the contents of the file in the specified path in binary format.",FILE_TO_BIN_MESSAGE0:"read the binary content of file %1",MPYTHON_INIT_FILE_HELPURL:"",MPYTHON_INIT_FILE_TOOLTIP:"Initializes a text file, creates a file if it does not exist, and clears the content if it exists.",MPYTHON_INIT_FILE_MESSAGE0:"initialize text file %1",MPYTHON_WRITE_FILE_HELPURL:"",MPYTHON_WRITE_FILE_TOOLTIP:"Writes content to a text file of the specified path, and creates a file if the file does not exist.",MPYTHON_WRITE_FILE_MESSAGE0:"write content %2 to the text file %1 separated by %3",MPYTHON_SDCARD_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",MPYTHON_SDCARD_INIT_TOOLTIP:"sck: P13\nmosi: P15\nmiso: P14\nsdcard: P16\nMake sure that the pins of the SPI bus are connected to the micro SD card which is formatted by using the FAT or FAT32 file system.",MPYTHON_SDCARD_INIT_MESSAGE0:"initialize SD card",MPYTHON_SDCARD_MOUNT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/sdcard.html#sdcard.SDCard",MPYTHON_SDCARD_MOUNT_TOOLTIP:"Mount the SD card to the specified path.",MPYTHON_SDCARD_MOUNT_MESSAGE0:"mount SD card to path %1",MPYTHON_ENTER:"enter",MPYTHON_COMMA:"comma",MPYTHON_SEMICOLON:"semicolon",MPYTHON_SPACE:"space",mpython_def_clock_MESSAGE0:"initialize clock %1 x %2 y %3 radius %4",mpython_def_clock_TOOLTIP:"",mpython_settime_clock_MESSAGE0:"clock %1 read time",mpython_settime_clock_TOOLTIP:"",mpython_draw_clear_clock_MESSAGE0:"%1 clock %2",mpython_draw_clear_clock_TOOLTIP:"",mpython_tinywebio_start_MESSAGE0:"start TinyWebIO service, run in %1",mpython_tinywebio_start_TOOLTIP:"Wi-Fi is required to start the service, and the TinyWebIO service provides a remote control interface for the App Inventor application.",mpython_tinywebio_client_setup_HELPURL:"",mpython_tinywebio_client_setup_TOOLTIP:"Items send to the server (separated by comma)\nbuttona/b Button status\ntouchpadp/y/t/h/o/n Touch button value \nlight Light value\nsound Sound value\naccelerometer Triaxial acceleration value\nid the board identification \ntime timestamp \npind digital IO pin \npina analog IO pin\n----------\nItems read from the server (separated by comma)\nrgb0/ 1/2 RGB lamp bead \noled OLED display \nmusic music \nservo steering gear \npind digital IO pin \npina analog IO pin",mpython_tinywebio_client_setup_MESSAGE0:"setup TinyWebIO client params %1 TinyWebDB server address %2 items send to the server %3 items read from the server %4 access server time interval(ms) %5",mpython_tinywebio_client_action_HELPURL:"",mpython_tinywebio_client_action_TOOLTIP:"",mpython_tinywebio_client_action_MESSAGE0:"%1 TinyWebIO client",mpython_tinywebio_client_action_start:"start",mpython_tinywebio_client_action_stop:"stop",MPYTHON_CUSTOM_CODE_HELPURL:"",MPYTHON_CUSTOM_CODE_TOOLTIP:"",MPYTHON_CUSTOM_CODE_MESSAGE0:"%1 custom code %2 %3",MPYTHON_CUSTOM_TYPE_IMPORT:"topping",MPYTHON_CUSTOM_TYPE_NORMAL:"normal",MPYTHON_CUSTOM_VALUE_MESSAGE0:"custom value %1",mpython_servo_angle0_MESSAGE0:"set the servo %1 angle as %2",mpython_servo_angle_MESSAGE0:"set the servo %1 angle as %2 pulse width from %3 us to %4 us actuation range as %5",mpython_servo_angle_TOOLTIP:"power cable Vcc (red) connected to expansion-board power port V, ground line GND (brown) connected to expansion-board ground port G, control signal line (orange) connected to selected expansion-board pins",mpython_dh11_hum_tem_MESSAGE0:"DHT11 %1 %2",mpython_dh11_hum_tem_TOOLTIP:'"+" on the DHT11 connects the power port of the expansion-board V, "-" connects the ground port of the expansion-board G, "out" connects the pin0 of the expansion-board',MPYTHON_DH22_HUM_TEM_MESSAGE0:"DHT22 %1 %2",MPYTHON_DH22_HUM_TEM_TOOLTIP:"",MPYTHON_DH22_HUM_TEM_HELPURL:"https://mpython.readthedocs.io/zh/latest/classic/dht11.html?highlight=DHT",mpython_music_note_MESSAGE0:"note %1 %2 : %3",mpython_music_note_TOOLTIP:"Note, such as C4:4",mpython_return_list_MESSAGE0:"define list %1 = %2",mpython_return_list_TOOLTIP:"",mpython_display_Show_MESSAGE0:"OLED setting take effect",mpython_display_Show_TOOLTIP:"",mpython_display_DispChar_MESSAGE0:"display text %3 at x %1 y %2 text mode %4 %5",mpython_display_DispChar_TOOLTIP:"OLED resolution 128x64",mpython_display_DispChar_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/mpython.html?highlight=oled#oled.DispChar",mpython_display_DispChar_5lines_MESSAGE0:"OLED line %1 shows %2 text mode %3 %4",mpython_display_DispChar_5lines_TOOLTIP:"OLED resolution 128x64",mpython_line1:"1",mpython_line2:"2",mpython_line3:"3",mpython_line4:"4",mpython_line5:"5",MPYTHON_CLEAR_DISPCHAR_5LINES_MESSAGE0:"OLED clear line %1",MPYTHON_CLEAR_DISPCHAR_5LINES_TOOLTIP:"OLED resolution 128x64",MPYTHON_CLEAR_DISPCHAR_5LINES_HELPURL:"",mpython_display_fill_0:"clear",mpython_display_fill_1:"full bright",mpython_display_invert_0:"black background",mpython_display_invert_1:"white background",mpython_display_show:"show",mpython_display_fill_MESSAGE0:"OLED display %1",mpython_display_fill_TOOLTIP:"",mpython_display_pixel_0:"dark",mpython_display_pixel_1:"bright",mpython_display_pixel_MESSAGE0:"draw a point x %1 y %2 as %3",mpython_display_pixel_TOOLTIP:"",mpython_display_hline_0:"erase",mpython_display_hline_1:"draw",mpython_display_hline_MESSAGE0:"%1 horizontal line %2 x %3 y %4 length %5",mpython_display_hline_TOOLTIP:"",mpython_ProgressBar_MESSAGE0:"progress bar %1 x %2 y %3 width %4 height %5 progress %6",mpython_ProgressBar_TOOLTIP:"",mpython_stripBar_MESSAGE0:"column bar %1 x %2 y %3 width %4 height %5 progress %6",mpython_stripBar_TOOLTIP:"",MPYTHON_QR_CODE_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#gui.UI.qr_code",MPYTHON_QR_CODE_TOOLTIP:"",MPYTHON_QR_CODE_MESSAGE0:"display QR code %3 at x %1 y %2 with size %4",MPYTHON_DISPLAY_MODE_0:"erase",MPYTHON_DISPLAY_MODE_1:"draw",MPYTHON_DISPLAY_HOLLOW:"hollow",MPYTHON_DISPLAY_SOLID:"solid",MPYTHON_DISPLAY_HVLINE_MESSAGE0:"%1 %2 line %3 x %4 y %5 length %6",MPYTHON_DISPLAY_HVLINE_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0:"%1 %2 rectangle %3 x %4 y %5 width %6 height %7",MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_CIRCLE_MESSAGE0:"%1 %2 circle %3 x %4 y %5 radius %6",MPYTHON_DISPLAY_SHAPE_CIRCLE_TOOLTIP:"",MPYTHON_DISPLAY_SHAPE_TRIANGLE_MESSAGE0:"%1 %2 triangle %3 x1 %4 y1 %5 x2 %6 y2 %7 x3 %8 y3 %9",MPYTHON_DISPLAY_SHAPE_TRIANGLE_TOOLTIP:"",MPYTHON_RGB_0:"0 #",MPYTHON_RGB_1:"1 #",MPYTHON_RGB_2:"2 #",MPYTHON_RGB_ALL:"all",MPYTHON_SET_RGB_LIST_COLOR_MESSAGE0:"set %1 RGB light(s) color to %2",MPYTHON_SET_RGB_LIST_COLOR_TOOLTIP:"1/30 of the original brightness can better display the color difference",MPYTHON_SET_RGB_LIST_NUMBER_MESSAGE0:"set %1 RGB light(s) color to R%2 G%3 B%4",MPYTHON_SET_RGB_LIST_NUMBER_TOOLTIP:"1/30 of the original brightness can better display the color difference",MPYTHON_OFF_RGB_LIST_MESSAGE0:"turn off %1 RGB light(s)",MPYTHON_OFF_RGB_LIST_TOOLTIP:"",MPYTHON_MUSIC_PLAY_MESSAGE0:"play music %1 Pin %2",MPYTHON_MUSIC_PLAY_TOOLTIP:"Play the built-in music",MPYTHON_MUSIC_PLAY_UNTIL_END_MESSAGE0:"play music %1 until end, Pin %2",MPYTHON_MUSIC_PLAY_UNTIL_END_TOOLTIP:"Play the built-in music",MPYTHON_MUSIC_GE_CHANG_ZU_GUO:"GE_CHANG_ZU_GUO",MPYTHON_MUSIC_DONG_FANG_HONG:"DONG_FANG_HONG",MPYTHON_MUSIC_CAI_YUN_ZHUI_YUE:"CAI_YUN_ZHUI_YUE",MPYTHON_MUSIC_ZOU_JIN_XIN_SHI_DAI:"ZOU_JIN_XIN_SHI_DAI",MPYTHON_MUSIC_MO_LI_HUA:"MO_LI_HUA",MPYTHON_MUSIC_YI_MENG_SHAN_XIAO_DIAO:"YI_MENG_SHAN_XIAO_DIAO",mpython_display_vline_MESSAGE0:"%1 vertical line %2 x %3 y %4 length %5",mpython_display_vline_TOOLTIP:"",mpython_display_line_MESSAGE0:"%1 line %2 x1 %3 y1 %4 to x2 %5 y2 %6",mpython_display_line_TOOLTIP:"",mpython_display_rect_MESSAGE0:"%1 border %2 x %3 y %4 width %5 height %6",mpython_display_rect_TOOLTIP:"",mpython_display_RoundRect_MESSAGE0:"%1 arc border %2 x %3 y %4 width %5 height %6 radius %7",mpython_display_RoundRect_TOOLTIP:"",mpython_display_fill_rect_MESSAGE0:"%1 rectangle %2 x %3 y %4 width %5 height %6",mpython_display_fill_rect_TOOLTIP:"",mpython_display_fill_circle_MESSAGE0:"%1 solid circle %2 x %3 y %4 radius %5",mpython_display_fill_circle_TOOLTIP:"",mpython_display_circle_MESSAGE0:"%1 hollow circle %2 x %3 y %4 radius %5",mpython_display_circle_TOOLTIP:"",mpython_display_triangle_MESSAGE0:"%1 hollow triangle %2 x %3 y %4 x2 %5 y2 %6 x3 %7 y3 %8",mpython_display_triangle_TOOLTIP:"",mpython_display_fill_triangle_MESSAGE0:"%1 solid triangle %2 x %3 y %4 x2 %5 y2 %6 x3 %7 y3 %8",mpython_display_fill_triangle_TOOLTIP:"",mpython_display_Bitmap_MESSAGE0:"%1 pattern x %2 y %3 width %4 height %5 with hex image data %6",mpython_display_Bitmap_TOOLTIP:"Display hex image data at a specified position on the OLED screen",MPYTHON_GET_PBM_DATA_MESSAGE0:"get inner image %1 Pattern %2",MPYTHON_GET_PBM_DATA_TOOLTIP:"Supports * .PBM or * .PBM format monochrome image files, retrieves image file data of specified path, and returns a tuple object",MPYTHON_GET_PBM_DATA_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",MPYTHON_GET_PBM_DATA_CUSTOM_MESSAGE0:"Get custom image%1 mode%2",MPYTHON_DISPLAY_PBM_DATA_MESSAGE0:"display image at x %1 y %2 with data %3",MPYTHON_DISPLAY_PBM_DATA_TOOLTIP:"Monochromatic image files supporting * .PBM or * .PBM formats",MPYTHON_DISPLAY_PBM_DATA_HELPURL:"https://mpython.readthedocs.io/zh/master/library/mPython/gui.html#image",MPYTHON_BITMAP_FROM_FILE_MESSAGE0:"display image at x %1 y %2 with data %5 width %3 height %4",MPYTHON_BITMAP_FROM_FILE_TOOLTIP:"",MPYTHON_BITMAP_FROM_FILE_HELPURL:"",mpython_front:"front",mpython_reverse:"reverse",MPYTHON_FONT_DIGIFACE_11:"Digiface 11px",MPYTHON_FONT_DIGIFACE_16:"Digiface 16px",MPYTHON_FONT_DIGIFACE_21:"Digiface 21px",MPYTHON_FONT_DIGIFACE_30:"Digiface 30px",MPYTHON_FONT_DIGIFACE_44:"Digiface 44px",MPYTHON_FONT_DIGIFACE_IT_30:"Digiface Italic 30px",MPYTHON_FONT_DIGIFACE_IT_42:"Digiface Italic 42px",MPYTHON_FONT_DVSM_12:"DejaVu Sans Mono 12px",MPYTHON_FONT_DVSM_16:"DejaVu Sans Mono 16px",MPYTHON_FONT_DVSM_21:"DejaVu Sans Mono 21px",MPYTHON_FONT_DVSMB_12:"DejaVu Sans Mono Bold 12px",MPYTHON_FONT_DVSMB_16:"DejaVu Sans Mono Bold 16px",MPYTHON_FONT_DVSMB_21:"DejaVu Sans Mono Bold 21px",MPYTHON_FONT_WRAP:"auto wrap",MPYTHON_FONT_NO_WRAP:"no wrap",MPYTHON_FACE_1:"Heart",MPYTHON_FACE_2:"Small heart",MPYTHON_FACE_3:"Happy",MPYTHON_FACE_4:"Smile",MPYTHON_FACE_5:"Sad",MPYTHON_FACE_6:"Confused",MPYTHON_FACE_7:"Angry",MPYTHON_FACE_8:"Sleep",MPYTHON_FACE_9:"Surprise",MPYTHON_FACE_10:"Silly",MPYTHON_FACE_11:"Wonderful",MPYTHON_FACE_12:"Bored",MPYTHON_FACE_ROCK:"Rock",MPYTHON_FACE_PAPER:"Paper",MPYTHON_FACE_SCISSORS:"Scissors",MPYTHON_FACE_ROCK_S:"Small rock",MPYTHON_FACE_PAPER_S:"Small paper",MPYTHON_FACE_SCISSORS_S:"Small scissors",MPYTHON_DISPLAY_FONT_MESSAGE0:"display text %3 at x %1 y %2, using %4 font with %5",MPYTHON_DISPLAY_FONT_TOOLTIP:"",MPYTHON_DISPLAY_FONT_HELPURL:"",mpython_button_is_pressed_MESSAGE0:"button %1 is pressed",mpython_button_is_pressed_TOOLTIP:"",mpython_touchPad_value_MESSAGE0:"button %1 is touched",mpython_touchPad_value_TOOLTIP:"",mpython_touchPad_value_num_MESSAGE0:"button %1 touch value",mpython_touchPad_value_num_TOOLTIP:"",mpython_read_digital_MESSAGE0:"pin %1 digital value",mpython_read_digital_TOOLTIP:"",mpython_read_DS18B20_MESSAGE0:"DS18B20 waterproof temperature sensor at pin %1",mpython_read_DS18B20_TOOLTIP:"",mpython_read_DS18B20_HELPURL:"http://docs.micropython.org/en/latest/esp32/quickref.html?highlight=onewire#onewire-driver",mpython_set_digital_MESSAGE0:"set pin %2 digital value to %1",mpython_set_digital_TOOLTIP:"",mpython_read_analog_MESSAGE0:"pin %1 analog value",mpython_read_analog_TOOLTIP:"",mpython_set_analog_MESSAGE0:"set pin %2 analog value (PWM) to %1",mpython_set_analog_TOOLTIP:"The analog output is a pulse width modulated signal output through the IO pin, which outputs a specified voltage value, referred to as PWM.",mpython_set_RGB_MESSAGE0:"set %1 RGB light color to R %2 G %3 B %4",mpython_set_RGB_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_color_MESSAGE0:"set %1 RGB light color to %2",mpython_set_RGB_color_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_all_MESSAGE0:"set all RGB lights color to R %1 G %2 B %3",mpython_set_RGB_all_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_set_RGB_color_all_MESSAGE0:"set all RGB lights color to %1",mpython_set_RGB_color_all_TOOLTIP:"1/30 of the original brightness can better display the color difference",mpython_fresh_RGB_MESSAGE0:"RGB lights settings take effect",mpython_fresh_RGB_TOOLTIP:"",mpython_off_RGB_MESSAGE0:"turn off all RGB lights",mpython_off_RGB_TOOLTIP:"",mpython_buzz_state_MESSAGE0:"stop playing music",mpython_buzz_state_TOOLTIP:"",mpython_buzz_freq_MESSAGE0:"play continuous tone %1 at Pin %2",mpython_buzz_freq_TOOLTIP:"",mpython_buzz_tone_MESSAGE0:"play tone %1",mpython_buzz_tone_TOOLTIP:"",MPYTHON_MUSIC_TONE_TEMPO_HELPURL:"",MPYTHON_MUSIC_TONE_TEMPO_TOOLTIP:"The default pin is P6 of the mPython board",MPYTHON_MUSIC_TONE_TEMPO_MESSAGE0:"play musical note %1 at Pin %2",MPYTHON_MUSIC_TONE_HELPURL:"",MPYTHON_MUSIC_TONE_TOOLTIP:"",MPYTHON_MUSIC_TONE_MESSAGE0:"tone %1",MPYTHON_MUSIC_MUSICAL_NOTE_HELPURL:"",MPYTHON_MUSIC_MUSICAL_NOTE_TOOLTIP:"",MPYTHON_MUSIC_MUSICAL_NOTE_MESSAGE0:"note %1 beat %2",MPYTHON_MUSIC_TICK_HELPURL:"",MPYTHON_MUSIC_TICK_TOOLTIP:"",MPYTHON_MUSIC_TICK_MESSAGE0:"beat %1",MPYTHON_4_LINES_HELPURL:"",MPYTHON_4_LINES_TOOLTIP:"",MPYTHON_4_LINES_MESSAGE0:"%1",NUMBER_1:"1",NUMBER_1_2:"1/2",NUMBER_1_4:"1/4",NUMBER_2:"2",NUMBER_4:"4",mpython_read_sound_MESSAGE0:"sound value",mpython_read_sound_TOOLTIP:"",mpython_read_light_MESSAGE0:"light value",mpython_read_light_TOOLTIP:"",mpython_accelerometer_get_MESSAGE0:"%1 axis acceleration",mpython_accelerometer_get_TOOLTIP:"",MPYTHON_ACCELEROMETER_RANGE_2G:"±2g",MPYTHON_ACCELEROMETER_RANGE_4G:"±4g",MPYTHON_ACCELEROMETER_RANGE_8G:"±8g",MPYTHON_ACCELEROMETER_RANGE_16G:"±16g",MPYTHON_ACCELEROMETER_RES_10_BIT:"10bits",MPYTHON_ACCELEROMETER_RES_12_BIT:"12bits",MPYTHON_ACCELEROMETER_RES_14_BIT:"14bits",MPYTHON_ACCELEROMETER_SET_RANGE_TOOLTIP:"Set the acceleration range, the default is ±2g。",MPYTHON_ACCELEROMETER_SET_RANGE_MESSAGE0:"set acceleration range to %1",MPYTHON_ACCELEROMETER_SET_RESOLUTION_TOOLTIP:"Set the acceleration resolution, the default is 10bits。",MPYTHON_ACCELEROMETER_SET_RESOLUTION_MESSAGE0:"set acceleration resolution to %1",MPYTHON_ACCELEROMETER_SET_OFFSET_TOOLTIP:"Calibrate the acceleration value deviation of the three axes (x, y, z) of the accelerometer.\nIn general, calibration is not required, and calibration is only required when the acceleration deviation is large.\nx , y , z are the adjustment deviation values, and the correction range is ±1g.\nNote: Calibration data will not be saved after power off.",MPYTHON_ACCELEROMETER_SET_OFFSET_MESSAGE0:"calibration acceleration value with %1 X axis deviation %2 Y axis deviation %3 Z axis deviation %4",MPYTHON_MAGNETIC_GET_AXIS_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_AXIS_MESSAGE0:"magnetic force of %1 axis",MPYTHON_MAGNETIC_GET_HEADING_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_HEADING_MESSAGE0:"get magnetic heading",MPYTHON_MAGNETIC_CALIBRATE_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_CALIBRATE_MESSAGE0:"magnetic calibrate",MPYTHON_MAGNETIC_PEELING_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_PEELING_MESSAGE0:"magnetic peeling",MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_TOOLTIP:"Only applicable to mPython board 2.0 and above",MPYTHON_MAGNETIC_GET_FIELD_STRENGTH_MESSAGE0:"get magnetic field strength",MPYTHON_TILT_ANGLE_HELPURL:"",MPYTHON_TILT_ANGLE_TOOLTIP:"",MPYTHON_TILT_ANGLE_MESSAGE0:"%1 axis tilt angle",mpython_random_choice_MESSAGE0:"random item %1",mpython_random_choice_TOOLTIP:"Return a random item in a list or string in String format",MACHINE_TIME_PULSE_US_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.html?highlight=machine.time_pulse_us#machine.time_pulse_us",MACHINE_TIME_PULSE_US_MESSAGE0:"duration(us) of external %2 pulse level at %1",MACHINE_TIME_PULSE_US_TOOLTIP:"",BYTES:"bytes",MPYTHON_I2C_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",MPYTHON_I2C_INIT_MESSAGE0:"init i2c with baudrate %1",MPYTHON_I2C_INIT_TOOLTIP:"",MPYTHON_I2C_DEV_INIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html#machine.I2C",MPYTHON_I2C_DEV_INIT_MESSAGE0:"init %1 SCL %2 SDA %3 baudrate %4",MPYTHON_I2C_DEV_INIT_TOOLTIP:"",MPYTHON_I2C_SCAN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.scan",MPYTHON_I2C_SCAN_MESSAGE0:"%1 scan result",MPYTHON_I2C_SCAN_TOOLTIP:"Return an array object",MPYTHON_I2C_DEINIT_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#machine.I2C.deinit",MPYTHON_I2C_DEINIT_MESSAGE0:"deinit %1",MPYTHON_I2C_DEINIT_TOOLTIP:"",MPYTHON_I2C_WRITETO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_WRITETO_MESSAGE0:"write to %1 %5 address %2 data %3 stop bit %4",MPYTHON_I2C_WRITETO_TOOLTIP:"Address: Number\nData: Number, String",MPYTHON_I2C_READFROM_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_READFROM_MESSAGE0:"read from %1 %5 address %2 bytes num %3 stop bit %4",MPYTHON_I2C_READFROM_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MPYTHON_I2C_READFROM_INTO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id4",MPYTHON_I2C_READFROM_INTO_MESSAGE0:"read from %1 %6 address %2 into %3 bytes num %4 stop bit %5",MPYTHON_I2C_READFROM_INTO_TOOLTIP:"",MPYTHON_I2C_WRITETO_MEN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_WRITETO_MEN_MESSAGE0:"write to %1 %5 address %2 mem %4 data %3",MPYTHON_I2C_WRITETO_MEN_TOOLTIP:"Address: Number\nData: Number, String",MPYTHON_I2C_READFROM_MEN_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_READFROM_MEN_MESSAGE0:"read from %1 %5 address %2 mem %4 bytes num %3",MPYTHON_I2C_READFROM_MEN_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MPYTHON_I2C_READFROM_MEN_INTO_HELPURL:"https://mpython.readthedocs.io/zh/master/library/micropython/machine/machine.I2C.html?highlight=I2C#id5",MPYTHON_I2C_READFROM_MEN_INTO_MESSAGE0:"read from %1 %6 address %2 mem %5 into %3 bytes num %4",MPYTHON_I2C_READFROM_MEN_INTO_TOOLTIP:"Address: Number\nReturn: Convert bytes data to string",MICROBIT_CONVERT_BYTEARRAY_HELPURL:"https://microbit-micropython.readthedocs.io/en/latest/i2c.html",MICROBIT_CONVERT_BYTEARRAY_TOOLTIP:"",MICROBIT_CONVERT_BYTEARRAY_MESSAGE0:"bytearray %1",AUTH:"Please authorize this app to enable your work to be saved and to allow it to be shared by you.",CHAT:"Chat with your collaborator by typing in this box!",TRY_EXCEPT_FINALLY:"finally",TRY_EXCEPT_FINALLY_TOOLTIP:"",TRY_EXCEPT_EXCEPT:"except",TRY_EXCEPT_EXCEPT_TOOLTIP:"",TRY_EXCEPT_TRY:"try",TRY_EXCEPT_TRY_TOOLTIP:"",TRY_EXCEPT_HELPURL:"https://mpythonx.readthedocs.io/zh_CN/latest/index.html",LISTS_POP_HELPURL:"",LISTS_POP_TOOLTIP:"",LISTS_POP_MESSAGE0:"remove %2 item in list %1",MATH_CONVERT_HELPURL:"",MATH_CONVERT_MESSAGE0:"%1 %2",MATH_CONVERT_TOOLTIP:"Conversion data type",MATH_DIVISION_CONSULT_HELPURL:"",MATH_DIVISION_CONSULT_TITLE:"the integer part of the quotient %1 ÷ %2",MATH_DIVISION_CONSULT_TOOLTIP:"",MATH_NUMBER_BITS_OPS_HELPURL:"",MATH_NUMBER_BITS_OPS_MESSAGE0:"%1 %2 %3",MATH_NUMBER_BITS_OPS_TOOLTIP:"Bitwise operations on numbers",ME:"Me",MPYTHON_PRINT_TO_CHART_TOOLTIP:"",MPYTHON_PRINT_TO_CHART_EMPTY_TITLE:"print data to chart",MPYTHON_PRINT_TO_CHART_INPUT_WITH:"print data to chart",MPYTHON_PRINT_TO_CHART_ITEM_TITLE:"data",MPYTHON_PRINT_TO_CHART_ITEM_TOOLTIP:"",MPYTHON_PRINT_TO_CHART_CONTAINER_TITLE_ADD:"data content",MPYTHON_PRINT_TO_CHART_CONTAINER_TOOLTIP:"",MPYTHON_INIT_CHART_TOOLTIP:"",MPYTHON_INIT_CHART_EMPTY_TITLE:"init chart column headers",MPYTHON_INIT_CHART_INPUT_WITH:"init chart column headers",MPYTHON_INIT_CHART_ITEM_TITLE:"header",MPYTHON_INIT_CHART_ITEM_TOOLTIP:"",MPYTHON_INIT_CHART_CONTAINER_TITLE_ADD:"column header",MPYTHON_INIT_CHART_CONTAINER_TOOLTIP:"",MICROBIT_IMAGE_CREATE1_MESSAGE0:"create image %1 line 1 %2 line 2 %3 line 3 %4 line 4 %5 line 5 %6",MICROBIT_IMAGE_CREATE1_TOOLTIP:"Create new image.",MICROBIT_IMAGE_CREATE1_HELPURL:"",ADD_COMMENT:"Add Comment",CHANGE_VALUE_TITLE:"Change value:",COLLAPSE_ALL:"Collapse Blocks",COLLAPSE_BLOCK:"Collapse Block",COLOUR_BLEND_COLOUR1:"colour 1",COLOUR_BLEND_COLOUR2:"colour 2",COLOUR_BLEND_HELPURL:"http://meyerweb.com/eric/tools/color-blend/",COLOUR_BLEND_RATIO:"ratio",COLOUR_BLEND_TITLE:"blend",COLOUR_BLEND_TOOLTIP:"Blends two colours together with a given ratio (0.0 - 1.0).",COLOUR_PICKER_HELPURL:"https://en.wikipedia.org/wiki/Color",COLOUR_PICKER_TOOLTIP:"Choose a colour from the palette.",COLOUR_RANDOM_HELPURL:"http://randomcolour.com",COLOUR_RANDOM_TITLE:"random colour",COLOUR_RANDOM_TOOLTIP:"Choose a colour at random.",COLOUR_RGB_BLUE:"blue",COLOUR_RGB_GREEN:"green",COLOUR_RGB_HELPURL:"http://www.december.com/html/spec/colorper.html",COLOUR_RGB_RED:"red",COLOUR_RGB_TITLE:"colour with",COLOUR_RGB_TOOLTIP:"Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.",CONTROLS_FLOW_STATEMENTS_HELPURL:"https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK:"break out of loop",CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE:"continue with next iteration of loop",CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK:"Break out of the containing loop.",CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE:"Skip the rest of this loop, and continue with the next iteration.",CONTROLS_FLOW_STATEMENTS_WARNING:"Warning: This block may only be used within a loop.",CONTROLS_FOREACH_HELPURL:"https://github.com/google/blockly/wiki/Loops#for-each",CONTROLS_FOREACH_TITLE:"for each item %1 in list %2",CONTROLS_FOREACH_TOOLTIP:"For each item in a list, set the variable '%1' to the item, and then do some statements.",CONTROLS_FOR_HELPURL:"https://github.com/google/blockly/wiki/Loops#count-with",CONTROLS_FOR_TITLE:"count with %1 from %2 to %3 by %4",CONTROLS_FOR_TOOLTIP:"Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.",CONTROLS_IF_ELSEIF_TOOLTIP:"Add a condition to the if block.",CONTROLS_IF_ELSE_TOOLTIP:"Add a final, catch-all condition to the if block.",CONTROLS_IF_HELPURL:"https://github.com/google/blockly/wiki/IfElse",CONTROLS_IF_IF_TOOLTIP:"Add, remove, or reorder sections to reconfigure this if block.",CONTROLS_IF_MSG_ELSE:"else",CONTROLS_IF_MSG_ELSEIF:"else if",CONTROLS_IF_MSG_IF:"if",CONTROLS_IF_TOOLTIP_1:"If a value is true, then do some statements.",CONTROLS_IF_TOOLTIP_2:"If a value is true, then do the first block of statements. Otherwise, do the second block of statements.",CONTROLS_IF_TOOLTIP_3:"If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.",CONTROLS_IF_TOOLTIP_4:"If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.",CONTROLS_REPEAT_HELPURL:"https://en.wikipedia.org/wiki/For_loop",CONTROLS_REPEAT_INPUT_DO:"",CONTROLS_REPEAT_TITLE:"repeat %1 times",CONTROLS_REPEAT_TOOLTIP:"Do some statements several times.",CONTROLS_WHILEUNTIL_HELPURL:"https://github.com/google/blockly/wiki/Loops#repeat",CONTROLS_WHILEUNTIL_OPERATOR_UNTIL:"repeat until",CONTROLS_WHILEUNTIL_OPERATOR_WHILE:"repeat while",CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL:"While a value is false, then do some statements.",CONTROLS_WHILEUNTIL_TOOLTIP_WHILE:"While a value is true, then do some statements.",DELETE_BLOCK:"Delete Block",DELETE_X_BLOCKS:"Delete %1 Blocks",DISABLE_BLOCK:"Disable Block",DUPLICATE_BLOCK:"Duplicate",ENABLE_BLOCK:"Enable Block",EXPAND_ALL:"Expand Blocks",EXPAND_BLOCK:"Expand Block",EXTERNAL_INPUTS:"External Inputs",HELP:"Help",INLINE_INPUTS:"Inline Inputs",LISTS_CREATE_EMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-empty-list",LISTS_CREATE_EMPTY_TITLE:"create empty list",LISTS_CREATE_EMPTY_TOOLTIP:"Returns a list, of length 0, containing no data records",LISTS_CREATE_WITH_CONTAINER_TITLE_ADD:"list",LISTS_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or reorder sections to reconfigure this list block.",SET_CREATE_WITH_CONTAINER_TOOLTIP:"Add, remove, or reorder sections to reconfigure this set block.",LISTS_CREATE_WITH_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_CREATE_WITH_INPUT_WITH:"create list with",LISTS_CREATE_WITH_ITEM_TOOLTIP:"Add an item to the list.",LISTS_CREATE_WITH_TOOLTIP:"Create a list with any number of items.",LISTS_GET_INDEX_FIRST:"first",LISTS_GET_INDEX_FROM_END:"# from end",LISTS_GET_INDEX_FROM_START:"#",LISTS_GET_INDEX_GET:"get",LISTS_GET_INDEX_GET_REMOVE:"get and remove",LISTS_GET_INDEX_LAST:"last",LISTS_GET_INDEX_RANDOM:"random",LISTS_GET_INDEX_REMOVE:"remove",LISTS_GET_INDEX_TAIL:"",LISTS_GET_INDEX_TOOLTIP_GET_FIRST:"Returns the first item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_FROM_END:"Returns the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_GET_FROM_START:"Returns the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_GET_LAST:"Returns the last item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_RANDOM:"Returns a random item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST:"Removes and returns the first item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_END:"Removes and returns the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_START:"Removes and returns the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST:"Removes and returns the last item in a list.",LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM:"Removes and returns a random item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST:"Removes the first item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_END:"Removes the item at the specified position in a list. #1 is the last item.",LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_START:"Removes the item at the specified position in a list. #1 is the first item.",LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST:"Removes the last item in a list.",LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM:"Removes a random item in a list.",LISTS_GET_SUBLIST_END_FROM_END:"to # from end",LISTS_GET_SUBLIST_END_FROM_START:"to #",LISTS_GET_SUBLIST_END_LAST:"to last",LISTS_GET_SUBLIST_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-a-sublist",LISTS_GET_SUBLIST_START_FIRST:"get sub-list from first",LISTS_GET_SUBLIST_START_FROM_END:"get sub-list from # from end",LISTS_GET_SUBLIST_START_FROM_START:"get sub-list from #",LISTS_GET_SUBLIST_TAIL:"",LISTS_GET_SUBLIST_TOOLTIP:"Creates a copy of the specified portion of a list.",LISTS_INDEX_OF_FIRST:"find first occurrence of item",LISTS_INDEX_OF_HELPURL:"https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",LISTS_INDEX_OF_LAST:"find last occurrence of item",LISTS_INDEX_OF_TOOLTIP:"Returns the index of the first/last occurrence of the item in the list. Returns 0 if text is not found.",LISTS_INLIST:"in list",LISTS_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Lists#is-empty",LISTS_ISEMPTY_TITLE:"%1 is empty",LISTS_ISEMPTY_TOOLTIP:"Returns true if the list is empty.",LISTS_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Lists#length-of",LISTS_LENGTH_TITLE:"length of %1",LISTS_LENGTH_TOOLTIP:"Returns the length of a list.",LISTS_REPEAT_HELPURL:"https://github.com/google/blockly/wiki/Lists#create-list-with",LISTS_REPEAT_TITLE:"create list with item %1 repeated %2 times",LISTS_REPEAT_TOOLTIP:"Creates a list consisting of the given value repeated the specified number of times.",LISTS_SET_INDEX_HELPURL:"https://github.com/google/blockly/wiki/Lists#in-list--set",LISTS_SET_INDEX_INPUT_TO:"as",LISTS_SET_INDEX_INSERT:"insert at",LISTS_SET_INDEX_SET:"set",LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST:"Inserts the item at the start of a list.",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_END:"Inserts the item at the specified position in a list. #1 is the last item.",LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_START:"Inserts the item at the specified position in a list. #1 is the first item.",LISTS_SET_INDEX_TOOLTIP_INSERT_LAST:"Append the item to the end of a list.",LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM:"Inserts the item randomly in a list.",LISTS_SET_INDEX_TOOLTIP_SET_FIRST:"Sets the first item in a list.",LISTS_SET_INDEX_TOOLTIP_SET_FROM_END:"Sets the item at the specified position in a list. #1 is the last item.",LISTS_SET_INDEX_TOOLTIP_SET_FROM_START:"Sets the item at the specified position in a list. #1 is the first item.",LISTS_SET_INDEX_TOOLTIP_SET_LAST:"Sets the last item in a list.",LISTS_SET_INDEX_TOOLTIP_SET_RANDOM:"Sets a random item in a list.",LISTS_SPLIT_HELPURL:"https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",LISTS_SPLIT_LIST_FROM_TEXT:"make list from text",LISTS_SPLIT_TEXT_FROM_LIST:"make text from list",LISTS_SPLIT_TOOLTIP_JOIN:"Join a list of texts into one text, separated by a delimiter.",LISTS_SPLIT_TOOLTIP_SPLIT:"Split text into a list of texts, breaking at each delimiter.",LISTS_SPLIT_WITH_DELIMITER:"with delimiter",LOGIC_BOOLEAN_FALSE:"false",LOGIC_BOOLEAN_HELPURL:"https://github.com/google/blockly/wiki/Logic#values",LOGIC_BOOLEAN_TOOLTIP:"Returns either true or false.",LOGIC_BOOLEAN_TRUE:"true",LOGIC_COMPARE_HELPURL:"https://en.wikipedia.org/wiki/Inequality_(mathematics)",LOGIC_COMPARE_TOOLTIP_EQ:"Return true if both inputs equal each other.",LOGIC_COMPARE_TOOLTIP_GT:"Return true if the first input is greater than the second input.",LOGIC_COMPARE_TOOLTIP_GTE:"Return true if the first input is greater than or equal to the second input.",LOGIC_COMPARE_TOOLTIP_LT:"Return true if the first input is smaller than the second input.",LOGIC_COMPARE_TOOLTIP_LTE:"Return true if the first input is smaller than or equal to the second input.",LOGIC_COMPARE_TOOLTIP_NEQ:"Return true if both inputs are not equal to each other.",LOGIC_NEGATE_HELPURL:"https://github.com/google/blockly/wiki/Logic#not",LOGIC_NEGATE_TITLE:"not %1",LOGIC_NEGATE_TOOLTIP:"Returns true if the input is false. Returns false if the input is true.",LOGIC_NULL:"null",LOGIC_NULL_HELPURL:"https://en.wikipedia.org/wiki/Nullable_type",LOGIC_NULL_TOOLTIP:"Returns null.",LOGIC_OPERATION_AND:"and",LOGIC_OPERATION_HELPURL:"https://github.com/google/blockly/wiki/Logic#logical-operations",LOGIC_OPERATION_OR:"or",LOGIC_OPERATION_TOOLTIP_AND:"Return true if both inputs are true.",LOGIC_OPERATION_TOOLTIP_OR:"Return true if at least one of the inputs is true.",LOGIC_TERNARY_CONDITION:"test",LOGIC_TERNARY_HELPURL:"https://en.wikipedia.org/wiki/%3F:",LOGIC_TERNARY_IF_FALSE:"if false",LOGIC_TERNARY_IF_TRUE:"if true",LOGIC_TERNARY_TOOLTIP:"Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",MATH_ADDITION_SYMBOL:"+",MATH_ARITHMETIC_HELPURL:"https://en.wikipedia.org/wiki/Arithmetic",MATH_ARITHMETIC_TOOLTIP_ADD:"Return the sum of the two numbers.",MATH_ARITHMETIC_TOOLTIP_DIVIDE:"Return the quotient of the two numbers.",MATH_ARITHMETIC_TOOLTIP_MINUS:"Return the difference of the two numbers.",MATH_ARITHMETIC_TOOLTIP_MULTIPLY:"Return the product of the two numbers.",MATH_ARITHMETIC_TOOLTIP_POWER:"Return the first number raised to the power of the second number.",MATH_CHANGE_HELPURL:"https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",MATH_CHANGE_TITLE:"change %1 by %2",MATH_CHANGE_TOOLTIP:"Add a number to variable '%1'.",MATH_CONSTANT_HELPURL:"https://en.wikipedia.org/wiki/Mathematical_constant",MATH_CONSTANT_TOOLTIP:"Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",MATH_CONSTRAIN_HELPURL:"https://en.wikipedia.org/wiki/Clamping_%28graphics%29",MATH_CONSTRAIN_TITLE:"constrain %1 low %2 high %3",MATH_CONSTRAIN_TOOLTIP:"Constrain a number to be between the specified limits (inclusive).",MATH_DIVISION_SYMBOL:"÷",MATH_IS_DIVISIBLE_BY:"is divisible by",MATH_IS_EVEN:"is even",MATH_IS_NEGATIVE:"is negative",MATH_IS_ODD:"is odd",MATH_IS_POSITIVE:"is positive",MATH_IS_PRIME:"is prime",MATH_IS_TOOLTIP:"Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",MATH_IS_WHOLE:"is whole",MATH_MODULO_HELPURL:"https://en.wikipedia.org/wiki/Modulo_operation",MATH_MODULO_TITLE:"remainder of %1 ÷ %2",MATH_MODULO_TOOLTIP:"Return the remainder from dividing the two numbers.",MATH_MULTIPLICATION_SYMBOL:"×",MATH_NUMBER_HELPURL:"https://en.wikipedia.org/wiki/Number",MATH_NUMBER_TOOLTIP:"A number.",MATH_ONLIST_HELPURL:"",MATH_ONLIST_OPERATOR_AVERAGE:"average of list",MATH_ONLIST_OPERATOR_MAX:"max of list",MATH_ONLIST_OPERATOR_MEDIAN:"median of list",MATH_ONLIST_OPERATOR_MIN:"min of list",MATH_ONLIST_OPERATOR_MODE:"modes of list",MATH_ONLIST_OPERATOR_RANDOM:"random item of list",MATH_ONLIST_OPERATOR_STD_DEV:"standard deviation of list",MATH_ONLIST_OPERATOR_SUM:"sum of list",MATH_ONLIST_TOOLTIP_AVERAGE:"Return the average (arithmetic mean) of the numeric values in the list.",MATH_ONLIST_TOOLTIP_MAX:"Return the largest number in the list.",MATH_ONLIST_TOOLTIP_MEDIAN:"Return the median number in the list.",MATH_ONLIST_TOOLTIP_MIN:"Return the smallest number in the list.",MATH_ONLIST_TOOLTIP_MODE:"Return a list of the most common item(s) in the list.",MATH_ONLIST_TOOLTIP_RANDOM:"Return a random element from the list.",MATH_ONLIST_TOOLTIP_STD_DEV:"Return the standard deviation of the list.",MATH_ONLIST_TOOLTIP_SUM:"Return the sum of all the numbers in the list.",MATH_POWER_SYMBOL:"**",MATH_RANDOM_FLOAT_HELPURL:"https://en.wikipedia.org/wiki/Random_number_generation",MATH_RANDOM_FLOAT_TITLE_RANDOM:"random fraction",MATH_RANDOM_FLOAT_TOOLTIP:"Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).",MATH_RANDOM_INT_HELPURL:"https://en.wikipedia.org/wiki/Random_number_generation",MATH_RANDOM_INT_TITLE:"random integer from %1 to %2",MATH_RANDOM_INT_TOOLTIP:"Return a random integer between the two specified limits, inclusive.",MATH_ROUND_HELPURL:"https://en.wikipedia.org/wiki/Rounding",MATH_ROUND_OPERATOR_ROUND:"round",MATH_ROUND_OPERATOR_ROUNDDOWN:"round down",MATH_ROUND_OPERATOR_ROUNDUP:"round up",MATH_ROUND_TOOLTIP:"Round a number up or down.",MATH_SINGLE_HELPURL:"https://en.wikipedia.org/wiki/Square_root",MATH_SINGLE_OP_ABSOLUTE:"absolute",MATH_SINGLE_OP_ROOT:"square root",MATH_SINGLE_TOOLTIP_ABS:"Return the absolute value of a number.",MATH_SINGLE_TOOLTIP_EXP:"Return e to the power of a number.",MATH_SINGLE_TOOLTIP_LN:"Return the natural logarithm of a number.",MATH_SINGLE_TOOLTIP_LOG10:"Return the base 10 logarithm of a number.",MATH_SINGLE_TOOLTIP_NEG:"Return the negation of a number.",MATH_SINGLE_TOOLTIP_POW10:"Return 10 to the power of a number.",MATH_SINGLE_TOOLTIP_ROOT:"Return the square root of a number.",MATH_SUBTRACTION_SYMBOL:"-",MATH_TRIG_ACOS:"acos",MATH_TRIG_ASIN:"asin",MATH_TRIG_ATAN:"atan",MATH_TRIG_COS:"cos",MATH_TRIG_HELPURL:"https://en.wikipedia.org/wiki/Trigonometric_functions",MATH_TRIG_SIN:"sin",MATH_TRIG_TAN:"tan",MATH_TRIG_TOOLTIP_ACOS:"Return the arccosine of a number.",MATH_TRIG_TOOLTIP_ASIN:"Return the arcsine of a number.",MATH_TRIG_TOOLTIP_ATAN:"Return the arctangent of a number.",MATH_TRIG_TOOLTIP_COS:"Return the cosine of a degree (not radian).",MATH_TRIG_TOOLTIP_SIN:"Return the sine of a degree (not radian).",MATH_TRIG_TOOLTIP_TAN:"Return the tangent of a degree (not radian).",NEW_VARIABLE:"New variable...",NEW_VARIABLE_TITLE:"New variable name:",ORDINAL_NUMBER_SUFFIX:"",PROCEDURES_ALLOW_STATEMENTS:"allow statements",PROCEDURES_BEFORE_PARAMS:"with:",PROCEDURES_CALLNORETURN_CALL:"",PROCEDURES_CALLNORETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_CALLNORETURN_TOOLTIP:"Run the user-defined function '%1'.",PROCEDURES_CALLRETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_CALLRETURN_TOOLTIP:"Run the user-defined function '%1' and use its output.",PROCEDURES_CALL_BEFORE_PARAMS:"with:",PROCEDURES_CREATE_DO:"Create '%1'",PROCEDURES_DEFNORETURN_COMMENT:"",PROCEDURES_DEFNORETURN_DO:"",PROCEDURES_DEFNORETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_DEFNORETURN_PROCEDURE:"my_func",PROCEDURES_DEFNORETURN_TITLE:"to",PROCEDURES_DEFNORETURN_TOOLTIP:"Creates a function with no output.",PROCEDURES_DEFRETURN_HELPURL:"https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",PROCEDURES_DEFRETURN_RETURN:"return",PROCEDURES_DEFRETURN_TOOLTIP:"Creates a function with an output.",PROCEDURES_DEF_DUPLICATE_WARNING:"Warning: This function has duplicate parameters.",PROCEDURES_HIGHLIGHT_DEF:"Highlight function definition",PROCEDURES_IFRETURN_TOOLTIP:"If a value is true, then return a second value.",PROCEDURES_IFRETURN_WARNING:"Warning: This block may be used only within a function definition.",PROCEDURES_MUTATORARG_TITLE:"input name:",PROCEDURES_MUTATORARG_TOOLTIP:"Add an input to the function.",PROCEDURES_MUTATORCONTAINER_TITLE:"inputs",PROCEDURES_MUTATORCONTAINER_TOOLTIP:"Add, remove, or reorder inputs to this function.",REMOVE_COMMENT:"Remove Comment",RENAME_VARIABLE:"Rename variable...",RENAME_VARIABLE_TITLE:"Rename all '%1' variables to:",TEXT_APPEND_APPENDTEXT:"append text",TEXT_APPEND_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_APPEND_TO:"to",TEXT_APPEND_TOOLTIP:"Append some text to variable '%1'.",TEXT_CHANGECASE_HELPURL:"https://github.com/google/blockly/wiki/Text#adjusting-text-case",TEXT_CHANGECASE_OPERATOR_LOWERCASE:"to lower case",TEXT_CHANGECASE_OPERATOR_TITLECASE:"to Title Case",TEXT_CHANGECASE_OPERATOR_UPPERCASE:"to UPPER CASE",TEXT_CHANGECASE_TOOLTIP:"Return a copy of the text in a different case.",TEXT_CHARAT_FIRST:"get first letter",TEXT_CHARAT_FROM_END:"get letter # from end",TEXT_CHARAT_FROM_START:"get letter #",TEXT_CHARAT_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-text",TEXT_CHARAT_INPUT_INTEXT:"in text",TEXT_CHARAT_LAST:"get last letter",TEXT_CHARAT_RANDOM:"get random letter",TEXT_CHARAT_TAIL:"",TEXT_CHARAT_TOOLTIP:"Returns the letter at the specified position.",TEXT_CREATE_JOIN_ITEM_TOOLTIP:"Add an item to the text.",TEXT_CREATE_JOIN_TITLE_JOIN:"join",TEXT_CREATE_JOIN_TOOLTIP:"Add, remove, or reorder sections to reconfigure this text block.",TEXT_GET_SUBSTRING_END_FROM_END:"to letter # from end",TEXT_GET_SUBSTRING_END_FROM_START:"to letter #",TEXT_GET_SUBSTRING_END_LAST:"to last letter",TEXT_GET_SUBSTRING_HELPURL:"https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",TEXT_GET_SUBSTRING_INPUT_IN_TEXT:"in text",TEXT_GET_SUBSTRING_START_FIRST:"get substring from first letter",TEXT_GET_SUBSTRING_START_FROM_END:"get substring from letter # from end",TEXT_GET_SUBSTRING_START_FROM_START:"get substring from letter #",TEXT_GET_SUBSTRING_TAIL:"",TEXT_GET_SUBSTRING_TOOLTIP:"Returns a specified portion of the text.",TEXT_INDEXOF_HELPURL:"https://github.com/google/blockly/wiki/Text#finding-text",TEXT_INDEXOF_INPUT_INTEXT:"in text",TEXT_INDEXOF_OPERATOR_FIRST:"find first occurrence of text",TEXT_INDEXOF_OPERATOR_LAST:"find last occurrence of text",TEXT_INDEXOF_TAIL:"",TEXT_INDEXOF_TOOLTIP:"Returns the index of the first/last occurrence of first text in the second text. Returns 0 if text is not found.",TEXT_ISEMPTY_HELPURL:"https://github.com/google/blockly/wiki/Text#checking-for-empty-text",TEXT_ISEMPTY_TITLE:"%1 is empty",TEXT_ISEMPTY_TOOLTIP:"Returns true if the provided text is empty.",TEXT_JOIN_HELPURL:"https://github.com/google/blockly/wiki/Text#text-creation",TEXT_JOIN_TITLE_CREATEWITH:"create text with",TEXT_JOIN_TOOLTIP:"Create a piece of text by joining together any number of items.",TEXT_LENGTH_HELPURL:"https://github.com/google/blockly/wiki/Text#text-modification",TEXT_LENGTH_TITLE:"length of %1",TEXT_LENGTH_TOOLTIP:"Returns the number of letters (including spaces) in the provided text.",TEXT_PRINT_HELPURL:"https://github.com/google/blockly/wiki/Text#printing-text",TEXT_PRINT_TITLE:"print %1",TEXT_PRINT_TOOLTIP:"Print the specified text, number or other value.",TEXT_PROMPT_HELPURL:"https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",TEXT_PROMPT_TOOLTIP_NUMBER:"Prompt for user for a number.",TEXT_PROMPT_TOOLTIP_TEXT:"Prompt for user for some text.",TEXT_PROMPT_TYPE_NUMBER:"prompt for number with message",TEXT_PROMPT_TYPE_TEXT:"prompt for text with message",TEXT_TEXT_HELPURL:"https://en.wikipedia.org/wiki/String_(computer_science)",TEXT_TEXT_TOOLTIP:"A letter, word, or line of text.",TEXT_TRIM_HELPURL:"https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",TEXT_TRIM_OPERATOR_BOTH:"trim spaces from both sides of",TEXT_TRIM_OPERATOR_LEFT:"trim spaces from left side of",TEXT_TRIM_OPERATOR_RIGHT:"trim spaces from right side of",TEXT_TRIM_TOOLTIP:"Return a copy of the text with spaces removed from one or both ends.",TODAY:"Today",VARIABLES_DEFAULT_NAME:"item",VARIABLES_GET_CREATE_SET:"Create 'set %1'",VARIABLES_GET_HELPURL:"https://github.com/google/blockly/wiki/Variables#get",VARIABLES_GET_TOOLTIP:"Returns the value of this variable.",VARIABLES_SET:"set %1 to %2",VARIABLES_SET_CREATE_GET:"Create 'get %1'",VARIABLES_SET_HELPURL:"https://github.com/google/blockly/wiki/Variables#set",VARIABLES_SET_TOOLTIP:"Sets this variable to be equal to the input."};wF.PROCEDURES_DEFRETURN_TITLE=wF.PROCEDURES_DEFNORETURN_TITLE,wF.CONTROLS_IF_IF_TITLE_IF=wF.CONTROLS_IF_MSG_IF,wF.CONTROLS_WHILEUNTIL_INPUT_DO=wF.CONTROLS_REPEAT_INPUT_DO,wF.CONTROLS_IF_MSG_THEN=wF.CONTROLS_REPEAT_INPUT_DO,wF.PROCEDURES_DEFRETURN_PROCEDURE=wF.PROCEDURES_DEFNORETURN_PROCEDURE,wF.CONTROLS_IF_ELSE_TITLE_ELSE=wF.CONTROLS_IF_MSG_ELSE,wF.PROCEDURES_CALLRETURN_CALL=wF.PROCEDURES_CALLNORETURN_CALL,wF.LISTS_GET_SUBLIST_INPUT_IN_LIST=wF.LISTS_INLIST,wF.LISTS_GET_INDEX_INPUT_IN_LIST=wF.LISTS_INLIST,wF.MATH_CHANGE_TITLE_ITEM=wF.VARIABLES_DEFAULT_NAME,wF.PROCEDURES_DEFRETURN_DO=wF.PROCEDURES_DEFNORETURN_DO,wF.CONTROLS_IF_ELSEIF_TITLE_ELSEIF=wF.CONTROLS_IF_MSG_ELSEIF,wF.LISTS_GET_INDEX_HELPURL=wF.LISTS_INDEX_OF_HELPURL,wF.CONTROLS_FOREACH_INPUT_DO=wF.CONTROLS_REPEAT_INPUT_DO,wF.CONTROLS_FOR_INPUT_DO=wF.CONTROLS_REPEAT_INPUT_DO,wF.LISTS_CREATE_WITH_ITEM_TITLE=wF.VARIABLES_DEFAULT_NAME,wF.TEXT_APPEND_VARIABLE=wF.VARIABLES_DEFAULT_NAME,wF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=wF.VARIABLES_DEFAULT_NAME,wF.LISTS_INDEX_OF_INPUT_IN_LIST=wF.LISTS_INLIST,wF.LISTS_SET_INDEX_INPUT_IN_LIST=wF.LISTS_INLIST,wF.LISTS_CREATE_WITH_ITEM_TITLE=wF.VARIABLES_DEFAULT_NAME,wF.TUPLE_CREATE_WITH_ITEM_TITLE=wF.VARIABLES_DEFAULT_NAME,wF.DICT_CREATE_WITH_ITEM_TITLE=wF.VARIABLES_DEFAULT_NAME,wF.SET_CREATE_WITH_ITEM_TITLE=wF.VARIABLES_DEFAULT_NAME,wF.TEXT_APPEND_VARIABLE=wF.VARIABLES_DEFAULT_NAME,wF.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=wF.VARIABLES_DEFAULT_NAME,wF.MATH_CHANGE_TITLE_ITEM=wF.VARIABLES_DEFAULT_NAME,wF.LABPLUS_USB_SWITCH_ON="turn on",wF.LABPLUS_USB_SWITCH_OFF="turn off",wF.LABPLUS_MOTOR_ON_ANTICLOCKWISE="toggle",wF.XUNFEI_SPEECH_TTS_HELPURL="",wF.XUNFEI_SPEECH_TTS_TOOLTIP='The synthesized audio file format can only be "*.pcm"',wF.XUNFEI_SPEECH_TTS_MESSAGE0="[iFLYTEK] synthetic audio %1 APPID %2 APISecret %3 APIKey %4 text %5 transfer to audio file %6",wF.XUNFEI_SPEECH_IAT_HELPURL="",wF.XUNFEI_SPEECH_IAT_TOOLTIP='The audio formats that can be recognized are "*.pcm" and "*.wav"',wF.XUNFEI_SPEECH_IAT_MESSAGE0="[iFLYTEK] identify audio %1 APPID %2 APISecret %3 APIKey %4 audio file to be identified %5",wF.XUNFEI_SPEECH_IAT_RESULT_HELPURL="",wF.XUNFEI_SPEECH_IAT_RESULT_TOOLTIP="",wF.XUNFEI_SPEECH_IAT_RESULT_MESSAGE0="[iFLYTEK] identify result",wF.MPYTHON_LARK_GET_ALL_COLOR_MESSAGE0="LARK I2C RGB color",wF.MPYTHON_LARK_GET_ALL_COLOR_TOOLTIP="Returns as list",wF.MPYTHON_LARK_GET_COLOR_TOOLTIP="",wF.MPYTHON_LARK_GET_COLOR_MESSAGE0="LARK I2C RGB color %1",wF.MPYTHON_lARK_RED="RED",wF.MPYTHON__LARK_GREEN="GREEN",wF.MPYTHON__LARK_BLUE="BLUE",wF.MPYTHON_LARK_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",wF.MPYTHON_LARKT_GET_ALL_COLOR_HSV_MESSAGE0="LARK I2C HSV color",wF.MPYTHON_LARK_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",wF.MPYTHON_LARK_GET_COLOR_HSV_MESSAGE0="LARK I2C HSV color %1",wF.MPYTHON_LARK_GET_COLOR_STRING_TOOLTIP="",wF.MPYTHON_LARK_GET_COLOR_STRING_MESSAGE0="LARK GET COLOR",wF.MPYTHON_LARK_DISCERN_COLOR_TOOLTIP="",wF.MPYTHON_LARK_DISCERN_COLOR_MESSAGE0="LARK GET COLOR %1",wF.MPYTHON_LARK_RED="RED",wF.MPYTHON_LARK_GREEN="GREEN",wF.MPYTHON_LARK_BLUE="BLUE",wF.MPYTHON_LARK_ORANGE="ORANGE",wF.MPYTHON_LARK_YELLOW="YELLOW",wF.MPYTHON_LARK_PURPLE="PURPLE",wF.MPYTHON_LARK_CYAN="CYAN",wF.MPYTHON_LARK_NONE="NO COLOR",wF.MPYTHON_LARK_NULL="FAIL THE COLOR",wF.MPYTHON_LARK_ULTRASONIC_TOOLTIP="",wF.MPYTHON_LARK_ULTRASONIC_MESSAGE0="LARK I2C ultrasonic value",wF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",wF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="LARK I2C SET MOTOR %1 SPEED %2",wF.MPYTHON_LARK_MOTOR2_SET_I2C_TOOLTIP="",wF.MPYTHON_LARK_MOTOR2_SET_I2C_MESSAGE0="SWIFT HORSE %1 速度 %2",wF.MPYTHON_LARK_GET_LINE_ON_I2C_TOOLTIP="",wF.mpython_LARK_GET_LINE_ON_I2C_MESSAGE0="LARK I2C GET %1 VALUE",wF.mpython_LARK_GET_LINE_RIGHT_ON_I2C="RIGHT",wF.mpython_LARK_GET_LINE_LEFT_ON_I2C="LEFT",wF.MPYTHON_LARK_SEARCH_LINE_ON_I2C_TOOLTIP="",wF.mpython_LARK_SEARCH_LINE_ON_I2C_MESSAGE0="LARK I2C SEARCH TOUCH LINE %1",wF.MPYTHON_LARK_SEARCH_LEFT="LEFT",wF.MPYTHON_LARK_SEARCH_RIGHT="RIGHT",wF.MPYTHON_LARK_SEARCH_LEFT2="ALL",wF.MPYTHON_LARK_SEARCH_RIGHT2="NOT",wF.MPYTHON_LARK_SEARCH_BOTH="ALL",wF.MPYTHON_LARK_SEARCH_NONE="NOT",wF.MPYTHON_LARK__CAR_GET_ALL_COLOR_TOOLTIP="Returns as list",wF.MPYTHON_LARK__CAR_GET_ALL_COLOR_MESSAGE0="HORSE GET COLOR",wF.MPYTHON_LARK_CAR_GET_COLOR_TOOLTIP="",wF.MPYTHON_LARK_CAR_GET_COLOR_MESSAGE0="HORSE GET COLOR %1",wF.MPYTHON_lARK_CAR_RED="RED",wF.MPYTHON__LARK_CAR_GREEN="GREEN",wF.MPYTHON__LARK_CAR_BLUE="BLUE",wF.MPYTHON_LARK_CAR_GET_ALL_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",wF.MPYTHON_LARKT_CAR_GET_ALL_COLOR_HSV_MESSAGE0="HORSE I2C HSV color",wF.MPYTHON_LARK_CAR_GET_COLOR_HSV_TOOLTIP="HSV(Hue, Saturation, Value)",wF.MPYTHON_LARK_CAR_GET_COLOR_HSV_MESSAGE0="HORSE I2C HSV %1",wF.MPYTHON_LARK_CAR_GET_COLOR_STRING_TOOLTIP="",wF.MPYTHON_LARK_CAR_GET_COLOR_STRING_MESSAGE0="HORSE GET COLOR",wF.MPYTHON_LARK_CAR_DISCERN_COLOR_TOOLTIP="",wF.MPYTHON_LARK_CAR_DISCERN_COLOR_MESSAGE0="HORSE GET %1",wF.MPYTHON_LARK_CAR_RED="RED",wF.MPYTHON_LARK_CAR_GREEN="Green",wF.MPYTHON_LARK_CAR_BLUE="Blue",wF.MPYTHON_LARK_CAR_ORANGE="Orange",wF.MPYTHON_LARK_CAR_YELLOW="Yellow",wF.MPYTHON_LARK_CAR_PURPLE="Purple",wF.MPYTHON_LARK_CAR_CYAN="Cyan",wF.MPYTHON_LARK_CAR_NONE="None",wF.MPYTHON_LARK_CAR_NULL="Null",wF.MPYTHON_LARK_CAR_ULTRASONIC_TOOLTIP="",wF.MPYTHON_LARK_CAR_ULTRASONIC_MESSAGE0="Horse Get Ultrasoinc",wF.MPYTHON_LARK_CAR_GET_LINE_ON_I2C_TOOLTIP="",wF.mpython_LARK_CAR_GET_LINE_ON_I2C_MESSAGE0="HORSE GET %1 LINE VALUE",wF.mpython_LARK_CAR_GET_LINE_RIGHT_ON_I2C="RIGHT",wF.mpython_LARK_CAR_GET_LINE_LEFT_ON_I2C="LEFT",wF.MPYTHON_LARK_CAR_SEARCH_LINE_ON_I2C_TOOLTIP="",wF.mpython_LARK_CAR_SEARCH_LINE_ON_I2C_MESSAGE0="HORSE I2C SEARCH TOUCH LINE %1",wF.MPYTHON_LARK_CAR_SEARCH_LEFT="LEFT TOUCHED",wF.MPYTHON_LARK_CAR_SEARCH_RIGHT="RIGHT TOUCHED",wF.MPYTHON_LARK_CAR_SEARCH_LEFT2="BOTH TOUCHED",wF.MPYTHON_LARK_CAR_SEARCH_NONE="NOT TOUCHED",wF.MPYTHON_LARK_MOTOR_SET_I2C_TOOLTIP="",wF.MPYTHON_LARK_MOTOR_SET_I2C_MESSAGE0="HOSRE MOTION %1 SPEED %2",wF.MPYTHON_LARK_CAR_MOTION_LEFT="Trun Left",wF.MPYTHON_LARK_CAR_MOTION_RIGHT="Trun Right",wF.MPYTHON_LARK_CAR_MOTION_FORWARD="forward",wF.MPYTHON_LARK_CAR_MOTION_BACKWARD="Backward",wF.MPYTHON_LARK_CAR_MOTION_STOP="Stop",wF.MPYTHON_DEFINE_THREAD_MESSAGE0="define thread %1",wF.MPYTHON_RUN_THREAD_MESSAGE0="run thread %1",wF.NUMBER_TO_BYTES_MESSAGE0="(struct.pack) convert number to bytes %1 %2 %3 %4 source number %5",wF.BYTES_TO_NUMBER_MESSAGE0="(struct.unpack) unpack bytes to number %1 %2 %3 %4 source bytes %5",wF.LITTLE_ENDIAN="Little-Endian (Default)",wF.BIG_ENDIAN="Big-Endian",wF.MPYTHON2_ACCELEROMETER_EVENT_MESSAGE0="[mPython 2.x] When board is %1",wF.MPYTHON2_ACCELEROMETER_EVENT_HELPURL="",wF.MPYTHON2_ACCELEROMETER_EVENT_TOOLTIP="",wF.MPYTHON2_ACCELEROMETER_EVENT_TILT_LEFT="tilt left",wF.MPYTHON2_ACCELEROMETER_EVENT_TILT_RIGHT="tilt right",wF.MPYTHON2_ACCELEROMETER_EVENT_TILT_UP="tilt up",wF.MPYTHON2_ACCELEROMETER_EVENT_TILT_DOWN="tilt down",wF.MPYTHON2_ACCELEROMETER_EVENT_FACE_UP="face up",wF.MPYTHON2_ACCELEROMETER_EVENT_FACE_DOWN="face down",wF.MPYTHON2_ACCELEROMETER_EVENT_SINGLE_CLICK="single click",wF.MPYTHON2_ACCELEROMETER_EVENT_DOUBLE_CLICK="double click",wF.MPYTHON2_ACCELEROMETER_EVENT_FREEFALL="freefall",wF.MPYTHON2_ACCELEROMETER_ROLL_ANGLE="roll angle",wF.MPYTHON2_ACCELEROMETER_PITCH_ANGLE="pitch angle",wF.MPYTHON2_ACCELEROMETER_ANGLE_HELPURL="",wF.MPYTHON2_ACCELEROMETER_ANGLE_TOOLTIP="",wF.MPYTHON2_ACCELEROMETER_ANGLE_MESSAGE0="Get %1",wF.MPYTHON2_BUTTON_IS_PRESSED_HELPURL="",wF.MPYTHON2_BUTTON_IS_PRESSED_TOOLTIP="",wF.MPYTHON2_BUTTON_IS_PRESSED_MESSAGE0="Button %1 is pressed",wF.MPYTHON2_BUTTON_WAS_PRESSED_HELPURL="",wF.MPYTHON2_BUTTON_WAS_PRESSED_TOOLTIP="",wF.MPYTHON2_BUTTON_WAS_PRESSED_MESSAGE0="Button %1 was pressed",wF.MPYTHON2_BUTTON_GET_PRESSES_HELPURL="",wF.MPYTHON2_BUTTON_GET_PRESSES_TOOLTIP="",wF.MPYTHON2_BUTTON_GET_PRESSES_MESSAGE0="Get number of presses for button %1",wF.MPYTHON2_BUTTON_EVENT_MESSAGE0="When button %1 is %2",wF.MPYTHON2_BUTTON_EVENT_HELPURL="",wF.MPYTHON2_BUTTON_EVENT_TOOLTIP="",wF.MPYTHON2_BUTTON_EVENT_PRESSED="pressed",wF.MPYTHON2_BUTTON_EVENT_RELEASED="released",wF.MPYTHON2_TOUCHPAD_IS_PRESSED_HELPURL="",wF.MPYTHON2_TOUCHPAD_IS_PRESSED_TOOLTIP="",wF.MPYTHON2_TOUCHPAD_IS_PRESSED_MESSAGE0="Touchpad %1 is pressed",wF.MPYTHON2_TOUCHPAD_WAS_PRESSED_HELPURL="",wF.MPYTHON2_TOUCHPAD_WAS_PRESSED_TOOLTIP="",wF.MPYTHON2_TOUCHPAD_WAS_PRESSED_MESSAGE0="Touchpad %1 was pressed",wF.MPYTHON2_TOUCHPAD_GET_PRESSES_HELPURL="",wF.MPYTHON2_TOUCHPAD_GET_PRESSES_TOOLTIP="",wF.MPYTHON2_TOUCHPAD_GET_PRESSES_MESSAGE0="Get number of presses for touchpad %1",wF.MPYTHON2_TOUCHPAD_VALUE_HELPURL="",wF.MPYTHON2_TOUCHPAD_VALUE_TOOLTIP="",wF.MPYTHON2_TOUCHPAD_VALUE_MESSAGE0="Touchpad %1 value",wF.MPYTHON2_TOUCHPAD_EVENT_MESSAGE0="When touchpad %1 is %2",wF.MPYTHON2_TOUCHPAD_EVENT_HELPURL="",wF.MPYTHON2_TOUCHPAD_EVENT_TOOLTIP="",wF.MPYTHON2_TOUCHPAD_EVENT_PRESSED="pressed",wF.MPYTHON2_TOUCHPAD_EVENT_RELEASED="released",wF.MPYTHON2_TOUCHPAD_THRESHOLD_MESSAGE0="Set threshold for touchpad %1 as %2",wF.MPYTHON2_TOUCHPAD_THRESHOLD_HELPURL="",wF.MPYTHON2_TOUCHPAD_THRESHOLD_TOOLTIP="",wF.BLE_UUID_HELPURL="https://mpython-ble.readthedocs.io/zh/master/api/index.html#UUID",wF.BLE_UUID_TOOLTIP="",wF.BLE_SETUP_PERIPHERAL_HELPURL="",wF.BLE_SETUP_PERIPHERAL_TOOLTIP="",wF.BLE_SETUP_PERIPHERAL_MESSAGE0="make BLE Peripheral object with %1 name %2 Service UUID %3",wF.BLE_ADD_CHARACTERISTIC_HELPURL="",wF.BLE_ADD_CHARACTERISTIC_TOOLTIP="",wF.BLE_ADD_CHARACTERISTIC_MESSAGE0="add BLE Characteristic %1 %2 Characteristic UUID %3 Read %4 Write %5 Notity %6",wF.BLE_PERIPHERAL_ADVERTISE_HELPURL="",wF.BLE_PERIPHERAL_ADVERTISE_TOOLTIP="",wF.BLE_PERIPHERAL_ADVERTISE_MESSAGE0="BLE Peripheral %1",wF.BLE_START_BROADCASTING="start broadcasting",wF.BLE_STOP_BROADCASTING="stop broadcasting",wF.BLE_PERIPHERAL_ATTRUBUTE_READ_HELPURL="",wF.BLE_PERIPHERAL_ATTRUBUTE_READ_TOOLTIP="",wF.BLE_PERIPHERAL_ATTRUBUTE_READ_MESSAGE0="read BLE Peripheral Characteristic %1",wF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_HELPURL="",wF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_TOOLTIP="",wF.BLE_PERIPHERAL_ATTRUBUTE_WRITE_MESSAGE0="write BLE Peripheral Characteristic %1 %2 value %3 Notify %4",wF.BLE_PERIPHERAL_DISCONNECT_HELPURL="",wF.BLE_PERIPHERAL_DISCONNECT_TOOLTIP="",wF.BLE_PERIPHERAL_DISCONNECT_MESSAGE0="BLE Peripheral disconnect",wF.BLE_PERIPHERAL_MAC_HELPURL="",wF.BLE_PERIPHERAL_MAC_TOOLTIP="",wF.BLE_PERIPHERAL_MAC_MESSAGE0="BLE Peripheral MAC address",wF.BLE_PERIPHERAL_CONNECTION_CALLBACK_HELPURL="",wF.BLE_PERIPHERAL_CONNECTION_CALLBACK_TOOLTIP="",wF.BLE_PERIPHERAL_CONNECTION_CALLBACK_MESSAGE0="when BLE Peripheral connect to Centeral %1 connect handle %2 address type %3 Centeral MAC %4",wF.BLE_PERIPHERAL_WRITE_CALLBACK_HELPURL="",wF.BLE_PERIPHERAL_WRITE_CALLBACK_TOOLTIP="",wF.BLE_PERIPHERAL_WRITE_CALLBACK_MESSAGE0="when BLE Characteristic is overwritten %1 connect handle %2 attrubute handle %3 written data %4",wF.BLE_SETUP_CENTERAL_HELPURL="",wF.BLE_SETUP_CENTERAL_TOOLTIP="",wF.BLE_SETUP_CENTERAL_MESSAGE0="make BLE Centeral object with name %1",wF.BLE_CENTERAL_CONNECT_HELPURL="",wF.BLE_CENTERAL_CONNECT_TOOLTIP="",wF.BLE_CENTERAL_CONNECT_MESSAGE0="BLE Centeral connect to %1 %2",wF.BLE_CENTERAL_IS_CONNECTED_HELPURL="",wF.BLE_CENTERAL_IS_CONNECTED_TOOLTIP="",wF.BLE_CENTERAL_IS_CONNECTED_MESSAGE0="BLE Centeral is connected ?",wF.BLE_CENTERAL_DEF_CHARACTERISTIC_HELPURL="",wF.BLE_CENTERAL_DEF_CHARACTERISTIC_TOOLTIP="",wF.BLE_CENTERAL_DEF_CHARACTERISTIC_MESSAGE0="set %1 as connected Peripheral Characteristic object %2 Service UUID %3 Characteristic UUID %4",wF.BLE_CENTERAL_CHARACTERISTIC_READ_HELPURL="",wF.BLE_CENTERAL_CHARACTERISTIC_READ_TOOLTIP="",wF.BLE_CENTERAL_CHARACTERISTIC_READ_MESSAGE0="read connected Peripheral Characteristic %1 value",wF.BLE_CENTERAL_CHARACTERISTIC_WRITE_HELPURL="",wF.BLE_CENTERAL_CHARACTERISTIC_WRITE_TOOLTIP="",wF.BLE_CENTERAL_CHARACTERISTIC_WRITE_MESSAGE0="write connected Peripheral Characteristic %1 value as %2",wF.BLE_CENTERAL_NOTIFY_CALLBACK_HELPURL="",wF.BLE_CENTERAL_NOTIFY_CALLBACK_TOOLTIP="",wF.BLE_CENTERAL_NOTIFY_CALLBACK_MESSAGE0="when received Notify data %1 value handle %2 notify data %3",wF.BLE_CENTERAL_CONNECTED_INFO_HELPURL="",wF.BLE_CENTERAL_CONNECTED_INFO_TOOLTIP="",wF.BLE_CENTERAL_CONNECTED_INFO_MESSAGE0="connected Peripheral info %1",wF.BLE_CENTERAL_CLOSE_HELPURL="",wF.BLE_CENTERAL_CLOSE_TOOLTIP="",wF.BLE_CENTERAL_CLOSE_MESSAGE0="BLE Centeral disconnect",wF.BLE_INFO_NAME="name",wF.BLE_INFO_MAC="mac",wF.BLE_INFO_RSSI="rssi",wF.BLE_INFO_ADDRTYPE="addr_type",wF.BLE_INFO_ADVTYPE="adv_type",wF.BLE_INFO_DATA="data(tuple)",wF.BLE_SETUP_UART_HELPURL="",wF.BLE_SETUP_UART_TOOLTIP="",wF.BLE_SETUP_UART_MESSAGE0="make BLE UART slave with name %1",wF.BLE_UART_IS_CONNECTED_HELPURL="",wF.BLE_UART_IS_CONNECTED_TOOLTIP="",wF.BLE_UART_IS_CONNECTED_MESSAGE0="BLE UART is connected ?",wF.BLE_UART_ANY_HELPURL="",wF.BLE_UART_ANY_TOOLTIP="",wF.BLE_UART_ANY_MESSAGE0="BLE UART readable bytes",wF.BLE_UART_IRQ_HELPURL="",wF.BLE_UART_IRQ_TOOLTIP="",wF.BLE_UART_IRQ_MESSAGE0="when BLE UART received data %1 do %2",wF.BLE_UART_READ_HELPURL="",wF.BLE_UART_READ_TOOLTIP="message from UART",wF.BLE_UART_READ_MESSAGE0="received data",wF.BLE_UART_WRITE_HELPURL="",wF.BLE_UART_WRITE_TOOLTIP="",wF.BLE_UART_WRITE_MESSAGE0="BLE UART send %1",wF.BLE_UART_CLOSE_HELPURL="",wF.BLE_UART_CLOSE_TOOLTIP="",wF.BLE_UART_CLOSE_MESSAGE0="BLE UART disconnect",wF.BLE_SETUP_UART_MASTER_HELPURL="",wF.BLE_SETUP_UART_MASTER_TOOLTIP="",wF.BLE_SETUP_UART_MASTER_MESSAGE0="make BLE UART master, connect to %1 %2",wF.BLE_SETUP_HID_HELPURL="",wF.BLE_SETUP_HID_TOOLTIP="",wF.BLE_SETUP_HID_MESSAGE0="make BLE HID %1 object %2 name %3 battery %4",wF.BLE_HID_MOUSE="mouse",wF.BLE_HID_KEYBOARD="keyboard",wF.BLE_HID_CONSUMER="consumer",wF.BLE_HID_ADVERTISE_HELPURL="",wF.BLE_HID_ADVERTISE_TOOLTIP="",wF.BLE_HID_ADVERTISE_MESSAGE0="BLE HID %1",wF.BLE_HID_CONNECT_EVENT_HELPURL="",wF.BLE_HID_CONNECT_EVENT_TOOLTIP="",wF.BLE_HID_CONNECT_EVENT_MESSAGE0="when BLE HID connected",wF.BLE_HID_DISCONNECT_HELPURL="",wF.BLE_HID_DISCONNECT_TOOLTIP="",wF.BLE_HID_DISCONNECT_MESSAGE0="BLE HID disconnect",wF.BLE_HID_BATTERY_LEVEL_HELPURL="",wF.BLE_HID_BATTERY_LEVEL_TOOLTIP="",wF.BLE_HID_BATTERY_LEVEL_MESSAGE0="BLE HID battery level",wF.BLE_HID_MOUSE_BUTTONS_HELPURL="",wF.BLE_HID_MOUSE_BUTTONS_TOOLTIP="",wF.BLE_HID_MOUSE_BUTTONS_MESSAGE0="mouse button %1",wF.BLE_HID_MOUSE_CLICK_HELPURL="",wF.BLE_HID_MOUSE_CLICK_TOOLTIP="",wF.BLE_HID_MOUSE_CLICK_MESSAGE0="BLE HID mouse click %1",wF.BLE_HID_MOUSE_PRESS_HELPURL="",wF.BLE_HID_MOUSE_PRESS_TOOLTIP="",wF.BLE_HID_MOUSE_PRESS_MESSAGE0="BLE HID mouse press %1",wF.BLE_HID_MOUSE_RELEASE_HELPURL="",wF.BLE_HID_MOUSE_RELEASE_TOOLTIP="",wF.BLE_HID_MOUSE_RELEASE_MESSAGE0="BLE HID mouse release %1",wF.BLE_HID_MOUSE_RELEASE_ALL_HELPURL="",wF.BLE_HID_MOUSE_RELEASE_ALL_TOOLTIP="",wF.BLE_HID_MOUSE_RELEASE_ALL_MESSAGE0="BLE HID mouse release all",wF.BLE_HID_MOUSE_MOVE_HELPURL="",wF.BLE_HID_MOUSE_MOVE_TOOLTIP="x, y - cursor movement, range ±127 .\nwheel - wheel movement, range ±127 .",wF.BLE_HID_MOUSE_MOVE_MESSAGE0="BLE HID mouse cursor move %1 x %2 y %3 wheel %4",wF.BLE_HID_KEYBOARD_BUTTONS_HELPURL="",wF.BLE_HID_KEYBOARD_BUTTONS_TOOLTIP="",wF.BLE_HID_KEYBOARD_BUTTONS_MESSAGE0="keyboard button %1",wF.BLE_HID_KEYBOARD_SEND_HELPURL="",wF.BLE_HID_KEYBOARD_SEND_TOOLTIP="",wF.BLE_HID_KEYBOARD_SEND_MESSAGE0="BLE HID keyboard send %1",wF.BLE_HID_KEYBOARD_SEND_MULTI_HELPURL="",wF.BLE_HID_KEYBOARD_SEND_MULTI_TOOLTIP="",wF.BLE_HID_KEYBOARD_SEND_MULTI_MESSAGE0="BLE HID keyboard send multiple %1 %2 %3",wF.BLE_HID_KEYBOARD_PRESS_HELPURL="",wF.BLE_HID_KEYBOARD_PRESS_TOOLTIP="",wF.BLE_HID_KEYBOARD_PRESS_MESSAGE0="BLE HID keyboard press %1",wF.BLE_HID_KEYBOARD_RELEASE_HELPURL="",wF.BLE_HID_KEYBOARD_RELEASE_TOOLTIP="",wF.BLE_HID_KEYBOARD_RELEASE_MESSAGE0="BLE HID keyboard release %1",wF.BLE_HID_KEYBOARD_RELEASE_ALL_HELPURL="",wF.BLE_HID_KEYBOARD_RELEASE_ALL_TOOLTIP="",wF.BLE_HID_KEYBOARD_RELEASE_ALL_MESSAGE0="BLE HID keyboard release all",wF.BLE_HID_CONSUMER_BUTTONS_HELPURL="",wF.BLE_HID_CONSUMER_BUTTONS_TOOLTIP="",wF.BLE_HID_CONSUMER_BUTTONS_MESSAGE0="remote control button %1",wF.BLE_HID_CONSUMER_SEND_HELPURL="",wF.BLE_HID_CONSUMER_SEND_TOOLTIP="",wF.BLE_HID_CONSUMER_SEND_MESSAGE0="BLE HID remote control send %1",wF.BLE_SETUP_IBEACON_HELPURL="",wF.BLE_SETUP_IBEACON_TOOLTIP="",wF.BLE_SETUP_IBEACON_MESSAGE0="make BLE iBeacon object with %1 UUID %2 major %3 minor %4",wF.BLE_IBEACON_ADVERTISE_HELPURL="",wF.BLE_IBEACON_ADVERTISE_TOOLTIP="",wF.BLE_IBEACON_ADVERTISE_MESSAGE0="BLE iBeacon %1",wF.MPYTHON_PARROT_GET_BATTERY_LEVEL_HELPURL="",wF.MPYTHON_PARROT_GET_BATTERY_LEVEL_TOOLTIP="Return power in mV",wF.MPYTHON_PARROT_GET_BATTERY_LEVEL_MESSAGE0="Voltage(mV) of expansion-board",wF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_HELPURL="",wF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_TOOLTIP="Return the encoded infrared pulse data buff",wF.MPYTHON_BLUEBIT_IR_ENCODE_RAW_MESSAGE0="Expansion-board generating RAW coding %1 carry_freq(Hz) %2 len %3 repeat_pos %4 code %5 data %6",wF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_HELPURL="",wF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_TOOLTIP="Return the encoded infrared pulse data buff\nUser code: 0~255\nCommand code: 0~255",wF.MPYTHON_BLUEBIT_IR_ENCODE_NEC_MESSAGE0="Expansion-board generating NEC coding %1 User code %2 Command code %3",wF.MPYTHON_BLUEBIT_IR_SEND_HELPURL="",wF.MPYTHON_BLUEBIT_IR_SEND_TOOLTIP="",wF.MPYTHON_BLUEBIT_IR_SEND_MESSAGE0="Expansion-board sending infrared pulse data %1 %2",wF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_0="send once",wF.MPYTHON_BLUEBIT_IR_SEND_REPEAT_1="keep sending",wF.MPYTHON_BLUEBIT_IR_STOP_SEND_HELPURL="",wF.MPYTHON_BLUEBIT_IR_STOP_SEND_TOOLTIP="",wF.MPYTHON_BLUEBIT_IR_STOP_SEND_MESSAGE0="Expansion-board stop sending infrared pulse data",wF.MPYTHON_BLUEBIT_IR_LEARN_HELPURL="",wF.MPYTHON_BLUEBIT_IR_LEARN_TOOLTIP="The learning result will be returned after 4 seconds.",wF.MPYTHON_BLUEBIT_IR_LEARN_MESSAGE0="Expansion-board do infrared learning",wF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_HELPURL="",wF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_TOOLTIP="",wF.MPYTHON_BLUEBIT_IR_GET_LEARN_STATUS_MESSAGE0="Is there any result for the infrared learning ?",wF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_HELPURL="",wF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_TOOLTIP='Return the learned "infrared coded data", which must be used after the "learn()" function.',wF.MPYTHON_BLUEBIT_IR_GET_LEARN_DATA_MESSAGE0="Expansion-board learned infrared coding data",wF.MPYTHON_MAIN_HELPURL="",wF.MPYTHON_MAIN_TOOLTIP="This block does not have to be used, it just makes the program structure more regular.",wF.MPYTHON_MAIN_MESSAGE0="Main program",wF.MPYTHON_MLX90615_SET_HELPURL="",wF.MPYTHON_MLX90615_SET_MESSAGE0="MLX90615 set sensor emissivity %1",wF.MPYTHON_MLX90615_SET_TOOLTIP="",wF.MPYTHON_MLX90615_GET_HELPURL="",wF.MPYTHON_MLX90615_GET_MESSAGE0="MLX90615 get sensor emissivity",wF.MPYTHON_MLX90615_GET_TOOLTIP="",wF.MPYTHON_MLX90615_THERMOMETRY_HELPURL="",wF.MPYTHON_MLX90615_THERMOMETRY_MESSAGE0="MLX90615 measured temperature",wF.MPYTHON_MLX90615_THERMOMETRY_TOOLTIP="",wF.MPYTHON_MQ135_INIT_HELPURL="",wF.MPYTHON_MQ135_INIT_MESSAGE0="initialize MQ135 at output pin %1 temperature %2 ℃ humidity%3 %",wF.MPYTHON_MQ135_INIT_TOOLTIP="V(VCC) is connected to the power port of the expansion board, G(GND) is connected to the ground port of the expansion board, and AO is connected to the pin of the expansion board\nMQ135 is used to detect the concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases in the air.",wF.MPYTHON_MQ135_OPTIONS_MESSAGE0="MQ135 return %1",wF.MPYTHON_MQ135_OPTIONS_HELPURL="",wF.MPYTHON_MQ135_OPTIONS_TOOLTIP="",wF.MPYTHON_MQ135_GET_RZERO="correction of sensor resistance",wF.MPYTHON_MQ135_GET_CORRECTED_RZERO="calibrate sensor resistance (calibrate temperature and humidity)",wF.MPYTHON_MQ135_GET_PPM="the ppm concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases",wF.MPYTHON_MQ135_GET_CORRECTED_PPM="the ppm concentration of carbon dioxide, alcohol, benzene, nitrogen oxides, ammonia and other gases",wF.mpython_gyroscope_get_HELPURL="",wF.mpython_gyroscope_get_MESSAGE0="%1 axis angular velocity",wF.mpython_gyroscope_get_TOOLTIP="Only applicable to the mPython board version above v2.3",wF.MPYTHON_GYROSCOPE_RANGE_16_DPS="±16dps",wF.MPYTHON_GYROSCOPE_RANGE_32_DPS="±32dps",wF.MPYTHON_GYROSCOPE_RANGE_64_DPS="±64dps",wF.MPYTHON_GYROSCOPE_RANGE_128_DPS="±128dps",wF.MPYTHON_GYROSCOPE_RANGE_256_DPS="±256dps",wF.MPYTHON_GYROSCOPE_RANGE_512_DPS="±512dps",wF.MPYTHON_GYROSCOPE_RANGE_1024_DPS="±1024dps",wF.MPYTHON_GYROSCOPE_RANGE_2048_DPS="±2048dps",wF.MPYTHON_GYROSCOPE_SET_RANGE_HELPURL="",wF.MPYTHON_GYROSCOPE_SET_RANGE_TOOLTIP="Default is ±256dps. Only applicable to the mPython board version above v2.3",wF.MPYTHON_GYROSCOPE_SET_RANGE_MESSAGE0="set angular velocity range to %1",wF.MPYTHON_GYROSCOPE_SET_OFFSET_HELPURL="",wF.MPYTHON_GYROSCOPE_SET_OFFSET_TOOLTIP="Only applicable to the mPython board version above v2.3",wF.MPYTHON_GYROSCOPE_SET_OFFSET_MESSAGE0="calibration angular velocity value %1 X axis deviation %2 Y axis deviation %3 Z axis deviation %4";const WF=wF;Object.assign(a_.Variables,L_),Object.assign(a_.Procedures,xi),a_.Python=eO,a_.generator=eO,p_.Profile.default={},Object.assign(p_.Profile,MG),Object.assign(p_.Profile.default,MG["ESP32 Generic"]),Object.assign(a_.Lang.ZhHans,XF),Object.assign(a_.Lang.ZhHant,kF),Object.assign(a_.Lang.En,WF),Object.assign(a_.Blocks,t,e,i,T,E,n,o,s,O,I,a,p,M,y,k,V,g,f,w,D,X,v,x,b,Y,H,c,G,B,F,U,O_),Object.assign(a_.Python.forBlock,L,R,r,S,l,A,P,N,d,u,h,m,C,__,o_,n_,J,t_,s_,z,E_,T_,i_,e_,Z,K,W,j,q,$,Q,I_)})(); \ No newline at end of file diff --git a/boards/default/micropython_esp32/styles/main.ab1e6c96.css b/boards/default/micropython_esp32/styles/main.9e8e2453.css similarity index 100% rename from boards/default/micropython_esp32/styles/main.ab1e6c96.css rename to boards/default/micropython_esp32/styles/main.9e8e2453.css diff --git a/boards/default/micropython_esp32c2/build/Mixgo_Mini-v1.23.0.bin b/boards/default/micropython_esp32c2/build/Mixgo_Mini-v1.23.0.bin index b726593d8512d2d049ddd2bc65e2334cf7860b06..4a0440bb0a8f5e726f043900aec162348fd1324a 100644 GIT binary patch delta 104868 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 delta 103307 zcmcG$d3=o57dZUPoq1;Fxe{4LMDWOl2#r`0q&yij*+fKYr;Nl_YqYd>6Ujtk4Z)$h zj1(nRjaVK_%g`X!qPCW{qp5wFP^$L#+<7M2et+*DzdznLpU=r%&bjBFd+)jDp1V9# ze6XM8V87yI|I{ht#5QqaOms{;{MV^XY^Rv^OWXKw&H1KF)4hke4<~et^|-mo>xa^# zzl`7T`NEyj#BYBnOnCB6!jYQCPq!s>-7jr>J!i7TuT5O1n2wzLPhq;EKou!&ZT#Cd zRjZ@TNZGm8KV&rQFlso+2@ChU>v!YBC*O9qd<0j+H5sy~QVqz^#I|Y^C(r7odfwg@ zoi}ryN}f57Sa|X81aAZ5J+hk;vbYxG1+m_Sz|P)=6>U_}J<1FUvK)z{+yxjR`+L8O zx1kdfIy!k9HXB#)^IaJYuMgPYZ!xIL^zD;sR$7WnFt4w?jgcW#1$jdc3JNZTEpme zT0O_+VI0C#g!d6L5&9zxL8vWb$M`{n*MyV3iqtBV`1>8?tme3|emYmUD_seH z-K;ab#=jM3RFa%CUmZ=_FaKU=NJr>^u=udfF!hkm@bI9{5Qu3r)(~pvxXj}^gU3mo z;SYp$Cv=9>Q5(z2Q-Py&(j{x(LAtwK6rea9nAS-mns(s;%BIAH&%QeGyU- zRz~R!%Npnn#-@71!^V2UiEzE4xS`%Kq?O+Aaj4!9jd8}y-yPQSt$OGa-w%0*wbL66 zf%vcW+j@fsh8)5ptmr1f#(2Hq9EKSk^oBj{^@j9Ldc!5epTl$~q_;47{QD48i`Dh} zC#UEQca!yoEeOU`y`fz%z2QZM-jIdiO-w)QqBm3~>J2lyVjA;W8}x>=-Svj;gRpH_ z_8`Ky2(>Z>4A2`!KlX_)Q3d&}kW{Upe6d=iDuf-2)%)u;F4Y^#*J6jb!%JW24db9_ ziMs6^$0igJA@yr)|5tj$Vhm>@*b%lMbilmU7!EAQzT2ud#AEy{(mOEB+@d#}#`pvb z9SAQFa=y_UK1906U3$YG2$hHzk+urMU25O>VZ*bBW)BFVR-czGOR>K3>1dp$JH%;#$j?a!f*rwLKO@X4zu5puxp=P6pVK@u_1q(5L4x#Z^ z9)_wi55r&#xy}E;CzxiC@r{R}Y>S7X9K-7v)Hzf zR@Kv-^fLG&gdt=iNC+`-sD)-*kBq-D>*+txAJYt2UX44>(x-m+GNf1k1LrW!faN74 zxYF{WNKKw@PMQXJAjBcm_G%8sXCfH>mB(=Dyq94h!cDCLRPSZDi}7^`n=#*vVJ(j+ zotL2#!vE4P#JrsdAqekG?g&R>G);vn>Sefqun!)@XeRm;7I+!vBFsei5aEhEsjX&7 z`$oTyDhSUxpQDxDJ-#QsTItl$-f!B|*> zV0r3k;9%B7P5pQO!m{@ft|Kr~29FxYNj0%r!}LyCLq?p|a1O(A3|n{B8h%H*c*Iq8 z)Ea^@KR#Y-D8;mSr{3@@;`(DaxEp8Khw(k|V4|j3pP499Uxb~QRe`Vtp$y?PR>eAc z1IDXZ)fn0_{0zg75mqAX!t^o>7bDC^C_tEtFk2p1M?bp0qqaBB7wqiwK$VS^ALpIt3 zLpItqdp!+041dOujd~@9Y}6|-WTS4A`PrI&f@h|e)==>zPKx|JP8u%1H&4@0)8cS| zm!WxmFT+_3uOM7UxR3BR0>ONW;ExatUoX(iX>~Wk%i!J2%g`Dj4PhL@e1we%RS4G+ zw9UN?5eTXBfQ6c_IzPw3$o%a3d_b(p+i+mi%ldwNIDA#2X%%FD$7z;QotBzjAe~g* zuvqSagN0I8`C*ABCp##QOsx6*Ws!+DO*CgTOYqSihGG{XC(nGM>7*iNwY=+Z%~`cd zlo!0vELE$P?`Xuo)RF4-ae$eRY$tm!2l4{d{_^ z3DfOV7_aAwpKr@!yiX67U$3oz@fB$--Y3R~(RX*zx2ebIyN4Jnq-92ul50v(O^j|2 zJ6iJZksa|MM)Ce+MWWmxir=Rt-wc)iis8qpyqZk%Fn(gpwm#-UtWI-RnADE1M}C_C zh3)ud5kK^m!;W_?n^%%wIlhEXSsh}%Vt3|D?1MS3)F+kBoF%$HR%|_=_yiw6-m2Cf4ylYd z*gC%=-|5)j2*yc#Co-o#Y?SyIRadwy@l7yzF7YkN94}~|z_%uIJfMF9A3F}WedH?VsR2cZgU~^DpK`b2a z$|UjAC0)%;TyJ9XI2{u+!M__Xk{{lI4j5`j)SXyk)xqFyd@A{YhmGC%MD6?tXSp+5 ze$uyerj}%uAZI2ToZ-tf8ezDko>kl>2aoh=LGniPh@uy?9X-4o`aVGgLf$kjeK9 zJ~TSQ3gxd~-mo~*GffQ+IWr_}nKi=de9 zGFp{r$-hv*J@vy?v!dWUZs-M*i7zpN9v zm-V+@1kSqP&~L1Y6(7BCa!TIQdz@#f9V2_lWPoYElN(V--uw=KN=2@{1vC5LXdMcH z&-(CP$m2%vYai4O(@fCz;R^I{7I6imi_zlWh&A;3+w~< zL~@}6=m(;ntc-=IfqV>E$%Arm+3Hh5N{wC8o;hW{Kw?57xW&?r;+Ov zN(b|U$rG~jU9=U4Ghp+(e4I)P*WTsVlEdSma0t$iksV>n5LD<0xH^O%ib29q{vC2X z5>^i7KUTd3ZOnWdtSQ^fk3s>DoB5$+i4Q~#<3Aza=-}8ezMK?Ln3=_oB*~58k1XCm z1G-1%hnSq+i6Ic3%`YT#M#H{rer3o`uVjfIIlrKUfBHHhse#rRy|Qky!e+Z zW}|OY_;5J?JNZiw14r-@xzGzf8Nts-nVOB{yOWWgFnJ`hE6@NL#cv@WMnlCYey%D) zZaC2jVf~IEqT{O{$JtzS-&*Y0k8n$%W zyRMI&!WnQLH*rRHHe!06lIEWv{k!szS$ywUa({@teLH`Xko0KzGZ}}c?!NcR<{d+o z-k0ypd6fjGck_K4e%7ljKh^5AEFQAK3K=f-=ObB8acenY5C3C5l0F>*PVta}FnmTEIdw-4pfOSRWkq$EquDAC3Ql0OLHg`3Wtb38QuS}PhKB|38^t1F}s<1%9dmqAJJ38{?C=S>j@wTHK0 zm-dbm{(#dRUfr;m>lI4Qn#J=OCfH`Nsq~8RWTNYokJbGSN;qQnzQztJvh z-EEp5&oy=y|GLi2ql48{md_}@_{a}eD1{66+Eqp+XO(LmI#M+ejJvc0eVX_53uwoA z1opLNdkI=+h917zrA<&ZhX=c~vE=4dIdZr5S&;r{H!N-5lmt=dwCzYr0%V=j#^`?< zin$r9-+@n9?&^VXmW4$E=+9$#R0CbkYYqCMXr>sOqG9m`Z8&^=UR#G8Z3%nMYm@aI z;}Mmyx{HE(>jI*lc7yl}+GN_`y<8JRJ{`x9(PZ~H*?vL$b0|I1#??4`QVgtnrtM2c zy$vs(X)mdo!TIOfRwQYXta+gwtQs6UuEbi@8d=zNhRFOD_t0<)&uFIA>Al2R#&oqD zKEnK~vX&TP5mZSf1={s~+L3EZtoarZ$}YId6T-_$4)hZ(nK~ zM;{rC&9CWtjnO`tQC1MTPJ`uk<~!}p2E~r_jo*NC{O~&^Jm*bumTejY^c6PbNMDG5 zrCsU0yNPhmkI!$t!Kz9`S^B~6ue4HK-7Zy9ZX&Nmo{qvWoMGBP?*W00uB8@iurg|A zx!e=_zt&D5ayzJcjT%%R?!DHw@vI+Smak9nJQPytERJ2#QulUb|5z-L;k0xd>Bnng zotE7rFdgJHU();WM$TDYIKaiwJ}-U6GF>rw5)EN0T|sMI>k`4prDL1)34TI;5K3aM znxwFJ+EZaU4MWWsr~OhBxTMlGPUT0WTDu%}n)Q=g+{#TuB*ps_W8;@@ql+;Sb}%2VRJ3DxKSQ5x;(M#ed8(eJrsb(@`N*E&L%&t zg%mNRvOO6CxSbTqs0fHq>t>UWrpX&Hts=jC096{Dg?u+wPUUsvv?>I8oYyso42kgL zZC=itllyW_xJ+9@!c$Nk?tKT2_H5Svjx!GZ0H>ui6pGL5BCwczUiUS5F#twh(3v}B zbuG}8Jn7Dr6_q@CoQsEM1yblK<>=_7X~74)ocWCOK_$ z$F01m3nRbxgoul}C}HmG$b3dfV9-Tf$3}DGd&o%Bfye%4*&zwuQkrCS@d|;h7j-Sk z*%bKoqV8DpEUu(p3+~v8#r(^p?3*%Cn@|Ia9~xQ66i$_hPIhtWdvN-a?nCm>Q%?R# zSC^>jLBGqoRvy>9^u}m!q_A7tK=EZ=GC7|KKVR1U-28DL;ZVI%^>o?3*NEOY4hQCt zhw5G}waL%tn%?Lv?~?{suIS>#^RWtbwePhTZfdRRR(C^6gKNu7>h<$cXLo4e+^@P)eZ4mN3}?;bF);f#?Cl77{cpMth)33RHE&c| zab&UvLfG%R2~me*aaMRcZ4tebPdLj*gk%Tu0qQRgERex39^J~j$y}F%oeq;qXSt~j z?E7686m)NFwlD9?@apxtySa&e+M*XP`#8PFkAa83>q5w56$Di4vYKyb?c$u1$R(d> zv0tB|FcC_83?}DbO&+u zJAX|#o=i>w<8@sZvb_uBU)O!B@`r>Qx_abMTe<%YU0oH~J_SbK)J2lKDX{#eZkb9g zH@l_FQ<19oVe@UBncNx(b?@k=s`N1LjxLED9R;WF=%UD`negfk3O#^>kh{7IWK#k> zyQ{m@`n~b(ugU$6cf}@NFR`k&I&JM!TilE7eY~rT8wNBFg`snGxBz~7#mOCQx$?g5 zv?>nH+}HI8ENt24JZ@t)IBWi%J>q33Pj8NwF+L4CICZ0aLws=mxYa2cl9cfGeo*ez z#i#_RcIrMS?{$a#8r^nGc6^{4LEh^Jwgr*ZN0%gtzWXEKBqQ4;96Iq zz}><4C-&6<56Jmb7eQ`?!zvc0WP<%q-E^{A2l0<|1Ic?0VbvquNU|w*>1EgoV0M*;j@0o6ge`aTOc;(GB)Z()lEaohKKM};| zy5x`;Jxfp8&vy1sTdNni12MlZR7i@i;WTG@$n&4;%838m2HC1`p+pnyovm6ylhHy{ zgh28ul=^HNdEF}=di#c+D>C!}s+bj{^gYR3&5m9AS1NK)1G|X+AX(NQW~%i;B=bF3 zrPha$ha=^EYJKlU!l=daml{KfRVO!Ws(+lS>MZ+=(|@NTg9gZ_$Lk-BCJQ3r@CAJp zxzk84zNqg&$c*Vw^^-nK)lk0olm6=fRYO=)qu=3wSyg6@%*XAN_yS!QONrCG=3ROC z1AQ_Ho{?FRQpW6;bSEaV2$xQ2jmc%tq&uUa>Q8-g@C>Pz;;SeZMMgv11F#Zb4TGph z`stBl(<1Yk8|##gH;}(|9p!4>@WRtevT=3V$IOUavv}3N^2`Tw0R_(T=CfxYkvDv ziH8dlYnr&@rb?uLD7R-c{1Bvnpv0}ckiJIY!`DOl+PEjuI~6`A71G~V=&ub&`g`&m zrLu3Zz&!;K-X9Cxbu$XW0(aa(tiuAg-82)B{#Fx zRTT$6!cL#CVw?~|?#x(W6XHnssXKla9)3W~De|ewg0HHs7-#yWqfKwzfG(OjR=z() z@K%%ZaVw_@!Q}K5Xgp1bCp9Bs@H8QiWQ>3hrwLt1#xU49O=w&E_YL56%6xsvvaCVWS;8*LSX&2gk+H*vb%GO%QG6BLT8wS?fjUcs76A!rWNN*RhcnfmKmN<3 zHwqP<8w06J1aZiNvCi^Ab3=8@xqIKac!_7mILkZdvYcx>lBFV(Q=Bvtn_?+S`a=7N zJBoSO@nRdS{rIada4|PwITux5XZcqzL$%Af^=?kR`asnZ;r+~}0nYO7kCUYmUeY?H zTyJOj*heu*-M8HHDT- zg(R|;$di`}$pky;yAmPXGdBfm-NS~^8SMkk5}`g)>Xr+!*nM4>3q3JdvRr7}crD6( zd~=NHp`_*gM%3eY^rn*&Tysr2&=DNV1&QPaLdXgsjGP$?$t!TI9!!(Rtq}BTnlVM6 zT%d85pPmD=R|#Q}Iq&;Td+L>4C}@(6C4HvhdY3UNFR3?|X+8gA9{QVl<2HV;62eJV7wTIvUv*jmxauQc9uuON2>)>m(ymA z5obUSn*ri)i`Wb(ubFLpljrzF$t$15C5O1_Y*#|8s9EJXGvV24A+hPBHcs2~bG&A$ zrrNvR>xzt!-phKE0S{A5*b8mY>5YbA9}5kMSp~B{7NXHN`{rYz1u35aKYuJlG=3D0 zrK>_Wwo|?5TEP8NGE8|UE0>($6tgwZc#RO*@b~c*8H}6CC*%Zgj5wBBm5#>-F-6)_ zJ0W|GkUnRjpo#6qndM~8oVxhf>Za+;}rq%g<^u+7WW|+IA`rgG?FYDcU%-5|hKKe4t_)t1)G^A9d@Wbl+ zwR<&+`+mB6T#F|SblUdrRGf_9xfbO_qqP-1ketDJWmZ(i;s@=Wwl&+K|0hClqi-#d z`Dt9eMBF}cgTE+E^i8aiO7W=Z!2oPNEd4}i+VsQ=M$*7VGV}A&Bt|m7pw!yM?kqm@ zk<)e=e*8peRzK};*Q&}zEr~2}S%cy>35GIk-9T8R@hQ+7M%MN;4Nc zl(LLWC*>9Rw!~_>FtMidjn>u*EAHDlm5-p+o(eh90gu;P=ISM9&fS_E4#&5+R|BW5 zbE!PVFFwYI>+#N}CTGozTMs4afWpnC-x)sjP_ob6&Q^Vk=(NrFtkwrh@QFBB zmfzYMQmH*0gGb>}bK%^lg3&iPH8JPaRxx-XF`{N%YUQ3{#=Q=UN13? z+cy6hadMyJ!R*h3WO2h6msyvLA+d0ns`Nen39!h=3dFF%a^s)Jxuwhy3SYOkI#kXp$qR0 zmLjVPyE~=3cZ^cxv8x)KwPrSJr4-jz$$SOgvI$L8ccG_Ec#ELgS!}peH#`NO*@O_x zK425VRhQw04UPY05Y`Hf5?)+zW*i79N-E2*uK(zjIy{AQ*6cm**ML{~4G>fhuCSrU zfj^Ld1K;p#LOAhw1i__3 zaNyq0luFC2DpU2;l$ZR7)`y*rLEk|}sSwgB{-81!@yI44A+XT_CT?VYt-zgESD>bb z82M450oS#H!{^kW_R0siy!ROJVF?)RGjDG8-)%allzM>IwX3>uQxbQs- zPC;+D{La(CCiEZ5$36{h9**qp{4I}A8A2o4t8nTrqgH25*Y&WuLI|XvoMLCFuJox2 zAxw1z{;UvMs-8oWZ9=oQHcz>?Up$-gtWysC=4UkyaGq}Hbe#)2Ivik~-*`W5!O=7h z8xg(vuCFPF!^^MeE1=#XyzTMg&oZl0QRmZ;wgcOD87A!z{2Hw}QN3dNb28{*_pG$D zX{-s149EQ!=jqF^b_aTI+%HhL6W1CC?A|G~B$jXB`cCxa#5Le6<64}T2EApWgUSvI zWTC+v@pP3Dq;~8i>W9K)CFVF)<&H_GaH_emwv*L9!i(ho%Z#1}f)fT`QgWpe$^FMa z)emNQ!B><#?zn#N_@~K(g`-I4&a)p)#=H=qgY+P?DR zy}g;KKkG8~5Y1X-n+2LZLKG3-gP1)+J0g7!qxT4niPQiJ_n?6gZLoo*EtB9dqvPI% zM|*_$AaT|B$8XxbGTmyFAcL73+ozDa7YA8f4Ab`tA7bSX_F@m4Q=##&bP}|{-T}YZ^PiS-?&|&aTxm@6k3k7 z{gL-&(QR_rF-Y}CJsT(S_PivG=GtoN3e6gUHsaCSF-wWZ5ZH3j`iia`o zOpA9Yr_pqD%gI&4mhXiqqvh03-zlzEaxd*+rMRVzzPA!{&}4T^qWUyN1nz+{<#58a zWfSfTJv6Qq+67p+Nhc%oBNuq$(JgNR2NPe)hS8NmBKF2Nl|p9>?onIn>GqG$ z%Xkx^Nv~BmqCeN_!GZng6T6hh{zTQi*M22#J_d1zgs3@=9jfk|(5Gdtk3NAtV^Hw6 zhgFgi;~o|o-DMu22~s%KSkm~)!A8CG$q6^T6SuZ59Ota9&wSsKHtB^u&F6$(lH6GF zUR9bxXSr)XF#@U&2|j_LcbEX|Mr)FZd0%cu*TCbjV8j;oIxMsz(mJpl7W$*P{OK@G zBFk?e9zok+`$g_@M95bW%Py#_63PS2TO#LY*WpEWp*G}#!bW>BJ$nrS64g2UJr41v$P7rjtgP_)hkLq)~QN@!(rudAd}7%c{g_&w~$iu+|S{N*X#8 zb|MB3AK?Be;cp@(!Ob6p2qN_Y@6*D4Vo6weMu?|h;PVjIv=kumjL=0@4c0TlMPh3S zL(U3PjHTItmubCY`>-SFaGV$}kt0$bZ%wM!Jbjjyao~)C<56uG&JqTv&$|(H`ggYkHaN;jldc%0W9Y!US=XQSxKQeI;4F5wtEvG0TA}fjJ7umX z+^a62&+?8??);Bc#tZIz)VUvpra^WeL>JM&82amr7w`hi&BPo0&*65Ns|#`GgfY>Q zZp0Z@adsU_jM6EqdQ&A=truRs5rRK!t#_48D<%To-kv=t%p?}{zRnAQ*zxb37gk3| z4@|ez>x;N!wUyMEuEwGzF2y@S(+#C4=Y-}Lgwzhw?WVVwPg~m#=~mOL>hL1&O)GEm zxBic^H(=uhVb2`tT(VIaA={7oWF^M^nCy<3&xTmDj3KGZQvbEfbPfOar`dADY6(8) zF8>1>R!)gKPO;@liHjIdamURkmHlc3t~Lg?W7WBssZYSoi$a`eJDNApgY%pA*h?OO z&$jaW792zWs_3q}xhFxogr`~JQJ8&62q5ACSb0gvAl&zG^OCRuEya?bgziMzEMNIa zsMHYiASnG+n2Pxge-ruZ{7~mArZx3Inbxx$4bKaZx#7$4y}=;l6|9TS6Q*H20R!%3GSGGB#pnUunb^*mp~a z_pz6~S!9%B0;qFa2#+>@`QPm94S1?ypL6z}+$bq~@eR^6sk->aE4@i!W?2X3+d}*t zn+?a8Q}P_2qvznNO8Wf43-)qv{r=>Hh=WQV_nF3+TNPo=Pjja~ef;+_4zZNM z-%njGLg+Iz)3yzA<};yGN5lyDOGQJN2N^_YP=MI1*8gNj4a(vxJ%v<4BXQnMA@nG* z1c0Qb0fh60{&?_3L@y{))7dJA+(JY9sfg{KJeQ~Vp3Qs?2I^=fc6t*%eVgEZY>1vV z@4_9dG75*>tPd0>*TyaOsyA`_er%D;84>qaHx{0abf=_!P^qUPG0SjWPh$dY_Ob$X z_jF)E1RcYe~g5dz2uY}2ZVc3AhtfR&x?i;OA`FyMgLOS<;&i*4m!8Z;HD2PMk%NH z(r{Hni?=%b#B0Tev3phfje9-8s-$oOyQ{g z@8j^auTT3C^I3UueX3Xaa#d*a&_1G#Qv^N&8v`lM)k-)QNV^cp4*m`3K4RGd=NeEm zF>izpK{%e4wNMyDTNBG?uq%j05X&dv2%;NWOC_vZA`4i@lz3j}LL(|4DV%LfU6=)a z*4X|^j-^=M-jHhW0Dc1OX+*aZE*o+h(+7UobYI@x+`d&uv2M zs<3TKMT))*2X>Jfy~R%WSa|z)vZCiU5AbhFaU1kE7@E=of(O6HFkRPvcVdm#YB$YG z(1g&a0P$A#qZX=(j&Gh%bj&GMaF(Z#7(ye1#A`$F&~D-n>d?x+f{G?Odj95~M~~(C zArxO5ns>s$FpB%DLohvzrZZ{7Xp7dC_i-M(W}NLA4t1^5Y+-ZIo|E@w{_Pddamll> zwAl$_I4vd^R)o{}MBEHrB4|3X-Gs#vuF14Jf_4rTFHcyQAWvA-dl_qNbB!7 z=uE#X4)AV9Lt01|t5CcY43`*|^K4O5;&vF+jE*AGDX45l!%*Z~&FH2W z?qFWT39iAdDVy@5JdnG>+h)%e__W^_siRJCx2@HF9oI7bgm+z1^PzOIAWOz#ZmNZeQB~fJPp->b*kk9 z>;qTK0n=L10Yn-N=UUOpIEPYN(`jgXnnLAUG&;cHp$^Y~=CpV{!7ICbrHIrBXf%yN z6^o6gZGs)$vaF#Yo}AP2jdQ}n5`5Xh%L<{b9^^-(k+Jx}hG^OWyYiQ4)JbkNc(kE` z#0(J8hBj8U08<;a)~^)CRT^jkovBeoC&Rp1MW;ZB#W^OKq*-R2wu_E#N^L3SFc>^1}0P%SZ5{ zdS0{eF2Blvr@`}*?xWYM8yz^;KKJ0}XdI5AAF|_vE^TRW z5VtVbs2%WE%E;6UsfpdK-{B6*B^K)Hi}*h zU5%DrMIJ7j*Z$Fp<#DpwNlvb!KwCWJGlLDzdgmxE_xM;eB#X! z^1BDv##ehd;$W&hGCw&@!C0=NW9e#x;~F}aN*7$i&95tF`vZn_pn<7e_27(S_!>mX z6@MSxyZZj47s(m!^i|wIyXY+reSbW&>Jfa&o&HUaXImjwPI9Mz1$zgYW3aDA2UU$0 zgaq3ajC29rRpO>X+j7($x1Ym&l`@#-y|tQY{t@1frBbwnZta^==*qq+b@E@Ow!bNL z0)CIB$sW>C&qMB-K86l)IH4SJpE#O=e&SbP>&O$!3Uja=em~9 zC*e^VlrvQj--mBIp)s|~H#*Um`1pM}T*r4tWc@x!e;b!N>lT>)HXYL3JWidIqMFI| zN<4-)1EJhiY!@4G2i|eV;_H2KCC%H9zqWH_7dnLG4F_`p%nXm39R zM;Bbfxn8oiD;=XkStm)x8L5syQZN%3vcO*9MJyVZn#fgLWIXv<*R zcj{)Exv?vKlox>k8>~26U7cVqgN#M~{t%Ohew;ZI`X*vX6ye_;VA(!Fgj*2v|&)ipkH>o z8?ji9#iv*sbaTtBY$N8!^90J-7@0q??q*UX9uBJfM-uY_)`BJtZA^6YM8*mP*qD zq@2MSyN?Icv1?hx&?PDxuMges=4^s$v<-8&^75z+Y;`G!p3}+ zNz|Iy9>K@GQ5|i6x$4ArUu9&DJqnq09-{it7$V&Sb03;WEO@5ThxR7iKCtzq!4TA! z26%~^{4}EX`u)m~;jvas$QnvpS^!jmEtB42R_obat zu-7j7)zGdV9f-*#{aEp0sO(2)6WeOm2Mu9pe_9`f`=~$NjX|3Mv@KGO7(l~`hz>K3 zIjkFi&5&~NGab5$NK=)rn>vtS%yCdfQO;Q3OeW`=e>F&||++ zJ5Hb>v~5F2C_^%q1X(UKvg=EQ04F^X5UvTF8-i|vm|ik3ci*`r&!p_-xVPG%;}j9i z86gGf^Ntm4u(ror&rYS0`2ybFvoojKHx0E6Z7sk!l!}cU_53s$c!l);MuX=cLtS0J zVoEiY<-G{fo61YY#m^_ znFfirIJ^8p2{FTHb7m3- z4?}epc||Wb4x<6yQVr|3Np41*ilG|7jbXHbpLmy{Sg)^s)8BqsxS=%HgT+}WBv&8G zv+$6@{6MMxY8GukELY$~7Tc5Yus9p7nq8|9iB}b(YuQL7ome>>oe%qSu*L8J&}BFc zX!XSl_Dn*NT>M*}$C=e%>hv!^EGhU4U-3;@5^B4lM_c<2v$fT7?r=0fMEYJ);i?f# zg}1=3Bba{ggJ&aXjE8yCcU4O7n)g85NE#W!ZTR1MwWuMEOc)ZK3vuk8+ zpolnkG#-}N0Y=mI#Jm+wjmFaEZHn=s@1aq&EClIY+63CaNBxNHBS?LZ{?5+FTaTfU z-nNl`I2Pk&w|n>zjK*BH;a@(64#!I)cegDDGM0XblV;jj+J@k<{N}Ofq?HbcIvnm{nK7&2hA~ zuYFuzQYH6Y;nh1JG4-`fgy!S%D8W36<^Oa<$(6>y%<=RRu?>g56Hu8g9pFO@k?D#F zv?X@NfeExpgxGk;etzT`cC}<2XftB-hvhjm(ofk?a*S9YmMwR37tVpTgaKjrV0;*lW5~Q_6JAZqM`>ni8k>N zoo~AbSLEOdl6Y9|`nYo}FG2ghtKY)kryX05aWb|MrW7R{%3;09Zbt{(+9Ov-&WLX?49$r5bA3`~eO2HS@LK z$SOl5IpAkx8ss=$;p%K=w3z{@EoXiKjVEI{>D7PBi9bQwWVRiFk0!Ho#YgbTWEv4@ zf6Uf^Wk%&QT%3Haag$EN&x{yXktwugqTvZWRof ziidEPC19RT{o&bE)FE*O_)eq4o7*?ET`)kEmvo%V&eP!v;L^rT7goEz(J8KJr{tK| z!DrL(I7wOy9@Ei6Ni!5yU8d83I*ySCb||}T2MnE#?XYCS!s+P4`or?9uHG1QC z_frfszIiU=3&ITa=N<6Y3|68q44#25u{1)F-!_9C3d4>Wxbj$rD0v<;*@~VDAv5uu z&kmDjQoLQqPfJDbKKqsG#dj3SgGh-K7iZ!umAWf=(k$xl?dZVBXSvC3NeXH@LrHBJ zs+X*A;_yO?spNJ<5!+jEY!+QcxHu(q@@%BHg);gnZhCV&1+@iHzMRNVh7@aUJ<$sC zHX?nbUlznR{y(sr0*p<~&d zz+DS!sr{KB6}<48{Z8yGwt_HR7i~ccGZ|ixdhc7!6khcjwX|9DQ9L8e<8q zR37a_@uJGrXif){^JqJgt%I^W*9qgrJlZWt;%c2V6+S9mXC{tc^~|mPYY0qM_AFqNQYp)m2JgUDnS6js-MOFwd>sJ*gJr z3^k`f>xDGH-!@C-cIbESR|w4gq5nb}>A@N6$x05_2No}6=VF<#b0OQ*^<-@JyODJqu!VI|%&Ml#FzUH^_ zV(V@MKC4#Rh2C4^Vj3iHos>!(kWfsUMA`QK?*wGUQr{G_N1>^3jiXpk8RXJprePeb z-Q?~Ci;sf3f+!#HB|~KySGbXOP%Wh`{mf65?6Y{QtT4nK3poe;>Pr6t+T}DO!v1&mPZ|vynA{|MQJu^u zS1=6JEQc$&&%2L`0n4`!<|x4{wvt@*v(KO zZ@Nc1rc96ih$QA6FkuC=ZCBYh7A|w>Y7pBfvAJhQB5%hQ#sSTt($@V7>KQ{x_%u@V z9_B`I-zu!*S0ZciOUPV_u8sKu%w9=5v2f2y8j@y?Icto}S2kAvRA}2G<605B!F7~6 z?@*<{4h}r<0;N)^m0MH075k@*`73A+G}4O$*6Z)Ng}^lnn7>fMGIQNSA+D>PmRi^a zY#X*pMzT#L1@S(VIc2nO;QZ5L=?SzCiYSNMj7xI#|<3{SJMv2$#$jmwud`USxa zMA}*!RLA~UY2y8JUZ$n8q_{4={1U`xx}~rT~4~Y)?H3|3A7a50=(!irQHbLF1dQvQtEOuSCrC8 z#C*@)+g~sj?kA?f_~D>Msn>Q(K@LPD!K1pIFX%HOwS{r(=mcVkf-CFjIbypF73=AI z58L(8X>M_^L-GdK^M$b+=y-o~M%ldh6HOC;w)&XB>~dRr!rcvc>W^#LkS2q;KmTi!;35$sN@X00` z7HA&r$48^R_({(DQZ@JdZ*BoCa0#(&Z~kf%J2aUIL1pZ8!wgax%_mYFI9x_Ywze%R z%giwa zdI+P)*8|eFAaAY%%tp#UDd_56)+f0){Ah;vfV~PIDF*f+mOa67Y(br|w1&Sh?PK@7 zhc86Dz44AsVy(49%Wr6t`g?3Y?XP7L?R{o{Eppg5c<#!1K;bvYiwlJ<7*3FM2V}O% zZFQ3UstZ16a>>O-zkMq{V|AkX%Orhvql?;Pqt77)V{V;tP2W4a7q8K?=R7WIb9C~X zxb3ac8O~^XgFq=hBg9H|Xv|7=oFW3g=a$N;G0;*EzYfryZqi^Q6Z64k1uOc)C*`dF z{_Z2Yb9~?g=6IPOvkA1@or|Wg92+9_hls5-!b3Xba}>&5wz3rZZ$$@*TMG-f(hwi} zy+XW2PA|Y`1THb{uzxGwAWO^P!dCRKY^!v8IFlNXiI-f zg&%&J&mKhLPSw?34tHu;7!K~h#n83|e%`^35B9;U9W+v~ZBmHvQeY=-=3(2A;AUr& z89^Y-+(~_@^o2rY-VUpFqGgh7VBd)fB(7jTMewgP5?6)ze!(Sjj71f-Sbr74B6{T8R z7rFbtp?uLdUcF)7zPt@b_9=OsF0x=tLAn+9;jR)Eu{Kn`;y-e$&>rb7Z)udB!V@K5 z$KHY{bu`RQw{dw%54g2=Lg3miTAy%>;ngm5+RW3T@oqdubbx6$ZA#4Z6oF^&rv6^s z2TWhr{y&6$33N@@_y2u2^SgtPQAAuxL zDtb!|Ra!%Nw1%hVv7sof;hBdbp{OeQ|D1bnXurSjT7PRf`C2k8;FHeUaK)2db?LCr_efCwgnfM3!E)5|dwWt`TlA5YAhgMy(a`4d zlN~t!66U=eG$2EmhvNsc^wzZIdwY0uqZR+wQWkW?*_gQC5dQx0$5Xh~^OexDhsm`d z8eLlM%{Uitoi>idE%t^1lg4q?74rBNdp)sj8V%cGZ(h^=dO^meY7d@pWMf36e(L2( zdoskB>3-nArw($shmLNs53eH(QoVx;ChUuzgKK`7dIC>$4F1>3HkCXfgWNl@R`R#v z0M1$pupW?eauoXC-^1`EjK;Z%o*q&xR zKL9jKaQw*&&-uX~>MvaBgZsoNyw`Sn<=P?t7$|*Mu0rBg;X%&?5MSI(OL{w$mOb6lGgJUfR7#-TCIOUt?C) z^om*GC*mvt?ylwny$_+zEJS7gxLKEQ_5V`80hcA#^qVL`)mOb38Eq?1h~8tGYn$u= zjcH41>>hh;uzT^P%5$Fe$DLoeY0hNbfYZ&ldrTed{2p*qSSKFsF-7Ytdm&ml)=`_i zI6`xLLnHRuqtiXR81?XOJM&pHcQaGH*+|cx^?o1P7PNhuz2Z#{F=lcIJN{VlI;2Q$ zYfYtJ_S*Z1!hF(BVl8CvV`pjwG-#jQ5cL}*?}uoqU8ITop#*5Z(!Kq52l(%62jJVQ zy-TYOn63T!fPK5@=u7hsnmm8|L0AzSZ@R7@v?CI(FqmQw!;?waNBM{CvqPK?Sot+m z)2UMa3nJnXdo3)&>?8J8cAPfx^oE?w*B!Bk1{u|&%@6>6I?Tac98-#>qvz~FxXoe@ zSKU>fW;L?lMjf6l{zrCf8~!vaI_vOOtHfG7sSissf>}~OE6GuVCoMoy1)(BK+G-`? z{Ow1^Qxv-MBWPG}i5oL)%$m@DN|;+y6Ixbcx-*rQ*lVlK$9dW9VJcuvbXaU6_F%?+U*SsA9CqWY#fd}?FO#I$Kkw*JNLM~k|-R+^&5L;bLXDiY6Zcz z_N#ZXJ`NU^6|Q)#Pa&0<3!y9_e{n&Bf&^QmL&@p9$A-YW#B4JZrkMdr5=+zUUH1~qOtVb6$hoQu@Yyu858Yu7LQYxSGGgU$IQ>+o`O-SZA_;)6NlB%Amz zDF38AwL9cQzUYn?Po1!@_|s;>`pNIx=CuWX`Qut?`IHGi)wQP7IO0_^Kv=2%S&*VtjJspuV$0??I-PLduY0`Jt05sDNh#;^qkK|_0-FqFEJ^CLmh`2 z6ugg{J&ZEl5dBczz7<*4d8k>I(1FJOY>!XXRzV`E_~4OM+D^D;qO5<(B)liP*KUtl z=_kCXL)c}__-D8x#LjO&EP75x6;EN598>bLp);9{&_Cg$#lI^Wh9|3g^ArdPuoue&Kt1bjqF>;r?p9Uo#ui8W!$_>{aPLe3i_h z89@4JduY77f2U7kM7Ro>jW)iD&RUnr?U^<+3WHTzA&on2kE-MtaluupyWiemHC&j) zTe<5r=F%8Kznr!Y&eDUR@Ob$|`}7a;O?S?Msv`LFN{x#CB}mb7GaS`&rw0feV*+N8 z&zG@qAWM(p@S-$aL^Q`Zt zaZcI%7{#Aq-cwy^+!-cwx1mL6*vV=a+Jx^wcS_J8yI!=O0@-{!U*(kj_>4VN)n3ZW zs=A#g2p!2d3qd9MtUWZ;Xp)x|-Sghdx3^vrd=FU&?Kr{+AcPqW^0HWPS$CM&aW zI6s_)5bvyqd--MKzgoS4gJF6wi!MV>$z2=br-|*Risx`+#F0gd&e=n&8eRXnqOj*C z=}~8&qk_f5q-h=~zGJmmt4s2Em~P$Srp}NGCS#Thi$}Zjrg|{oyuDdPE!Et?lXP4` zWW?a1wda{|Rh{;ow?{`f6)q^SGOXhrvlOE$pX~?_W?K)SB#&9-s~#M*=IXTAV{cf~ zlm6CWK79pg^}&!?@xqrY^V9ZQSAVSvpL%cy0)ln_3yc#Xh~fnpTAd^5_yw3r^h(ba zl_2Z1_#(5Nwxp&Pp;T%wk>etBMXW-rF4`MMIx4e3fL_Zd-wE<*e<$XP$#=r{@tQS_ zo?S%2MiA+j?9sBjGNc0DmmnH)2`R#DT64*splZ`Wc%jzXm_^qw;W$+P5VtQv<9@M- zw}`?ov(utqsKsS_!;ac+uk?JOqmCdhx}&ExkO-%CuoYa}MuVi+u)aGcT9Eg!p_>qW zf(01`ZPA3_CdC$%D0}WHaO^i%=MVJcGJ0wpq}VI4bKoGe!xg(0;oQLHSl#ld4&svs#+9DC-2l^IJaO)FS>~DxdOKN!4KCXgup^TuaPCxD{gB|>; zy-|pB6FYll5rSPGA8b`l7Sc6)<>X5T%;8537;j+ zv<~Lay^e!Y=T*wQ4$JLMdi%P)a(G*#bw!uokyg>WyuR@J8=hX~XlZ+C!F79Fm;;u$ z56eE;X-nO)I6g2ARw`B!uDo8i=Zcz(Qf}B|YrEG^>NWx14&9{Og#&_ud7({d<}mjj4ZdlQj5Bh7$qFiHU&d+3x$H4)Y=g4C>+$&IT5R?N#(=OPe|^&)743MF zIRsu(10HrL@TwJHHA7$U)Meofr8~f5w?Wn4nDy&pYWN#e6UQes2!Dh1S+AUZW&1H) zaxJHF2qf!%!#RslNOyi?mzoO6vtJ7J3p1D1PI~>8{Y}WM-`}#oo)XgsT@Re-WE3>f znOK-o@LfUJBy&Pv@{0GdB~D&fkn6ZEuJ`*{$bIXPkeTM+y7^oSBZjhW!wG6972USC z7GoZ{4&AnU!}}g_II(ai`EM+>%eD}$eL=qibJ&=}pes@!pPuSv@DvszD5Z=^kg#f% zF;Oa%MwglFh056Msq_S&qVq9D-i4f9gYxb&7k<0z++90jMhZAa`<)HVA=k6t!TFmT zn_QqOMqLQZJK5(q94ZJ{m%m|!@iAXo8rXC3Lp{BHkWXe{jpuWrZJ>`H+M~jppZoOd zpL#NNBhs@oak6XX!eV)7uNJE<%FE`7hjAB&1sIJq#}UNgw5L>Z99XAwf7388#_DqSQ>91tz8J~(9+||q^N~FUQ*`YS z&Qstm@+b4e9Zrq^#Nnh?NP&OatHvaez(&$B=!R)xDJ|Q6yh$T=4c%uFKVWiRqAh>g zJF3RQm}qY(w~WOg9zf`0j9AaR)cCQz7s{UV7@i7_x%3?agSLKoY#y0BFu^k|@N{ba zmw95)?Jsx-<`&V^zwC}~`XGc_zQ>!P4+`kdz6ubH)^|8WX|r+0Kn|T|LJKUYKHwku z%-<}W2^fmkZH5;G>%~>VkYRscKd!(pPPrXUYy?>w5wp5r| z2Zp;fCVujq$5MQ#P^UbptX6pvPCJ^~q-0f?u(IGvdAogSx{nk}(`^!@{(JO=O==qE zskt)0*^WsW`GPCNw@pG}jPC=sNa=T*)Jzoqq7ok|nA(UE6w<5g!r1c}i=~001a<#D zFZ64X73!f~qEturoMBQ;*B_()C@O(Q(ZM>v*qK1Qb)}X~+5^T>U z_jJbhUJQVKfhT*AjJ5H=OR6sGUCVo@J)vlCsi~+xp&V~1UUZ(|*bBVT5N!vo^OkTJ zQ9>uZF&ofFy(L(#f1@NHG+MYt4j&1ze|EDx31P+>W~ztH2eFDw%ZoVy9{SNo!V$wN zdg3F&%XbTf`$`}!gHn7k?0WrmI$}J5-iMaeyT~VB+sGR++ZRoC({f*_zG%RC(O2pu zI)0=CKPl1fKp?i2Q-gfoewF&*8)&oqq}t(*nJ@Yu-J#ZYi<%5x;7vdDO8;oCzZ5S! ziojlG9mDAMeU%#eO9Lyqw;)(r(b^wVEMeV4tNo?-H0OseHuwJUiw6S+M=E%i%Kike z!u^5N01Ti2#Uen`MCTwf0wh>JVcrkG;Al(ePJomw#$2FiJNoSyL+$L67UOw?9YC!< zXsJD;67s%l~@lL%USDs@8LMR?F>7n_;05!`7QjVJ^=GE^e2qh(=dBXP26b zQwu0U!Xz4RQK}^2-gPz&lceThm*7K^gspI*v+{2L)&aXYXSqZ>ButDROm`%yg(&D$ zN0zXbo4fL5DFQoD9vKSg3_8aqMbbizL~xaYXfwi4;vU`rp%vXxq-a=gt$w7tB2)?Q zPT)p+uL{x;FHw6yi9u4nC}g?54U$s4aMR}ZP^l3Fz~Vm;lRaah>8WcT0-38<_?Fs) zNmE4~SMvH-2&Ri+QuAbe8H;NA->9B1#-@g(t-rS1Hg;EJ=K4Qs+9FH%q!>=>6fUJl zx)&8V|93UoLRu3pvB)0#!=;xa+;jgonm)%w6NTZ_uCmlebWEdFl`&Y_SFW3trHwuf z4fbA{^$+J79!3%lwHzV{O|Hp~oNh%QUi#GU4o`K;biA4rALvK{ySV>JDc{(1Z;~}h zi_}^%o2eB9YnaKNL~b{9wxo8N#12LVXi~MRlbSJE76+X7E!T@D=5|xe$YUoh(WKh4 zzJ;Al)MxB+EB&HLZA7gpMOBwlMZ=H!R+pGOT~J+WFT$a`q&l1Fzv+5)vkJdxX#&%t zrbdIo7-e)k+QfbkEuEJP8NNs*tZ5!PA0t(Z(+}}a$Jr()xeLRtwFuDmW3kV!wLWP) zO*lZYv22-~qF%9B9*$i!E>=nxokwX8zEeG0xw~|m_H#CH`8_e;7jgD@--SCkJ@?xs zENK1Z-rRihp5=4t(<{%cv@)yqgA`vwii&W%xYe0mzGGY{e}{z!ZdF6-G~PYCwB)n3 z2~#=Laj`V;yD6n*pB%8}p+&rVu>1E|Z5+<`E$0Sf2H#jbvm(2HJ#}T#!jH(qM%8!= z0hR^G2C);;i?biJ=JTr~V8PdgaRn1#eKi>buDAqbc&8?OnCrY25lnUCqAT z&1(a5pueO5l}~kIV2)QUIJ5bbLvV0Y7{}PMo7Ti(*qjMe5+^kruMfdJnkFH_l4(z@ z`8R4d)&HZfoE(@_dD?o{a$(N2h10B3W7iMZAmq;W3oi|{uP!a?vA#6$W?8O1Aeaw< z=TNTA9y}opR>w>>tHyip*3!mBc5e{yr_MVnbosB2hM7GxYO& zJ*+A98Shxa&vlLZ2_HhKF!Oj8&r0uEI3cb4+xWcvm;3oIj}fw=w4~MKyshPF&d}E(gfy>OyF_%|8+~!pukq4XqN9MO)B|2?_tVgkGdBHLDs)(# zomT3pTnAE!_yYUVOp7FETKfQ1uPxOKFuIj*2c2t!T|2PP)Rv+`j9XsI?As?T>#*JR zYo!*};L_UKQk9m*4X|c8H_=%PrwFVQbG1SRHUDb!Nlucq5U+WyD;E0*x{U`+ zGt=O>nj{4&ljaOvLs_=8iO$lp{nR^2YG8Nf@!Y~JT9hO;v>Rir(x%awB*_pRaWt;J z1oxbpw5C3oup@~c*OwwCXX0T58(`z(rs~NO>}J>4=8nryCJ=#2a*`$H;Ws&1s#Vn) ziwNC851s}23=7=tYBI;vrC{-8?8{Aulcj3x6!lKB6jdvxVrN7@|8rDliw(G6GfC6b zn{z9eMDOI&(x`z{Ep~|vbkAFHFOVileBK0{hcHB(9gJ=u#o6^^{M&h(Ry2@?iJCt} zG?XI6mA_NdhEhW1gvaajn0P$l5$!E-!7*$n-^D&?D7|9C4&6{H5S2v%-0MQ)qQHfRp$F(Cxih(fl3SDg_9byN? z-|CRXyjsw8UE0K~b&Fd|Mz|g~C1>PaL<99^8a;TgnOlpco^2!@L-}bNsWQ`rHnx%A z;ub;vZKc7Y7UUY$79%Y>{-VXH5`u+2A}x(c&3{niGzkW|-(92Aq*Fe!WA4ZY*z0XE zPLQ^?H!zrny)2ClGYS*(o9%9yzO10SPmG*ubi`=FcwDLbQ)wlSp*J9-bvl0d#YgR8Q2N(#zfio+iuWQ;H5LJ8wCE`5?b7i$qRd3SG!66HqrS# zm35a+iHO>Fpa-OQ<04({A*G0p<*vA%(l#&V<9YQBX}W0S(x_e#(~UQ1PcP{*JjPwC z-jrsGpktTbM+(Gng}S=rN(&%g{zYYdrA4A}muB{p9KMdebuGF9j=jX}hN zqW;o5KB7LA9=*+I+7&Zc%JVk|{6A7=1$X^opM0TpI?XgEn`|Scpms~@G4X-DhT)T* zmkq<3nW!iJ6V*|-*ry?AZ5`smL(eY$6DoR4oy5YG1$o*0t8Hz{83|g&y{jW5A-%$S zmo-X)lk-IyJ4(Xs?z64~qoio`d%x?>7-h5u)_^33&yn6>UX&$s zq{51BkyrV-RS6{8xe^NiFnO*t4agxR;qJtJN+l^N!c%sd4NuluquAH!ovU8)Z!*^x zFI?w86fp6)$QN~-9&%!Vy5Yq(VzB6Q7@GQ?oV zcC!&V6J8Ej!G{DlWsUi0JzSBUpGrL|IaiuBzrGqSq-?02U(&5lrT(I@gt8V$V{JZk zbb-{YgOg&k8a5n?lzjFqug9^h3%C%)(1p2X1(;Xsd(LJwgyB_t!tn6e&I zgeL0~_{d_5FyT6`@GXL3h{#4;7D-dtG=7H8>qBYgXG}NkMp|L*wye$DcVm=^P}!-F!%U7YK@c< z<E3#&uUY7~(k)TDOX(Y=sDPOJVQtw~aEad8ApNfTJ&j3tV0Z2HMd*`^r>-Fz zrRHAZfKjw^voup&-k(~02iBy2;p+aKw8{(b00XP9%f3w-Y_rvHy|-QZ*-O-8U70(j ztD< z5-Zr|ntn^2LoN~yLu*M+N6H{28Ubu|x`$D+G;T$@7V zuBzA%UInpove>URrN+vg*x!$1A5EnTN#w2*t_n)nDB-BMnO@0b+%HB4z68m;s1*79qs8bi0+$-{y7 zW_$S!_PMo#ybzzSzbs?C9Pd%wD{?PZ`z!J!7AV@@Np6nhv`%sZY|m}z{Y-fulG}Ec zU&9~jELTVB=Faj^S#%6=CG?UN-zO4-_>wEm|QD6NSwb_@x{wI$ae1rR-$RJ}bYJzY~om)PJR%j$k>i zuUBGp(7@`e_Qdz{Q2a^TA|Do= zqbYc++*G`_)YWOL9PSfUL-Rd}xbP*tp76&o#tcuG++??3o3C+uu3vS^{{g*8i=kCN z$eMU1hK{hm1+i52gM0|}Z{3Lj!a#qvSI!let#x_tljnMgR}RvGgYp^{Nu$#tIXu=m zX&LizE32^9bsSAAxO{Li{1&TC^-9|%uopRt0dY+|B(DK$IY=#z$aNyLevDt_UR>@Q zBYz>Lo&m2&dIVkp0b=428J3neTvw0C=@XuJ$*SXD{u@W#-(8iPhPr=wQG!nnFTr`*<$n!i1fi9B-H_j}sDI4Q9b3c7&*ZO5 zbmNAMw@w1c_of`(UaNN2m6v_O<==XOX&wvPnZ$&&stEZ|aWLL(68Dfh2_m-MiCt{U z3khn(ACF;Dx_|3gh@{Qaq2b(=D~noR`sk({#aP^`n{qOy^ZZRYrlmeVIyEo*iYpSO zChnQicCauZJ+G@T+~`=@Mg?w0|7WT#y*$-Tt$vg1vWo~qev@ICZc9^slbPDF{x`W% zxG*eIp8^L|R*rLozs?u3bL!k%SSflvO1vc})hYNCYtp+kaLRptR5COv+z;j=UU`+6 z_%FPN|49Pl0I*|Dy(LG58Li*JsT3QENn=cfq=Z!f-}+l}%~(eYv-@z%+4Ew8o@TRx zc%ga=vfsuq#FSFPZ8h?x$$sADe{q9g6mmy- zl5G$i%dyIHv*w^Hw`tvN@N>r|dU%_$kBzR#JF>?nrmdo9rSdrO$`Kk@27X?HPM68A ziUr*$;V$R`f1P*1UJAC*rn_>Ac%?5rx+~8Uul$E*-vc}?pAOuUlf-^g=*d0#2dwq& zzsoLG>gfA&PjUA`I(}a^#HAZ))B|}HN{@Lczas8FPa__J{C!;8AIjrx$!RM}J?B=t zeEgZ0egRIwJ>#B#?N$TQ@%=R?ONN6De41<6Bl(bD;BK|lGh__|#<3Sfr_Jf8M2k!P zHVjjKVLR)~qSD$X?*4|Rdnt9qrNdlXyp$Yoaao}&!e2>5jI>l&hXAFQkGO2GYo)4O z_f>>@$`!=VFZ%;)2)rdk3FCXDa>y3%IO_FPzPDHVBB2~ZKenxhEn8r($r7;55&B&H~s zo5`;96y=T`gV?CO(gS!i+ACGTW>&XXW{68SQ%VPATv))gCBl7sY009cUfHpxst{L* zmGAnggVF@7y~rhZRN@#DYVe9uADkxF)xQ(#tC8uN`>Jw`apku&*XXyEQKFbCQQ136F#GE}MEOBXljy(@r3?PLqJ}C{z}8yPiebv-@b*&a znj@RMc6K+<+ag@@Np{Km3tYd%gy{Du{ zqyanXi1}Jb*^GlVwl*2*-v&XYeURQ|w1WL_3(X&`KwiW?IYyZx8f#ti$0(QCUNHUx zrM{?jrga}Exb}oVWgnoOMn`)5fsz^CPe3a^8k<`1;f?dVU2?l71^#VtQnQ!(j8!^` z_`7bb(jPNZIZt^)HX3HQ^7C!0DctvB{OrTSV6Z;9&)Ty}9wm+Rpsi^-=Hzy$3`5Va-mHGaHX4?&`mVNF7 zCCs&ZqVkSS?Dv2g<|`~LXzzTbdL?1kF*w1@?m6ar8fG%yScj z!G{Gu)#~R$kGd2V7ogH(`AQ#FRO13gvpJ~q93_Yb6(}-_eXl^-UZo#yF8OpUojL9| z?9A@zk9;y(p5+xFP*kB(jkzd~D8y_Js6~ql6Z)C?y3;eEIZU2})o}$#OVs=DxMz*{3 zvENk~#R9>RO&B=i$tg-Kn~Wz@l;)MM%r6Zb_YvYB_?9{<%$Sf0cU%(>o|{EV^@`d^ z?{*Kq$Bmmav{y>qA-KvY-YMrP1YluS!jA)vd>WB7P zc?JBJ&=sdI@cDadgH>cab)TUmG!=p|kY;g4=ki=a=ki>ROqPrJZ?&}Y8PO~AOP#p4 z95_RXj&!Kym_kQh{_XWv`BC%;<%@!yVrPQEVBq)7RQ?lQPP6LwtG7>D8eroK7{s16 z3p9i2cz>3X!>~`yQog{qYus$Ghe*d^*}pXN$H^1Y2I48pZw|M<%`y%aFpvxJdLH;P zNPdn|EkfInm%Vj6bB#*Fqw5v+);P`Eqa&)t93@IM*5+k@Vhtdoy>0{y_rvqDYi(x) zGG=)3N|ZR@a|Ue3zUR%w7Nf19Gjp*;>I>$Qk_zoQjg_B}bALg(@C?(>wMHa}WFPif20AI(G4Yf{Zm_~+nHlq{s~us(g~ zWASGELXGF6N?^awzW1J^mDcy2`5@r|2)z3#FWmVl7=<5w{;AR$=&sA3DiD$Peo1W> z^8AGh88h&rjn?<$g-SANue(Tjixod_5mv_XTlB*sC6#^qe+JI$tW9yBfeAXosMBXy ziEsc}@R>4JbhM)gLs=#c_?><*z|m2k{d1*@Epqv`n1suSP@zJBnY=M3@v{B%0Zo>J zP5Vu*NTU}kng3smXqWF2#n%?K3?&`6yL{C)#f60^>A1c6fQ18G%dn6O``4p{FO(r- zMk>w!LK%k$YZS2*6J>0o=1Va#xTesHedBW9xTOl*X?M{)d`s>%r*UPOud^LXm1;TK z*Tc6r@u`Ft9&8!2(vv_@X<}(+Mw^8E_9r-^v9*aWdoz9Us+*uF&%c~#0469dL@&MPv zS$ni^X#vn>r?KCHIM>o1KqSw?-nbskmwf3mrMj$rx}iMNDvDgrGR-S0&-5jw1A@(} z-*N^1S4-(56Jgf=?|B)B=e7|L$uqs*`tnlGFUM{HuZa~(s^-{H<1id=Fv_l_{uqWB z;en8|V;P(xmUYCoG@kmdFn6|DE0pLUvsH!@UX0eLI%mzQQW0IbZa%H8G%bbW{J)>SYl(*t0#^9Mv10` zZx}6PQ-^O9gs|yE+rCi_z|+k&bqzKZSTS8^)+un!)1SD`e5*{i+2F&uQE3pmoYr5> z7oMJE>I?UL8|qv>o4(zsj6<^;xD>?gIqu4FDKMaG+o}I1h^KIWxwuK`P{~-gvZx=P zy+Nq_Otu-oyahc&`zi!hS=bNvH^IJ_UiYw_S#o^n_e zn$O*#tb(m!^$sP?R?!`CF(daz6C3=F&9=D7Yp3!7CV2c#Tk&A{i}xryMdxwqz89meAEx7bAtAE>0{cvvFJqr6`hUJp ziL7ikP;kCb>a5Y3NhkM#WxDB)ead*IKaAcFnsrX1W&0H^z&(_s!M|z0Qq8WvLmKO- zV;nu&uSD8CgZQ^FmZA>e+c}Vb1QFm$AFq$&$SBq56wHELIbprh3@@u-GbFGyhWW30s%Vnu!BlOC9h0N zMfD3St_RK8>ou5el&+O`Pwr6gWo_`W+iW2>!GA2@LOl3G(jimAYJEtlt_bNzU2q~X zOGcy|fMl(058RnB2`h^h9Aev?PVPg>U~xArsE3t?BI1$tJ&e6$C(&W0I~QoZIpx_Lxt z9Lnm1VP139tbBvz!Q+d*>EBV~AC=hg{ZSiB3yU58v^=dpYGkmVqkBJi4nwUBM%A;iF;>@MjxoUBdw1jxPRv&HS56o*MIB{) z?h&ONRXT{feQD}Z$Y3}(+;~*c;@o$Fyd9SJp4gt}be&*iQNyQq`HUkL+EE3Op>MwM z^!sNW`eSN-3>1N*-(JTss0q98-n`<-QZP-b{I?RvQ0xiKL&D zD!nH)XkF2khI6|$^%&bo#u**+4b%#voA?XPyznqDX8&osHP^>q_$MT0OF=rXBId&h z)~`uZE2eSSq_2FeUzcd|PfFFwHEISG>GRL z?;K?y=*UUeKKkcyhBaW@(ase9*DGacX3enH71_JE?5(!AACmJoS}R76VP;WEVk}j7 ziJMktr%qtLy}XR(L$!=ItRc#_TDlRful*AnnslCB|QExN8jkwS-~ny=c>M#;<;)tH+guVC{S6D8XGB`1)mcGERU3bnMP2 zloaeJGfuFb9--Y%m@@PE6H4V^tve2NWSryLo6JGd`L4-E5X#_w1RMd?@`uir8ygf(+ckS4HJ93V^!&xKxOBZ5ITEW z2@!>N=>BPJjR+BAW={M?2~|7;#2!AlC&d~ARpS>0Q3dnjTz``?1NHw9gf5*x@N;6&TI19woVw<5gVi4L+7J z1)=fSvJ;?EdYER^k;ZwjDQbvI>46+);3c68Y_UBe{Q?^{e;RiSa=>7GglqRre)`Z7Ix5)D_DuJ>7`#) zx{C1gU33+)I8NJtxvH?ZbQQ0`>ZC8HLD!Uos-D^GCisNSP16GQ77X|^?9v_AWp*IQ zhzUU!uPOC{wdssT8JcY^PcRnoUie>ELWA_FEQz7)-&mfn{&fXWa0+=sQebB*0g??8 zH0Q+femjd-7P><4%&>o1#0_gKaExjW(Ge6bdGcU=DJO^P5cC}%QTPpr>2MzFc!N!M zA^qnD<8C9$8(H*ic`Mf5P@?_J%s8L_1=#4k?IzO}KA?n~=4WT~a}>RQQ%R6Ky;pxv z0_Patums02I>qo1jtHNjj<=t;wkjOqOiXPMwfK#-V*vGKf1wwBgug9~KIOQcDqA;m zTu1M6m=+bV&C2h14y)SP!UN_12AiBf&tnjqRY3&3#RwpSI^9yDD(N5pJDFWwy`?0C z8m(UtU19;>#+QtvZMT&0W=nrAEgSmtf>b#$x*(;5^R8?0DaTxYFwQplK*~w+c&TyT zn39_04=+*M^sBl|pS;^6)jz1(sV8O{PtEl*E{w zRoSbi#Xf?#5-(tzPpk4SWcS|9>#9isrI1~X*bk<7WP3>BSEc_oqe7{B>PK>rt&AmWHwNzOgCA6}vV+{1d+N_jrwh#_u0nr9b^WxI_E)3Qq>T8>46gB&|G(|*M8&Q@ZE#W zPOo`0K8uS*+UBtx2ez9?1Mzf`$*+IGyIuYiX#Q@7EzvAazq<~Hi8e@T6P@wdwu~Zv z3~P#IlSa^*2g=wGWAT~PxPpmSR20)*by*gFe(mZ^U#p|RQsmbAHiS|*nFC@C2ZS7!SRNKcG( zPXS$omR$CyGEdY;($vRFg5BewGIQid(6+})Toun7%w8t;U{6t(zh=!b!0R4kWSu>z z&R8Ve+7qXRx+9YS55p z7#3$EDtx9yg?p--a*1hEpWPF-KVDlhZF$Ccc|E$!{<6FAf3xodYWO!!;e?v3H6b+V zZwO6BC7S;?OlR7qg#0mQc>#KL-rRG4oBZIx-%35jU6PRB@-$C(&#A9MV)dP1^%~Y( z*1b7n)lgaRf<$CCLkKoWbIy7dwfsHjfLcd%pP)5~YB&YjRJdgxrU;wLY>Ulo>TnUa z0an>m*z}_5o=s&Y`0667^SD=AjXwH zD}MYHt2d6BbP6c4Ft(9Jg~Bva16c8+D_fb2B3woTL?5ZF=f&uS^gbYpXZW!WupwDR zuMJ>D51F=sE0vD%be&}r-iAnEs+r7cWoJbXIQu<^7^5kRLG->m)^iA3!+>ZW$6FS} zGaSo5mN7JE#T(yR`G(PPGhfbx@_cxwN>USoJ>7%6hXwZOFtqH|yByc?7PUi)EM(tZ z%OOI48pj|;XH34?GNTWD3kaf%kw;Q-XQ>z8SX5aJjutw+kTDP=^7XYzL4)AlQlh9(Q(BpI%~jRlDxL%ui=Keza#Xc3Bo_KuRg>(Os#*Q7Pe)XBglPOoZ7Sd|o(ro1JS$f8z#3L>+;kV2WyfF7 z%WX#C6;&pwwyLOZ2M_qWqKXG^o{%1-22)}s6`T4ski0b(uU1mQvM&cgXy+TIxmlWt zxZjDyaEFHx4Ug;6r$bAtUffVK3%rg3W&I4)OEZstn}ef*SUsnpWLovK3S!IsM0*Pl z-rZ*Qslb!9V{0w2c8Rn|F#jDvD${;`Mkdi2K;FSB?5_tXE?7-Ya@<*26mnso8E|Pr z8qGB4^!@#==)yWIHfq^JX4@CByPGvTPVkBr1cOkZ5q%r1He@gK+(eNH`lXfmm2bEE zS5fYvEJVh0E!-@`K!|I!h}wsM5$hYt5u(P5&TpwOL|qrD^(vP%_$K;d0CDzZc5+}S z8>27E2VLL5!HWP6^cZY(TU+yCtmR3k%p42LCt3fRgViuLs-FZrpS^lvY*gpoEg#k8 z9PfSL$y#v_YxG&LYBu?60LG~94O0t3gip%l24`4B1V&<`2<{!uxYQ(s0^@^+!wHsg zRk&KQq6rb4cqWGbn#I#DhGSrjvGh1xZ82V72hps8PaQL`QM;IgG`|+7U10&xD6Z{^ z+~M+Lzx*oZl>d?=Egc}EX^!=4d0gavO9#msyPM~ooSk#jDkU)TC@*FCqR10g>cJfA zSIvwcBCYBMY|S~%5hve|Jj)B*8=iC4D&~W+J2-5>vldokt{utQZxua>o>T^RVsSAe z)P#1zfV!)!lnpHo@n6^0jXh+Q)uKfS|FswL)7X+y&(P@u_vPAs62J>g;?$ZCJdVr! zk#y%hwKA=bP=o9>?r;%E!(Gh?Fg?f5bTtBtwk9c6)M|1@{+Od&c6JQnquj9yW>n}} zcQFSG11J*{M zO|5Nr$QDvn^3@;>!3C5R9_p-&CDG8_OMT1RsE1Qeyjm-Hyp}$%YlfyGD3j1NpGioN z40vY{y%>mr?k61p#|q``P{_ABs=x)UMD`aZsIJvPTH1Y@SY7QZ>H_a%S#@;MgG>JL ztg}yez}Ds+CEztf&hQw>%1xzQc^ zl~4O}p5R0RSS#L|e_J#bk|zn28^I=1FXEHx#2bl;*g{^9#})!7?h*0WhaANma~m+j zh4JPl{NJsa!7F$cufp{DeqPpAt7ZuIwXi$lPC%zx5M!JWE0WYOT3AaB3e|>}&ys00 z;G{T#7xYUlHME)bPJ0)-w3U!Qu!pIx2i7#8uFqtPS{usMb*~z!{^Vh6+9)kw(;ljo zpjHuMYEgQEnj;$T(y(@@^!o%AL1^Ekk_1epV<=rufWR%h&LtS!CXKAE#>ETWXQ!^U zYGtP@rOuA~+Uevp8OaCFYbd6izm&=WW}CHXt#{D4zZ9Jg)n*bvEZwQCMq`{S)?tE4 zyZ=%&-K;31J7v{TlVUw>O-<7*-aW9qcsE=lplOf|6-MgiJaIh?nuw z23p%6^Ifg3>LWT|rntIn(Kewjb=7Fa@H6#1GY4e1x@;Ee)7N#?L{)!as(5A+q|uwm zCV3LTl}rfOY$984HKE^`0B2J^Cxa5%dW)rriO}$Hq6ZC+snbUjRYWVThapl!=hjn$ z0Sc+7R%2Jv8HhRpCTe(pM^?jpts2JHVNG1cu2J6x>U{KRZbS7B+FjaEZKQZMPr%!Jd}tAByb;qxH%@5(0KsAzW#}*v zusX&yVoPb=g!V`ASUF38;%DN1Gok%(3#7X_?j7Kwc%Q~9b6bA1vAToV*P@%Ko$xul ziCS&ERy-*q*8kEhzp^x|9%G5C3G+`1@+)c@RG2Zn*r%u|WC7lWnUK@XU!KEezBzuk zmRk8Vqdd>SS^vx;rbu8#3E8M&Sp>zMV= z%J)vaYZZ>EZK}p7!q`hwTHdx=Koy#)l>?12tRXclJjYaO+Dwg>oueSGnhkYMrvA;; z*g)sIOz*%p$UBlx^P8!0!P+ph8=v?cYQ2`H7*0CQQk;0B5d*WpZ{H_4-elv9@Fr?= zq<99JDWCc6s&A#R5G_byQ38fFSCiSJ6kjxFE8anS@SWty|Ch`^jFslW3o@3>Ut-Gq z^C0t^^*G+m?@hXVKJ`n9M)sUoyX0l-uWDGQU}f;oyZ_XNBk;=e9s| z@VZ`f3w64vkD_%gOase>7EEA%>0W!Q=8hEJlJx^8buB@``T$zoQbjCVosPF;MhLu$ z%-Zf~N&YDeua+w*MeP6|n>ZTV3d)^UiCIp*+{)1q1+NtZ7N^QTjcRnc6-*b7s^qUT z#ub1$GRtET&=|zsTkU#*#sX;m8+BHyTCalUW;^TA=Y#qqfI<3}Ae@^Xg9~o^=Pj+6#(4QA zN=Z}WMaNzmn8x<8^;Xw*(SkJ0nX!X*vA^&yyJdcFq2P2iLDg5x?uoM?vyIwj>X@$f z9IyWheMs_&xAdX-G{3PYTun?Z=ppo>3{$k(4t>akO}++w$ow@R1p1KqYqIN~knL*_5P66iywOm%HE^da+C#vtfJ z9QGFUA+uS_HRwaUn8q|XgXu$G&^-K25M~};X_dMW`jCmUcRlnWGvBpk(1*-ld%wl= z?P_!Tl{fh&ufct*9X29|jndnx@nEY%+kw!W6K!exT~>jMX+=9VN?NwEGwhs6H}12VUgsP=3t8S_G!Q7rm(6j8hOYC^a$@}JtwZi_&5_&XxCrDxc{?oemS z3coPbnPKLte0N~G$~(q(oJgkZ<7Tpt`*(;AW=n)sPzns*rn~J~n+Cy2#{@7R8W-m54BG)bIi3f(x60q~ zGAsX;F;<1JxIID2R<8u?_*|>!((eC(-DR z>M(3oH#(}VMeSue(i!4f+gH?}%I?OjYG$%{ZuK`S$E>`f){bx{|L^x3^k@8bVVtp;8F8#YOu!1o;W#rAgQBS!oq%AJQraPuasptv8exVe1S* z)G1SFXC|*bqBfmXoQub^rfT$UXV?hw!ZgMJk<)IK3nA8_pVj#aU6>+#{eLCG%>;>} z@Q}uJVUv7;R(3Is@B6zzCf1**Hmr1 zLwe_MWNKDwpx$D?s~h72%Y(oL%wLlezy-`-HEVzin7{Te0T>+GN zjF!~>t{@*rATtj$)x$a|^z^@rlR>@!-CXs6D&k-ZO~2q(!`mO?F#D~Wi_-k zR)Prk*%*8;$Pd|SELh4r*=mCb0e&dQQrES=r*|m$=k)47(0AD?I}^H+txgsN_!;!X z)Z}+ngTsu)Y?I*gZfZ?t`PhNGGJ;t2zX{@QSGE(aqKIy47g1Pl71xawH~XGmi~?au z_H;VajcqZXk#BdkVVL7}F5v#VwV=1|Y(L7UaoyFPqCS&;>8{qP?EU~N z6G7p)Mb@-7T4h)3q2dZW6v7_rBtH}8z$;rla26p9?u;#VJ>(4E&+ykXFTI^{5y!E`ed!N{h3KoWGgFfjG}pLH6Y%ejZA z_6`f*kx8d=)aLA7TJRfKeM|s*gBfWvs6W1Ctw90akY_#AQfa{(z;xg_Ool1cA@5$m zglQ?E7gN{b$}wS8>ZN9gxa?z6$+li>!>RUv+vBK5*O8Njln#DV?ayR6GsEmRq1C%9 z{;y#cqG{Wkj7cbT^G)>&5abL8n-k%`XwYmiwm>AZz$nigkVP4L>&+OAol<&(13P`F zus6y=1c!CKAv-&2(^d0tC5q_77!dSHP$YHi!=&M>)VB{-fSYFYQCp+lqkYtRvZwNH zYaC%;GLf}h)1J{JSMA1dbJa1y&P9`I*!?>dMi+eULk5$$b$^QNtKz=i2`cQ%^t2s} z;$sZE(9ard<0$Py3Z9c>Df_KTgd_9}&@f|j`N1>G1G|t#8?E|bRWb3ap9)vU^#}6* zi3YDkK94(TRX??Hw0;XSV)+d)SCd(3+|i_io8vjJkavHqH3YR!?5`%p=*z%6ctw|x zul+iGb}F{t_9j=e#(P44Hr}7p*Znbm+FF`90ORNBkMVOOn*85N)gaE2-Z2dUW+um1 z9IM3uHp)Z~|5j>MGO;`el7wSlUM0;KfKARh6D9!@;QXBS3}Ey*4K@K2qAj8)fMC>X z4#X1iyvfgdhYZAdFD?m;9;o8+&fjU?Ks8@d^JeE5A zBkFi%T@ZMgFyX$XHW7^xuK91NO>t!wCxnC4IJ+~4OJ>G9KDju?}_doIGbBw!v&0Zx7kX1UPz9)4@!P zPUqiRHyS(`MjVhl5Cfe$3z-XjgxAoS4h&Y~WUXbb4HkMQdIE?dG|xj!P7cG%-|wh3 zC3oZO^&Eiy0id!d`WLoxkTaF$zJrn+NiDzU5Jzj;#~^y$`c^hQg&s4AmT+S;$I)J* zIzs>vYW71EA=V$EDfI$G^298(aM17}tafddg@TZv0LVtw01E?d_xF(}(iyRPqt%+) zQ0@KK1pR6C6BeAtLs{!W$857&SCa+;BI-djb0{PQ_8RU`wyG=8v7wB7HF`2sohS-z z$T>`XKf>`NQ(2j<{`par*x_@WuaAA2Xyh(c> zl)Z8|teRR`bWfb^@J{133zl$^B^bA&d!8*H)u-e;0@=nNVz|Bh+_T5ZkDC)uj4uf97Dv_2>M&`e~~L+O=|6S#? zGhO&Tcj`NS<%Lxnsa7?Wy^$(>DECoM{H@~omL0-=b^=x!GmCZ)wsEWW86(vym7HrC zLaSr8@`nCETShX){cC0&QJy!o6v(pktLNq1pwLk`Aai<5g|H!02tUWANMT%yQ?B=z z=r-UH+=|U#*9zfQ%zsUQTk!yvnz1~``sH^uavx9idz!P4r(R3WImBhSYa=2{IILz! zj`hp$S>$n^>Nmbu&T*c+_jKeb{%i8#9P8JBL6K)TYPrDWO(~NVRPLr%yI@J>9H&#S2}py!9SmQ^YiTqWNN*Fel!z z?VoyN!S*&iIGo92qt%4wo)2tkRkt^Rpd944yi4;vOJj|BN;+&};{zkz~yAbMZ( zLow=Iq15gB#U;U~jOQ1o@~yVZ7YJL*S7- zjCDgF&kK2mLL|>1xR;nDdR+G@(6? zWd*f?1i%Y=jh2mtfT*=<4}0P(DDq66YNvZ+)s8@JmB$PKjYhH?PbRt}og4)a$*1Sx zut{J#=)a{$-ikK=kF76{kMa8cf96Rhn`Gu$Mm7;66A6)OY7447A`6PDt*W6z5LD3? zRkaMsB(@TQgQ8|3jT@B2KHe)|1=zkkeY?sJ!O&)v>F z_uO;Oq1_Wqqp(H3F_B5C;{ID+N!H6dCbG+_nE$&xJE2ZAwd3s#=-EVetd7)~I*kR; zu?Bsf1pXHqRih?hf+`X_(8Iek9QM|uq) z0PI3Ri|1w43I4UJ!X|o#lrZi^)d~JF%<zHkh?e#&-~dCLL}cHhmq@Z zFT3O5tT(rU2IZI(-hQ3dG6m+rhL4LKZBQfPD=VJ#8b zP+BWW|0N8_XVgBvKMwg?D7y>90$QlN7sLX3>PUzM^teF~3+VY|2m|!ca|i?U&_f6V zv{1$EsH`9KVEG!z0QBTOkPB#`@}D6L&_emgAPmq$`ydQJhzSGY*LsBk_-4X@ceSrn9r$Sn4$$bA=l~xzkO(ct;^!nGRtO42nF{ z;(Jr<42a?JBGg@oYKP6h$;{fliaK~TgzaoFaPnO^gMsRzmdt=g2AF2LGn1j*i2}Z2 z3C*eTSEfu5pE+MK;*<2UcMsTNU}cpybOc$dc@p<{W1td?OuVBWCC)-Cl;+f7mML0r z)#2YydHXR;GiX&pgf@!_vtkN^l7!K?t7fr~o6lk^FZ#%I{{8metk&1*4zilukt?RJ z^~SmCQ|xSZ#tK`3oCa@kt}gXOtjQ&>n2tLE4J7VQ7tA(oh~(Z{q9mq{;tc7UGWE0} zctFFdwto^ys@ers^i8^5y%`tJU*zh_}!^KmuU@xu(|{;AV4Kzv5&%*EAl{ zSLd?&;1&-H*gCOZSbqx9>g;pKFSuQH8iTfgqufb?|XLHym#I&I2&z zFeS}1jp7|=^cL-&hwZ?+k5T6TA@S6ZQclus6auX3^G%a^dx?hQ`uWhX;5ISs;7&|- zqPNRUKh9?x@cM7PtylI?&;qS+lLe-aySlbAa+lmwyZ_5KmK)Pxo8S`sQk3feIG1ef zB8=XLn-v}4rvIJa@27v|UrLV_K(=IGt09$1jF!&_N350RinQ3dEY>w=yEoRgg0>Os zgjwVv(@@42bzEplh;Zl1VE*+<|L-Y}1IOd=Xw+mO^i1=Z->1W8T&FY4grXPJ^J73K$HpK-(J4s!?$#lS%9mPj(Hyy(JTeZaw z(>4Q8sZ>qOw5oZhsk+5g-pHA2=$v=O88e@{u=*Wk)NH5e5)5Ogq2FPzF=Z@>Iy1$g zma|T+SOD+Irc;7XKHKCcr-gNUf`_lRJZiDqbPW@<<{q3`xUtl753T{ZQDonPqoMUP zbvpii>N{G+DzcwDX)>Nblfo*qzXcP^wJW*hZQ(R2rjo1ORr*4TU zYeoR?MQ%Q%zGm5fM!hWaUzX%UV5|cU6{>@enHn3ytRq)s^vweR!&c|#hP(4AiM10( z@Q#~iTZ%Vlo?-jP6i2f*I;@N>)bj)+B}%4x>4fQlFYgFZPn|JMVaCe3U1F!nNovt0 zY$3Ae10}Po(^fauf4~JVQ1#&z(`aAb4l7UBF=7s*+U{3Vfgh&DPq$4cec+3g*4;HV ztnT^1r_OPoLgy&HOZ$FC5*S7v_5NK`jt}n|L}MP91~9|CmmZj4>ei(0erOtugc@qx zQ`0J+2xTcO47*=VXE4x}fx!kHf?K`*!t}l$Z*8i!GMNA7G5l}&nw@yA1bV_>uww&1+D6bD;SRq+bs-2V!p1 zA3^3tykm|!wVFAa=i82;H6dner1fLjm@BdkA5&1&UQR!Jj7hliBlTK{*%x!=P4zdy z>@xB8cWHVpb7P+COzv9dalDeQwzQhJ`3jy^a<%HrmYnA?dV*`UppH3Ra5OIruFehe zM!K3&&pPI3c=M!oi8Et0y3SDlc=Jr=#`Ipic`>i-r}{jHo_PT8dZ?DwGtb4?jH2GJnFpY``(87z#S-qO4t?Dm zg~i=Qotk8x#UmxGkvZFl|4Gfvt#J+gNOdixjXN3m1d@+)45-0eY&{|Ce+Jx^M0U2``VkA!ziiRzXPH}9kUwwCA10h zo1E6jIFHjSP`;u=Z=2&x+{uJ#hrE?4C+M%Y%@cV?xjMe1xho?=Cp($pXl5w=)ydqD z=d#tL&gM`bzHJk=-Mi*Nyx|~i?1ow5QA4_$>tT*OQJeKJ_lM<`Q?%qgGpubNrQ7cT zL;GPhsF%3`KPg|d#TmJ%!)$qdg&U|KP^;{}K=`##{3|_W$Y@wVdp5i)#c;@&S8x2f@ zFDz|l%~4N%XtuJIalfA#ehXl?y+0%*T(#)tAajafui>4*TC5|I*@X$GF4^WO=-D&bW~f1xQ`}(l zRPEi?U~@a(x=VdA*qjM~zx@w@I9Ls30IwHfMfCMn#!)!5^8Yz+SvM zJJ0+SW*Pg@)Me;$rLVeknYpnMgY?Hrb1h8a=VV%K#xsYfRCl#`dW`#S&U>{Ddl%cP zziY_)GuF_^Z;`_03SQ*fS!*13)E`%yUoetzve?`Wv@c(cU2ldVf5#wdyurMLPwz*k zH<)|zMSUr8Bi6*A6SRAyc?v(sPRb^H=Ut~$oA90YA$8wuUdIo*vtSE8%ktFREoPY6 z#SLrZcFa5bJzBio40FK0)9vl%7(V@P)wIKW32O>Zu~jqfD1xY9mpNSRxD%bvuiUEk z{|<{j+;LN;#|Go%LQ4nk{jZ#psSCr~dV{9#GS8JgKkKRgO@Sez@68{vTht}rGpHvS z)ChX{y}49!OlXtNY!1%|BSmZdc=~a-xhc=>QG@rGr~6cMXHLylYcn3k+}(G$2@prEPIdBlU?7c2M&WRz<_*t!TgRt{*V4*{s3%6m|FL` zc@?(Z%XH$VIghvhsP?QdpXNiY#WC}3oDn8`PB?+BRqLN3YIWN@p68a)?%U=Lykijs z{BDLmh5E+t=IsW)?U(9rcg)v!kJz^HbiwP>uW(gq!C^ zt6g52KV^jH;4AZWJfNAsMrgo0TF$>9?1ujfb%8;EB_)Sdb@9TZ06wcgT~JLpgmDGy z5h8Tu9b43GA;N+XUYSoFYY4-5`z+d3L+Fp1YDNh*-gTHdM+?xQjuIN9lG#xLcHDh* zElNn|t$0IL6aTIq^eOwdZlPV;_qW7Hv+uRkAzEn1J66#=eEV{)m=5}QKaCbfqlS-b z3E%QuJ2lEGEUd<7&7vLkg~904T8Y98A07sh*1s+c3$mq#T~CDBj-1&PlO*)w+osU? zBw+!tk>3!?d7nhO^o9^+$x3J=V#CAof#~JbBMduNPYrG;bjFThq0C0YaK3E_9c!eO z%xcU^KBdGa0*E(FXd?WQHF59FVvcq z+^bqjVZdaraLgk!GiM?P3@%hBb{2RLADY}vSj77Ts8QVoUqgcDsnCmUMw8RhjI@bi z>44#!mF7p9l_}Y1;q+MhW3@vMp)((2KLy*Ber#=m%4!9;lU-r#d2*WmWj&$pdQWKP zZ>Xz2>?`Dhqn2oVmH?wg!Rm!9!57qBy*yBO3zO~wMP&-xbR(F>jyB<5@2j_&IyuUpiP$EunC5TFIg|w zCieHn!FYP(5o|g2paCNU=%KtrJ4Oi2m_G5n5dvfy?a4G!fCZ0sfEB5ZmRi1_4qLw^ zoxSB<>1wNy!UCSRN71=Yg$}$cOpWXu%XyT8QK49rcA%mc#@$Yc{TL&lPI(E*nG( zLME@&RFBOSdSfnLP+?i~S5VOJRnsB?Y&(~uj$I;54PbH$ezmZLiCK577S<;?u47^I zuz=}I<;c$FgzH+5eTDgHV9{9$=DQZlf%hvCBBPaG0yEa-FLb~0f8=porjjB7#^8Qd zZx>-oGZP<~YlV(t*2FD&%xQ`-E$lOmBB9nb|MTmG3|={*TE7)KvJw1vgYYq* zv6e1vzzAmihkQ2*sn+64I9aP$>-q6laI)4y{^xMA)VS;A+9u5AVWqQRJCMtA(~j*zK`5shQUhyzwhVsf$x^rGz$l?W|wb}aRI;SDs z085rE6ZFk52){5UUinFAhiaz%B)rYs{G9tq*eP+#Bj9;ScCLfXK@BAI=q?J7+bvUf zTolqF-)KXB|BMZ9&|vCyNx+HfOZCwu!3642k9@Cy-YIn`^@=bz)RBo}r*EM%wmGCE zJXsku%8vUmy2+SkEymN9`4ZM1Ytz z4s3ZUr#v=LHg@;3@sIqxFsRTYT<0AP)v;HFn;`6OsP^kZqG3|SYqk{?0m=TsxJvWy zVOw7jr-!qf+BP5@&*HOR*<2NM^>9Tb^4CrNoW;kFwyi?A0)y(GQDG}WST!SD(H?Mu zlEYY@e8IM+B3dt-vBkEoB3KWX_e7rH183I`|Whagnw7xxEDZ#aG~ zUB9o-Pr?o8=6+rc(Yv>J z8!Gn3muI13Z@A(^G|Zc)q7+D2^hOp(0=_q#aT@R~dR_Sv;D@Tz?Uqn8viv&~4%I8G zFr%1*=RL`!LJxg z7jL7{#Wm>f+X6G*{MzqASY&xQz{Kca%0mDqMm^86=fhCZ??QS=_BG%htAp^T%_!0% zBOjQ?dYdl+(^wtrj11Hkt53k}9AN5=FSnwKI6Y5xeSnMeVqG28#p$i_rA(R>7 z)$$j@9s^%7p7Q>};ltjOZvG{F;!hf-oJ4(JY6rx^m%hl?wXz(j=DfyRa z)+>Qo)!zR~c*xryY~LZ~8hGbRYRQW!*t93{;+O0I{HL#2yXm0l$!WE50<0W4r+=~^ zaPzxqb|MDf{q*m26U$LKa&s3@b}dIyFm*MGxy)1e1*2G(cb*{LPuv8MTm8g(rW>Bh zk@r7Iu8wWPSUN(z?I(7}fxn29AhC0GZn@97A%-hXCeQ8{N}N7!D}%)Lyz6Va8zkb+ za1jMp6L+xNoRVr{=Q#INR^%FECJb%7MI8Bs#&ujodOJ=B;mD(A!Qxz?a5PwilGB&! z?O>6~K5MH1CUFCJoX+Y_Gh)D0oE5~{yrYty3F0_($7iBg+Yo8Ds-H7{E@N{8RBHS*GqQT)J zq_pbNaPb2J@9Il0BE%@EPFkg1Y?WL+IK_~@7DAgFUGdajJjM^~LQf*aF}$mghSv~V z@GBKsS3^{IuBCdXhPV!h*QSLvMZAL^MptTzuyF@Hm1xv&R6mOrVFbtZD&#oMPg+M> zAF8`*iOV2WDW%>vaSiX-MZU4(EIzF(?TnS0(ves(h+q9Ky@-`MQcN9q$>Ut~YaQ_j z@AyUC6esRv{WGMlxSi*AlC_?g&MOmWa6PdjZ{0{c>WMv>#Yj_vxD)+JhZ4j=1|z** zUo1qwAFMAP;Z=*Dm4&cLfhJfie48}6no$~ z=WrObb&Gq_`{T+8%41ru+XD*2oQA9U3DdHU`FpBj6@U0kzIytfTn;~~n}jyl-&AiW zi9B#u|9C@W-p3A8mqy|xrt8+Au^3*{v18p=S(4GRJR@t-Bj4mY7RG?2>s7fatFibd zE8=P_#?(^&4m`}*OdM%XvGG@4)_yKKJ9#sE=xSpzKHT%%a9jlx#_*-3S7miPBWn{8 zJo>kk(nLJK!?2-WQxRf^>*}DU;ug%2Nor&>aRB61U#O1eEMWgyz1c#%f&uGGWv#@y zyxpkwZY>VOa{ZbPDdLJrb*@(```aa_Yb*1$X=x#8m5QOJ{ypg3$@+Ixa(9;g>o}+O zT^sI%e;uc%^$XJT7VX#5+C=nEeV{PIZ(DT7Wj$HR^kEFLvEK-#pT99%_AeJ|?)xeu z>t!+BY9r3ZRRzTV;#i!z)Q4%}3?9ddN$oJ)%AeG+y*M4Cf4)5?JM58n5Z}SOLp8U9 zXf+tFtE=A@4Vc1{)HNMN2QGHP)P!#0kL*D4s=N3-_~5zf?w;Zn9QU9;^FEdVo; zVPnP>sICu0IJD!&sefgPF*wyWQ?32P$Uu~PbEx>0XkEI(8H7VB$CHbdzGv*&|dU!~kwZhyCy7!UT8;0f8j>E)x z5Z}<%;bL=M=|xc^uoyu3TZ}-P?A@t1`?q#g$BhunjJ$m^rHmF^n%ol_ra^gF2R4Cb zju!DA^b2y27NddiFQdh+uPaw;9!?&8v~@)K3eZ6#^!_xoe`&wpmwJN_m!G6cB@MLH_pM{M3G|SS-6r6V731(9r?mdICf*Ux?+PFY2)` z#8^WO``3lla1IMBX)oSlAdYAfCe}JPRr^wmkX*!~uQ+iY(;DqsKuy0C@m9Kk7Jey0 zZCpM0rP!Vku8;|0{ZRWDIiRGyUL*wyjSLc${yI+(8_J$f^mq+TEd`Rb31So8I#xY0 zK^zD9{Hd>8Q?*+5PC5+}Sn=QhzV;XfV5Mwa2Mihu|@z&Prh5~Uo8c`Q+Sh1Tc@zidv zI4|54g?SLkIt=G{XCSjUg>k@yRU9sK$(62~(qN9`7i7cgM8zZM}7=|C;M76g7$Mjm;Xv7Vs%d?pQV1#NK_vezaciEA``D;%5en zeWu|?%{q)MAeqhtBV}M}$>`*J3 zkJyNJ#M84qjHekyt@et`cxxtI*(D;0} zwo}0r(Lz`Dfm5>jQluL*5U+vmxX}XZV+!4mdConcZTmrn0j$FTv7yO&V@_Ja0Uen2 zS9SUUF`SQfzk-^dzazj_;}MtHc7?OI^S*!PL2qNWk-G#`A9sDxr6OJdL$F`USTXwo zdQt`+$xR!}8IwtLqFhYut{hpH-^iI^kb{1bPdlsdwmVrEZ&Pkn#V9j;${R-}l)-3R z05_jUT*e=?!#wUJe)2;qDAdv%iRFcq zt??1DU5IC3q4Dr|?`)%KN5p~b#^Bx&Fri@f8XgrJ1bccyma7$lq1|Ce#RA^mivB(d z_R#L6^kZVrH#~|VV|jW_>`oxlT26Pvobm{6&(|xNLvk&~-XMaRO47m}I(`gG7<$Qx z$Hi+2+z`DBPq6OOGsm(px^F7Ot}2#mOwCS+EkfLNod5KMnv7 zcbz?}a0nUhobSclAyDv1Ol+9?Xna!K5yHJX@n2l&=}FelPbu{j<0l`J-w)!Cyu(A6 zeh|ak+kZD?>__8@{wbhbW)2&4OgYb`E^RU{9IdB6L)Nf&+%xX)^{z85s%>F~KOc3l zs?l$q7ALdIsng;g?48SoGh({g74*_Fa37#0u~EVH_@j6W>*kLiF~zv&YVcVw`@CZT zbvY-F46)Cu&6ZYYr>&Woo^j?dnJ=V$Lc$fofZz(#`fUJzFs;E0$CF5*0Z z8QkJ$aTtGN6|MPMgfw;F2;6;Z8&YXWb?TVv7e^*G0-&7j98My(N}l zSV?X6yLi`!SKth%Qv4L1`gJ9CdJlb9DLV1h`kuI&w+GP8d*WDpet2K}o>%IsQ4hou zzJ@yL?@z?X=*E6@?U|V57r(49ujru~{#-xjHhCdJL9o5r|AlzkV5xIfG)|#PkNLj( zm>oiKa(P>A_ZJRlaMrBmz7($@(47Xn5^@`?sR1vw z1Rfvp((4RY{3R+ibBcqxX*0e$8lg%2TLu!x8mUA@+=@s)fv)Jl>oL|E^n{mUczZZS z`bgL$aGl^IB>~WvK2m*|6GRj^jRJ3aL7*Faq}sd^OqYBlFw#Nv!bh6RyLg)AE5Uvc zM@7EUI36~oV~kQJ?|499iDvPRTO{~N;Xu2dpM-bnH`R1M$q$>;S?cW1>OVuD`b*cK z_ewnjq*LMCPQ&r6;2@qI=Tg}`*YJ1kP+J8`tx#-*Ix$F^%JZfB)PN9a3-)gM-XtyJ z?H=lBmhc4kQt@1~gwec0^8~4d%)M3UoS_Xl#1r=(pf5b?RYCfY=UvOy6j_SF0eChI zvPd}1ucDn6=>fL!|5TS6$=sd)Rg&&kmqsx4@&2Jwcb>~tcZNz(=c%I}50k31|Lft> z4MXVl@lzauhbJFqK85Gk4}19FCA27)(3MDOC|0}Lp@sx=aJV;&l7;~NgHh5}o(ogQ z)&wkm^)Z?iEtLUQk6KbqL!{%MKJajXaA;H2BMPU^v`PuS{Eg#GoS^V&$5luY4xo#2 zXm6YZXLYOSL7a3AbmwfmRKY6TQ%|bLbL;81dJPs zK)>;am+xhT!!w!IUDh6yQeWC2*k?rCIN`)OON(`MUyvvz;kB>YFi{ExaJBtwk`vty zPg@Nn*oDeeZ#IzPfK7YVlq8+z`Eoa1YbZ59PO*{1v|88G-Nq75VC%@#L}DbYZ4=Bd z*D4y+L`sJla&exYzn@ihb?Ek5aDKgCf7WWhzR{J{k z9cZXq^}UvYT1aD1-{clj7#3y$Eq+t7LXxHKep6BmeD)IhyQQ=Z%-`0xq$co;x0PQ7*Q2$B_gr0RVrxvOa({JKYpJ`hF+aI5FHV(HC4Z2)ofMTOLHT8*Iyj9@0gpN% zUHX!b@uXE2eAOOk~Dq_<-||B z4F5Bm3ymf3Q-=;1NvOxYEe-MG2cDy`?@E6e0%>$tEcHNI-BrSg7XHGzqU+=6X;(rf&U1GKE0w4QgCQpfICo_QlwPj{)A!4RiL^h7#%Rkd9&DI9vGxzs;XO0K_& zb)LiV#n}k#sj{(oAi1>eoYe2JekN^?b2*DqCQ?bJWM}+LTptP2s$uk7A890;$bF@w zyz4!R`%v1=^b3CdP#Vcw)6|}JOh5J@y+wcNSIHg52=5AKJ3)uXg;7$LVeImu-TfO^^c$l*f0Q(t zojt-nmm0AG9Y2?P@}+0hRi9&dFaq&~1ZB$4>E0KThqo`K)8nKKY+8RQ)xfmwNXy1c zoz>Zl78iF zi|9cvRus;OPN@!We?+~V(k#LAd!OgHTHF^_$mm~A7Cm!Hmq4HCT%MGG;W6Y(`RrgY zJzrYYFz3StQ`b3DoO{GF=T&FLl zVp=PGY0XrrAyD{vs??s(dY|H^Nr^%3clF#{FUp)I)opI=k&xT`7T5-D2pydga%HttA!BX2n7$P9JTD?qOrqz%dro>t`ZVTTRx9ULjw;~i74g;s)O0qsMhD!V z&6Z}eQ)K4?sc93}i8grZrH%1lxZ6>z;}fP~rfV>*$E)g7j%5V~@>TKJ> z81@WcqsI$i0@a;^NvRy5c5|erZ*u#pKzr`s?Z4s}mN5OF-rZwJ>kM(0R`G71*g!6; zT998=Dk_*GwPsFaUd)j`jDDSm?E_+``BDVm_5j7rm*87w z0_Dxewxjf+o%5ww-kwKS=1Wa^`+I8W0trIKm3`?`l2UoDx4M(0V_03}TqJ$ZySk|< zizT}u+TJ@SJ~d)#g-?b>vW56^(=xI`pF-fnuv8++{WbQkw(rrouNgstM$-~385<__ z5>Pbm4?4C)iV4iQt>=dyfF+Wq3b<5yop-_e$5Ql-?HTP|Dp`U0FH5Djm?56%WdN4* z1LZE0rZDyHfNvzb$#Z~t<_gPUYa{Cljrm3b5Bw9AeZ#g$di;%4KM-O94KJ`xF6lk? zkYbo2Sj`x{GJ6A|ApkqqgR!R?e#|&Dt3On4&|Ins}QW&)^l&aC4RZ?hm zw-ZWo+#`wU)mK$|kiu3=U!blztEC@+ZB~&4$@@5R6-lE6V-svjNf5GW^G3;_*kbT% z?i{+;!Wd5WVySMpr*)-g(k?xN>my7fEh{&aT*bh_I+zZiNQk|~O3oKbH>`i5gIFvr zm6T4p)Z5rE>@(K-w!_J_2J;uqIJQP=#jl39gSF_$fek2etrQt)Z0=o(^O*!MHyDf4 z#8_r$GqSIhLL-gM{+;e?{wF<|3bgd(f2Wto|D-o1H`2q6P5+gi7ub-c19}s>yB6Fb zw9(c{o6$c9*GZ*e*SYzgml0W>WS^W23wPs;-Y|Hy|Bv(?zp^3qUXNLLUERJOTNBE3 z+bC6<-D!;TW=Cq4BqG+wn(n(&qO7}KP z&3Jpfny^Lk1>X^-CT#_sLx!wv(sJJQocy*+)03>lIdL7iIcXPC8X1d~LkA#H)4JTX z+ULDthB;|1=G$tl=c;0rRpj0dULOOpUHYYtwJ?is;xi|$D%m>Mr{^$3Bj;M>u5&m< zUmDu#;~mmFhDcW{Jh|t#cy*;TWfD6}w`Mad7V5K2Qj}A$oC%Z7sA>17MJ=j>E*|h$9DJk63 zqKfFYYxCcF@rLNp_fmj?x4odhcViz^9@F?eYyv){WqUv(uxLy6NOJ{8MZyftIiFSu zXy%~3*p98&Y1Up46z(dy@y~i>ukHkYFf<=f3-T=@NHUx1%wA9!%M)9SPQ9VDJYX|wmPd+S^&1BCB>Bkzw#!usvI@v zAEsmF(mXx`FHa6hEkY}HLi29nDXn{>fVr&D_D+-pXkC7 zsRgpgM?tglV<`2g)Znc_P*FG=s>VSZBCqU>E#YjUdJYOZd1cRSaaHl@Zd+Z1;qDsl zm!bZFu$Cu|HUd;!*<^qS*Q3(Ap;)+jlVvSCk7C|%(OL36CZ(H-3`mbuZ?Y-|-KJj0 zq^|tUXj*>^G-gm8I(1BH5qYx*@LSIdB0J~aRwuee#5`X?=744Y^;v*pi~M!AvKtkJ`Ckz^`@q)wnT(AxMiDd4XVQF zB`6oC7O}e1eQYsR;ka37qc=XUI`E6r%NE@SepT@mfbWe@uK;{+eB2_yk5j4igjBE9 z%`Z^6F6#g}?`C^j-O{?rKmxu{kJ}Ou#yH^J=6AM4gjpUxziYMzRpIp8lz5Ug zBx4Ma-UQ_ml7TQ_96~v7{7o~;B_!|A;xE}^N)v5XW1>7Jm4hlu2^f*v=+O3AoL>jM ze!q^k*wVz>Q?r76+a+V9p@4A07FU{>T*kshbpSb0$IcIaN~IjW%t(DtNi8DER-vLK zFXHD=5nQn{#Nuf4DXfaJKj`i$sej0zr^wb=hvr9pe!#gUj?Vrdb&I@Ni9#)sZ?by) zE&+=c$>+2>?UZsF)1fHNW-V>$#UloJtHL{J!D*>;hl)H~%#BcJ#H1t_hoq=aQMrHi zNoY`USRSpQ9g~ub<-@dSun0WR+kp}i;$snCUX?$;4Ds;reg>OL{MWVwq}Tm-dc{(t z7gJxP^A#;=%o!=6b8$<=bwJ$;>P}6DK9P$0q3ibtG|yf~-AqX-Rl^DOpziyKpNqN` z)UD^&aPq$kT_U>FG%w0iZ1En2tRf0>jhibu9sSEC>>FPD9HKJ=@mpbuW2O4=DyDzQ; zuS;#%O~$$F(s+D!`&G&hw$|!{<5qp9@eN<6zhZN6@6tU7%!LWo2XDhtla|WC()Ce2=DzRi@AVRFfc|uFalgM9x2iw49QuG~wP}-4l2Q(IE!g+Uq zrd#Qsc{)?vnv+lxlG5kq;-!1^avnN)M~WBREm`spoApRXC-VCPXu6tHg7!a>I{yJ? zb>&D}_6N|0F@!&GJml)Dmb;R}r@1Rhz2Rez$-}A1f_Wim^Wt@8kDM0_ z@=oZ0tgY$V1F372)AQrgiNXL6G#YM-_VgK zkh4JDJn^XnYhd(+cYHV)p?w6#e)LmGL^b(OrJB5BB^5oDta0wyP(BdabarCVai4p! zJA_9eLP9Qh6s?Q7T)OjA>KJg{RIt+L~F~gyZF4 zzcRi3uC1gzm!hI=yI>(tU_IgJ%`N1+MUXtWBPJk>9^-n zGr_SMwy~ZLhAf|z0VHQGn+5bTkMdaG7sb(D{M%@E8zu8OihQu`a_9foT5 zsH$>M|M!=1|6(hrrUCLrtV%IZ4&&{AQbM3SM({ig_;K9~;HA~eJ)}*6a%}j(SC!W0 z1(gaj#hm9#2^_g{a%_HBwK6Pcem*g z1OJB19B?w|5fltR(sSal6eRZxwl2h0qjjHyD5;tZH{$dEiJ5on8KVcus2UQNyEMF- z{DgPBM}vZ8xQYg$3YHsNT&;H~aj6SZ`(gaZqphDVbSYSdPEt$yD_Cy8j0z`)$isM7 zLs}dnEBuWd^-_p@+h>we&lbDNloet$C5NF3|B8#@`}I)%)n5CP&$GDvb-fPjasG06 zsUFJq>*WoVzYIT|T*2~{FAqQN&3C)k56RhDoGbjSx5SlR-cY_@_)mIVamG)*eoBtl zGQR9}Tn`l|h5wLT&iskSd%`d487qG6by-KIe9Txcf*Dtu9oH+aSW7b{`66Hb8V#1^ z{#f%zWjWr|wptu`0=jn}bBGJtVUh8umcueMj#Z$q_gr6rX4O*mG>)0_yo2Byuo5i)el@WwMzjxxJfP3ZBU zJ?wpGeUF=`NO>}l_&rj7CsbK*1P_65A$g0k@)%&W#$|pJTB_^NMxn^hk-5*XN zIq>l-@zx@jo)hjpw$zld84qii<}Eu+{jH`v#lUA2(Xd)_|KN-#c!Pj(1B-i-F4mG0 z!<4ive`DOb+(M%gVNC0AN-u~{xO6jt;-){N{sujGI^p7=NVmy#Y%1alp5EON3n;|>*~lI znLmtYbwD?av@uR@4N6%VC(j1xN%3+9&z+z{@v;Z)Ut3q6z;>g$^<;J;e!rf)h*$nY zkLqD%!slU30!S9*cL^9-ZYf}ztT>h3Jf%At__c~DA1-gvHq z6DJ*N)Ie^Xp=9C7qz2X1A6Hpgi0hC3*FyGwu!T|3@+_vJ{%v=r;X=&qvZFm+mi&OR z)#B0k1~OQccc}mCazozwE-iQ+OV8&W+WET7nAV?Pm%+5Qqv#~L17F;ch9=4L_?#9C z-jI9YTI2mUg z+4^;w=AMkFPkLjy-^kh&eTgH%r|iG&6)I^eC)Tt73^RgJIzShE-IjR6o}aMc>+-*Y zY}2}~MkLENa71O)s+ruMx4UUYGkKKY*vVeUV&ZFEYF8<)xy;1%?>3il`@5A!HJ2Ci z|gCrb`Nj(D@MwZP>PwOi69zaGR$IjDTwy6?Tf!LaxS!)WiD%6#WbL z?rr26yz&}NZ6g=)z$ht2_V6x?Dz%j%oOQjVvQ)Xd#63#LZGSut^HfI;dM$}*a#!ts zJWbBzSKgs3Y1qJ&8}Qj64?y!br^^v>%4MITV5!h~EClzPTC1#=3jJF8b}L;s>@gLvAPy_@>fRYgbNOZZwm-%6S96p;;O7 zCZ5CTuAR2RKWQg#6zy9Rru74&r@hc2&}uJ_=6yENn)Y&>>{yd9tx4%=XXm{64sSQB zSKG^H_db-B$;+dy*&6J(RN#o1_NS7fo)rUhN)mLa|k zDm@!>ElNzjoaalwbd@JzHGSAkuEwhVsJjep#FuoWyKIei|B0pSV&iRnVvAcBS?_q~ zydn%IgX(xr0X<~sy*;MRJ3H5P$C}cjF!BNO?~_ zflqTU8P2s2kfWCz!?$(Qs$OzmHvGQt%Zrix&HM6)IK%DejVAMs>FTo&u?ND zfkw>+ulce4VWuNZF0FCH$kRu@%X7Fm?<-q)*9Yp&zVb+vO{HFT*6I|RXh&Nd3dn>8 z!qdVQw<@aB@t%1Xy+D*!wA&7Jz!iDy@|a+*35c7P7gtjK`^g1x+N3_}CkOMfsh#{z zRJ!-whgDSTSLH#VYe6en*pRUzZ%wx;8FF4KBy0oZiNOjtxR;k9e?=Px$Zpwv7Z#^W zJEPiuMjd-xvJPZ>C@gRclwa`HtLlP5a*Cmi=U7!)<=EiN%8^MU3XP6HEW|EDUp)uo zmpssvas-b}alY#WY&QSb40c$dMw}>Ou-u4ul~U)yXqWvUeL9#;lKrqeEkpTa7ws5~ zdY~{mSWXihJ2I7s8=tJvadK^^&ONQSww?d8USsmZN=nPNimF$Uj1(K{bt&8)HO?Qoodc z1*NMuUVe(HpQXl3l#dyCM>V>aBX<-$#zG?(3KBJv%@pkM9dl*qiM^mFxpGtNv9CGh z&q7_lV|NQS1`o}<$%etfaB|@lxD#aAaf7<#$%}dJvU(>^{t;E|r2|vtL?Bx^RX)iy z`Q6jx5*{Lsyy@7@9m{Cjbol`Dr9E~Ax(e=>w#<+x^7edcI8)B5sR8F4*bMC2BKk66 zMpf88PTevSGoQD=Ptt6;C6?ejv*p(4zS>kU7d)#X)38DrnqZPTwGg`^&%ILD&%;*2 zD|o6jA2gG@Mvet?c&OdeCfyd>*f`UK>m4JFWG%A(LK_yyM|k^b8b>nIU0qI$D>+2g zh4OGV5egQ9fpF|qcP^Bf{skRhB-aa9uuZZn$Vz48yIt8D(}Are(_)lDvnMVF&Q|E+ zEM~jcLe=`U{D`k^9df;|@kI>uUm8JKi0ljl+`283ze-i?Sq1B@gFtrsqZhP@ySR_wTS)SfHku||x_ z$zr)ZZ#|?&t^w)6`yX}5I(a(w|IexJx9mJLn5-MXb~>_X)qkKKV(KfN;$d2f2LlGEu zR=}Q;*l~Qvq%Mf_**m`~mTRLHY?3QX5Y^<4tUdz5Dc+TO2>OJK;Di@(bMO$=glPie$Zoq3N>kymQyTVrctW`4iqzL3Pi8od%}o*iLbUcAS&f z$SnV>?;mgZcm7Y#%O3^?BH@>9vR@$mbY5;>n|jiE0 z>GcLu+Y9o2j9`ac7v;&VJoDIqdIvL!4V}C2UxTT|xaR(^!ED3^ z(>8~u|18HyuGwJIYvVFC)+-pBMSFh+p{qkTewP10O=m92L(sanF3WH54j8t$%;X}F zxn7pn)N~A7+_A5-k~w-(iR*wprGo*6shmk} zJp-ORP5cE!AJf0hHTf0@v%i}7D~^Y}^$N6Wu}thgQ_)Sf?OvuMH|4}ApPvIDLDbg6 z#eWVFGTW!Kej=$tPGK(@dRA!M(xeKxrer;pnd+Reh&k@min&hGh6*_n%{g459TO`n zY39Kie+HhBv&8`pGYsNN4JrWO6?#i8bdvD?^ z+nG0UW9v362VRDv_)l~}SokS9jCt@45(1I{c{An-WlfQXnl)*Ej6 z&ja}&?=az!jm(sfRz8$#SGR{G7-o(;uv~K-5>o=vqz2pZ7tMQwUH>2*eIz%BTCM8$7zBsOb$UIKTf`_= z88^>f4p#a20sXap`LGH%Luh?w#k=1Za+IVjf&||fWPr#>i&qv>)St4Qcg=-IRC%VvIc-I21BS9qPEVgo zQGdz3EcS^*QEmWd+pso3PjO79sej3xC1tE_owo$XM#u3b{q~m}WlcQ;hBRr!)hNZu z*wIbT=SJcE0+`WvG-mV+#l8e515WRy>}=rf1JWK~jOq=P@nT#9-b1T=Y8*jIP+C?fmFnV*@TVIbf{sww~uO3F!(Q3Zi z(k#)_V)QdG5%)gamuxhr6zPoWnaU*daz>qXE8t-d>tO-3ZAP&MOJan*NzGDD2|V`4 zkGdLVs-KPo)7G|}=k0Nn!dn;{GlaL~;O`IKGMabD>Hr^0ih)nMNNap8QQ>8&ct2LF zlJksZdOEsjr}AEx%XA5;20wc4Yk8X=Sw`tbOJ6MC)ke!NjP-H)TYl!VN~nK;K5sp_gDg{d*G1}3&4OFW z0n|9y5*NI~$pq|dkikfP8f=N>m+zv5!IsSW_9dW--);Gq`bbQPcLH@}!g-r@)o%S8 zOC`i|6*U@6mYOZ&b79TIk{r*jb@L6dauS)G%)%Kn7oJQG(?V}OJCmH>OhH`C&NHkA zJ$FVF!FyD@V5J@7tJxU4hSCO;WjODGi*K`KP*-bzJSwy#`v<`6o-Ou~MbE|Ay?FJj z`ZuJp3l06tV=v70^byr+EQ?3(K)jPcHkS+GqWWoiR+k?@oVCoqipKT zO*N!pTmOtrorC=umh2ixA82xD*tyjX0-F<7*!~bLUC{$qMN4(w;X}_vOJ7EldPx@O zxhK)?UezOMgJg-~9WCe>`?nhDwuGiZslT^u=?QwXS+?Y8nt>LKmjfo6EtV;7xc~eF zWYX7ASEPIQ*zWZLtHM~qo`ve)&);C*K6RlnucfPUb<4NVuDhTf2(>iegRR@yl@c3Z zWgGn!ZaKxKNIOP5695 z*mHfzG(rHQPSKVufW9AX*@}ZS71gpZd2VSfOCQVC$=U@_?9tYKWwNiYQfZw$MQv)e zWP+(_qt2^sIfsq#4h^$e5_shnEwou$^7b3*Ih$oKXysvAP{-03q~vHF%OBV%zoA`q zEzKAk^yvTf_3rUC9o_%<)i!JE_5p3NWKNAi^b=f^Q&ehqzIV6u-95Az- zo7``XKC_=tuv*yfF;~(0aJ2c`R=xH{R(u=T3tY-fV+ihkYKKSk)f-kca=V@xQ9!?< zVu%L!D7sxVZ^A>7z2?aL(S?t`7cHN(`h~vt5+yA?icD{hUsUun2Zn$6uA*n4Z!~HYQVE+1l1=Q0>Y*(y7i?r{Go6{?Ihjqnm+B%IIfKwJB zuvwT4RXKXDz3se@iZO#VKu#xc`Sn(*H{X#Yq~@mz;)u zg40-aoV?f#H|=ZH%lnziA@yxU{x40V-a`ji6GvtqyIWo-x^S2~Ldaf4zUzitrrEA( zU-1;9k}4u~PXp_2MVT&=(H##=M0+Yc8lZP$IwEtr;~pKYs}24~xyG$fSJXcFzv^}V zgrf?!fl~>-7sCy=7m4>?>>X$QAv=-~=+%NB%?uYb zY^PQ;3)YCT&QD;2)M5Hh)sp&;q@V}xsDO9d?16j7+b93G7UuWl%N`hRH2DHTatq4l zccNpTr#0fTq0d7So5#JyGjl_dnJ2+bB!-*~asS!K|HE6(OIlwFYJZ6O9tEE`t1tS3 zBc*>3KTEKyBxJxv0+dXpD5M>hi2a#haDfvsD!}rj|f1hhhs1c04^mnKMwC$k=u(pvv4o=OtcNJxp-PK6;4k37r(9Or8 zGU#J(aanHWPMU+7tCi>H=ki>}CKA&VCnww6q;T4{KnW~Oyn6;oPEWY#7X|3p;%V?L z_KKdka|3&IC=Cwi_rxs}b0u77j^TyOYBE~KFQpmF7{lT)SPLY1>y40DRt34H*he7YT-!yk%Lkk;??j%bcY-Qx@0eaKv|+*mT`={1P!| z3&H}?UzLbcEI0_nnl2F?c&D&_TEod9h&Ty7jgdBACi8mZCVX7!rjUruY?QP1s*vPQ zA;}bI9A0p`kVGKnbcr}G3rPfGO_qp0P0+u>Y3S1=;MglS>N(j9u7zso^S6*Q~ zfC*ziF9=^1!aXHRYm)_CfjCb{1U@2UqqmeIembruNXU7XLzSYCHC`e*T>r&Xd5tqd zk4eOOicQ;09IKFa$in+0A$&h;zp+AyYX?5!DfSqeLdRDrqZAGsqzS~E3p1=UjwVOR zwt6IZwljq0`+6(9e>l@6T?i)FYl5)nFHTk)E5$M46*3jnClJ$+i1R2%N(JIPDiQq= zK>Tzz6_Eajgy8)culIG%$a+{J@XZfrBoH)8BF0F;NFegL@_K-N3B@#{jSzHi@MmX$ zUluoq3Bm%>`%AJfgulOQZIp?}HZ@GT_ogts|iqqRg(wjeAJyOl&Bo;@p5DiE!u zMC`VLk3h^Uh9uEh5ANw>qx??$Eu0m~B)|A@kLFe;MFMh}Vol>TW6KZ!O?u_yZhkZU z+aNFKG#6axO2b=H6T~mcXPBrN0)h4zTc1F*W)d-*a0FHwmeXt^5vQ?0E^@?5fM+&_ zFR_mTS$3-t&*TwngApf-qhyZAmBwx;5d#8{QXQ0vGFps8Y|N2Lftb+}(GvI^ID{=7 z^+P?@ijrDKaY2un1Mb98S5Sc3#7sb=UZCXjEnTQRoLN>QQ}vKA5u~agPV*blq9Sz* zlpZB2AQl_?sk6{TJy8L<4Aqkec-~pnDg|QSk%-|I^yMn#mWUk&2-T}kK<3{P(!|cO zR3P&C?gh&EM-Y}P%3rdyeupDIfuL&=v2JmMEl|)ajVpC?Bl?>|a)E+t*rX@%{ERwEb*L_WhxRGcOh=bRFR<)ZSPEUo`6=*mUqTZvdd3A#7@Tp7mK5<)+6NUlWo zR}wLP5RBxa@})#s<-{qHs5F^Rvqm#z7kc#O4LcF ziS3q8tVG&ZwOZ`I0_7|U7#o7JXEV~1gG|h z5><4DYFLSe=}G(ve1HRRE5F=9dBjSgACbb#4U|tH)?tar4OFQ>&>@M)4OFE-jDr%f z_Y1{}g~Q&@5W1jg`#9v2OOkkog(uVjY@Vl5vv27Ae3IZ{< zNCfTRWlC@72-R$sknxFNB$uR360x@lMtA=Bl$WwL67K^zMS(S=?*q7N40@04qC~be%-U2(~AbbT=oL$CIy)ChZ z!W#koY4XERcrOHDHHYC2&Cxh20ncLRQ>n6MubiDl)yE|zuMfk$Xh6&p!|({KJAvYzlQc2nI68n{3MS)>Xk~CKJtF zDRNufm}YsM_&R=#0wp!SCd!%{$yFu8;Zq=5MuuG${UAggUU)?b z(J?%54YjDEYGocZpohuw+A+Sj^3eR1M4-GO++9smX+V3IK#_uF%G)|*__0hOd zig^a4&4dj*<7Gj(CQ--#l5wMPJHPX@SNLX1>ojHkBwGOe1lI~BL}D=?GaCBWc{K^) z2(8}_t1e5aGXRk6R_6C|#<0GS9gI1WxfI{li5q5GpOeH#=zFu1WY8lZkamI=peptV zq0tE`v~k>97AQGAGyIHXZA%AeUH_F1)KU;e_F0E|YZ+^FAk+!Wqq3UL5!!g|w*Y5m zMW2^FLEBp=scG$jsivHhaVkZv!s;fPgFM9(&U2W%WRKMjaKtANXNN>gxzGzl|Fo*a zFBt3*3&huJm=pS&aST`@BbU;r&_D-UZ)}sdW$y{ z6N^q$`r{ zF|eFFOY4d(AnnHB;%w)2w!h;A=hN3eVVV81VK8Thwd$A62^uA#zF^EHXU5=d4eXcT ztXE$yAROfxi}PZv=R-->OXSX2coAVvBpnNJj~EDYQkNYLV!c|3C-}|rg)weiMV*+e zp7xWXS-=m@Q>-U=iYFpK{jDq)yl`Pgv@e1`YsMN`e!M6z5PQ5tw8uD7DG+BgAbv*9 zEEFs}oSa!G3pry1BY{{CNkp$>Y5hA;d@@vlN7>ZI=%RlI*DlMcC?(5am;7rfOu{h6 zcm*Ee6HPtAa5OnT4!2D)AA;454n&s88Y!7U_@$1I;og38z?cJUVq>^7I8e-5mopO% zvr-T9OS3dvxXLO$UEYlEA$UC?sX7BhwS^Q`oqT|#y%(Y*v>HkXLjQm9!V4s{@LA%&4vDGqTFxi8_XNmdl_be?lB> z^^WZNhFcalZHCAx<|j9Q7HYodDyg!#FcEbv{ma9N7+ubr2L?9056Cx!)2C;Ib5mbygy}@J>|nHdsST3KG=2#+sdHNPBAq#;n90@vo0ln6zA0@Z&d?ViRx{Mrxj5uIoz>r~O|V|CiKe=f>wAar3Q{NKT&3Ev^0`??n^7-4M%mSee zjk>y6F7unB)n!tz)W^h9wXeC3r1rEr5zMdHi)dc_1a{V-Ya4D?3lvyk4jYVcWHe0?L;-i)c6r>+J2D6J&tpeS)P zq(_~4d>AjMDx^n^`kT0jheLWa_sCT3P)Lsk^)p%QC5U}6q)2<0%xoN>dJIh{#{Q5V ztvdE-Ur3MWQ(4xM7N_i=bs``;q(=lV)hEa)zzoVB=xYwLm116WN+n{xCPaXqI8ankpD&opIc~npZOs+T z1!5FQ1eFWs0zu`85;Eq5RAZRLI~i-e%~xS-!*t+)@k$m@lLgHH&9Yy{bRkr%cz%UG zv*qrbXoXp1-efwu{eo>Y?Cn@t`&Ci40e?1MtP)hU85{wfvYgrsiI|K&O!orOpO=U; zP0$yJGfg7;OMtM~WA!*WG)Y3%i$VmLB@1MgrU>RSJhw4L=9VW8V69m)~S*q0)!oFAW#)Og0({jAUr$3Lp7W5#q!~V5s*=}YMlFwem?lxAZ5NSx340}Lk z*g>5B?aDRDMDMUAfsICHS&ft$zTMh86}S- zHWFJAjwbQ?dg5T_Vkt%d*rpJW~v@r(x`Oz)4xxq203ko6)p?!HmrETJ@(`q6*Y^&C-m> zU>6M0-#nexka>N0nj?mZq11JZFd;PcS+R1|Jt}Ev5y2j;PQvNRGlY4|pVo*012~X#1)h4%&s_kXP_XI4J)U-HIlI>x0_r({W0I!(Jg$GGMhb z@(>hvI_^Wim+vtHCwDfg2Y+4_>S|xsI-h}w6_!~n2A^{TzFun)m`ewm?8n;Yq?sm;z+4L92ig{k8s^p3Pj%}5l6nXYs7O} z{v8t1rSA@N2!ZcTWD10pgbe)galuY11 z%}+%w1*C75g`DkzkwC1EB%*`mHc*J8Zxp$}B_%bigPD~jHL{iT_v7RN#>az&K1*w0 z^U5@8Z3@h-wST(BUT|<7Qp9)Zvw?YmxgzaD{uhE+_;ITSaB){%Lqh;qKTeM| z0}0dAP)n~SDJE{&2d#mCzR&|;YCJw5Na@lJ1-ov>Nn1_Hd@J64mYyFkC0G?A4X!=tHfF4jahI=*766+YDCAUpJdQ?5QGza zH6Y$$c$z^MW@)ytzkJR3v-vy>1cqoYi<%0=c}^lGwZG_UA`pF&M4T6ceqL3L6S1C^ zkS?sSQp^#3ibSmEg%UL8zGTde$%46{qdh5e+mi%yftV8{qD`d8Q?NH}&RICr1I);o z&j=O*(I1nD^Aty54rV#&sm}tb0qGou*LqnZ%>j!~;t+7N7&aTm7#J3u&Dc=u>Ei|A z1ekLfs*MvuB=BeFVJU<;mLsJC(ML(dVYVHpS|H3Z%&6)A7WDl>q3A(b$a+LD5{NNe zB51T=B+F1wI3ov<7I>RtwhQF~KO|VFLf}C%xA~yp00=XLb?RDXg`DAng(zeVkcckM zf>sIyQP(mnV+|3E5`{4IO9zIa!EDLqzx%P(pZzwODGJ+$8gCNaHM2y0U?>B;P(NCN z+xU$>UNQQ7i87zo8wM6DVdqP<@~lL4U7}83iIyr7HF6}1U?(rM00I0tJ+p^IwLXiz zAWfvK$GyayP0eEPR?FU^h}A~q1bbE1(&|7Pg}pXpVq4jvZtt|a zv2#1vw_s;6%xSkq@YKOBjxBsNs(K}T<7s_{@=dvU3>b{X|y<<61^hpTJ0<%4PvSNadfA$a9 z&im+z4u6NaSA>SN2BOwsk}ZlB48jG2Fj(2RKv5#EKr}@nc0G>3%TbooL|{s=Uz&7S zhX<&;f~7gV+#_S~nq@4lG*cKeE?4cc5PMMHs{F zYv7__zl_`PioIDRc;00L>R^M{HQKGr&7w*O_PVTuE?nPK>oN`9kWy%uLX@l)*Cl&& zozCx5f+5mQoe26>GH5PNgi}I~&xLKW`5Rd=7rs2VYH5cB8!Li#*so-VJwuMqr5*Mh zIX@R`*r^fnHLvTG5QT0YPSemCIry|6h0fAK-BkO9jGc!E!a0SH=HY3Id7QMFkH;xs z=r5X&5BjYGyofJNlC67No)%iQ^t~e2ugunF>Osu@ru`hgp<*eHT{l*l!Fcx=&|n)7 zfapL%wL6*lVO|_Sogh1e)GiL1pE3)Yk+k7AGoIL!wdwZM8S|@PCn*?$izKULhFpxc zlZ@AKT5o%6T^nr?ZwXmx9h{+s?n?rW`n z9gl6Nt@F-bLoeNCWzgGHYFb6P^lNW{HD2BGlHVC!drH-t_Db&(CM<_9BDeIi&`y$=J0cZ(smXQS_lxY zI<=j_7L#pgye<(WJe-xHj186NWej0JdouX5HZL%bc}*Bab5WpVyvS)Ugad%=AOmLx zdrDqJUrJ6{Ml`;16Ovo~K^kFx1&W?rFrEZ@Pby64};FKcdy zy;FWtu2_0mpnOf8>J2cHWmhoFKzX19LYhuu8(F{5M@EMm>*;2Ru`^0&HRO{po*7~b zi?~$i!k)#;S7z`Dn7jFAGIpH7H150bbvZ?S7c5PG$y)~g0{;6Ij#mO6_MQh0hE&mB z!Z3TvcjA{e1?DwQ?}ZLm*Q1kkOz=Ff)a7{vwB_NMUMA5MI3v}WNIxfmnzK}WDsxS+ z-{=L>zXCVa(DMnIZuHEK!ne;NnA3PZ>QiOEtcj$&0*`Eno}sTIVe(|D@YR0>*s<0V z0U!=ziY3}lFhiI9Mo)01l%C@ldR#nbvLg#TKR7fcLHiMJaY$p%=uqtp?rmfxtU@o} zaPsp0F`TF;&RZ;`6~-@kx_ALY)(DPQuwDB3ALeDi)5Q>T zs6@0;bi(qB0;8zxQVZrtUdVSoP@X2$IWkl?^8uSd)X+s}gE!EE~U@_+i zAu5tyb_Gbn*HcN!Vmw?i^T-d2aSE(4e=Ww3D|#L=mf+OJMjtVc@>0FQ?U*I1PRJ76 zew>v9FRQY=vJ>5RcXkKnhq5eC3@dDR2qqow2?oS%I3GCorXoII7UZ1vcbC+=g&67W zNE?Dvnwo9z=4Acr?)<0|8Aou|2(!ItpBm0nhs#yz=(N33LZ`K8jZ8Rb!7#n;U1}G{ zEIe7>^16Z5hByRwjCNXeTUSR_TZ&r_voZr^p^;!`f<)!8;4`XDhE%?uA!N!5)D2dY zCQ%~|N|nixWi}@(mSU~G(M;ktsa%R%8Cqj{@J43S8^gLoEi=Z-NP+RntJz5Onihd# zDZWV$GjNfTxVVRR!ihzH;qUYt8jk3RWY97=k*YydB&sfh9(&lEB~X;mWjRdsndNXf zE%OghmoWRK)ff4}^XlEttS8Q?VJNp2L#-6JfS4h6#QeUE-9wEr*Bk zH@UDJCnj5$L&HR)Clgp1{Srxi6L-h*o?L+swKcz(W4pr_hELg@b9ApSfwV&N zAPi`|J|&SnANndJ7CJ_Z|KQm@>?5@s8!kCDTrjK(RZBYpD>xT?KO6&Ozl;NS;fG1u zTM#+K+C!GVg;V04-GMUN76V14V3s@h7M|SC+A3&ozFJ9wXBPA3yq()bB4lh;<_#(bUBO|o$%_Gar-zTI8)ek2NezaP5Y zcznqzh$qSBpXZ@B%^feEv{z)hKAA+X!cDvAljtk}qO#o9RM`9Qa?hrxt%u5Va~<1K zk(7a!#(e^dKNzkIh0EbrVYpRvE?Kb(CpSZ_i<0)E`DdpODw(_RY|H*+5{+l0^~lb9 z8r3d<=ya>_eSQ?xf8@+#6`tJi!qTeP=IvNauEU%1F6-_ww|5qi1IQJZb~LLhqPpPF zK=S&#c)Ma=BL%DRR@X)1T7w%YRyavrgS9B6a%vkL(svE^#yaacm88Op5M!taZYN%Y zySGF?27_>eRO#Bv(Z~5O&ymzG`L7noM~h!;zaXd9;C4-lewUG}x?~;c8C>14cb81K zqa-5Y8G1$JJ!|oEG`8u=weY$T0%IOs3n#N7#`;>^Eo0I?wfELuZ1#)L*lJfUd|3mxgM_}VsWk_^OQHifxeeO?|EICN;aq2Xib1DekU;_5 zv59${(`~on18CQ@qtLR&Z6Q7wZCeQI8o=p_HI5t%;03Yf!*@4QI$Q<(9)!Ho-XaIz z!|Ynb_i(x^lQeoC4^{Ny;Ir@JXo!gS2a~KRnqTzbew5%bV=MkDjV)YCZAX}M2eC!S zPd0skX*B2WKfw3GpQH^Cj;96bv;j9$v?*l72HIwY#M}VkpU}SJ1PhO)I0%w};i5)|VvWL;OQur$6oLlx@Xdf89<`yn>pusFnNOoUPf9j-O@ccn*)o zMv_5C5}HbB&CIPe&Ap`MMut$2G=gG8^31*kB{2Q4fo#kQKKl`#?22(tx%!qvA{)3P$%RdLtRE$g z9yG7d!UJh=8x$pp)c*OQCk^)>6nfGVqDP0GjQIX{J(+QB^blsn7G>^_x$7C0?Bcth zWBQL|Xar+wldm>I6d`@uiOwTi%nu?2tJP_x99equ^Z*oxD`&{7xKGdivj8L}0(%+OE4HH+>su7r|z zA!01;3EIz%`bO7FfU6h9vlD!4D~1cGAVhKyr}8OSGfDh5+%jH2*r;zC6e_I4t;*Z* zs8lqmqV(|eqP4z6cyn2Hc>2Q1$OBya+H+*@HVoIF!#7deAygWAiVWHg2b=WALFHni zoxdG7PcWx6*d3NR06n{;Bu@f+w&OAJbl-6~uTf1~kza?y)1Tn?6)P!t>JyypinGuU zgXY{nc;_wr&!;TT|4m$3Is;)xC^&ys~y{v=l;2wDCek-$GW{5XBB+tk}3jG1imud+@7@W|1>{ z@JI!{N%XzA2jrfy7jIFllceK5I6a_EB=P%kaSD90I6K^E^mx(Qh^iZ}|M8ESM|9eD z<|kz1emEM9J|gG$L)bE73Q0MDH!0dGQhflI1G$F|;(m&`Hu&yAJR}U;X{YPCFBA0n zx6}V3`;XvxiV;VK90d`yO7hxK5CPREJC5RZF`8j-?2j5>_ z`y9UoHC}uI8XGMjKb!y;w7HOIUqBz&NBVq$=f@cf7y8mYS3nJ1CtE;$L(0@(v!0 zuvQjTlZ`(@LG;CvpFpA3XTixo;bd4ozzTA3JH^T&yBxaObR|uH#xK)8yZmRI53-#8 z88>g^9BdBr281!xs1$lD_u-(2UK(Bb<+6S5yjf(94pRWHw?*2W!b9Th<$1x=%j@46 zEA#<(*`31AD|(|~z0)`x0;dlmF*SHZr1csv=a6S=ARf`GdBG($_))l^eJHv18wjG^ z3{L(XVuvc|VY2)jTL%xH!%rxMgGtBpARr8)^LVZT--1Q`!O(7h;8zswC$jYqY%1uh zVAl)yCFlq{$);KulCaIF1u=}x%F3BHZhcaWCww}JCvBf3g3 zokMuOOYqg26(Gwm;g6L*0k{(uG-l%6}p{SLbPjmM3P<*cVGnsns0#$2YQezk2em)fxL$2D@Z4) ze_>03FK~AK1%V(HZAb9O>k!T{(RuT^Jp&Iy#9gqyvZ@GTi|cZ-=_WS%TTcf|;(Bzs z76-QiCY0v=1Iudw?$-MU1~&`oh#rD13@@<+W)=1eEqP*h`pQVKt?zY>3D)6nkVpT9 z$xbgP+y2II|G*rQaSPN00rT^3fjr=Wzl9frmTup|4=C0YGVnGoQ1o1~{5EZucI1=W zIJds}BBqz0&N4-aOY+=5xLJ&raC;ayXD%|^CWE{MWEJ=hVb?!6Q86`g5}xZj(KAI3hx`MD zV)dwsa4j}Z7Hhn?tqP?)iwCOSj@o_R^03wY(5Ts9!!W7zKTCYymCwAtF#c*x*y>2v z?cqXNmDdW*U;MuMLbB0Sv6a2be&yip2Md+I6=GAF^!B8yOU;Vc4*xGvR6{1YRJ$qK zu@J&A)9}mQ;@iXN>G8LJe(b-ZJ~zlfxFaA=uc0#w3*fqsnkoB;Us2mD))lfzQ9CN| zh5WCI+FL;hq)nLGF5bdv{kQBMyMM}VLFO!ZHjGyA3-Vf+3c*@WllSQ}++le%OofT* zN0J(@7AV$IG9g@jQGo+lPPp0OHlL;3Tre4OOdCW}JnA6@+2j|G zs`*y!Nq^Uac+)sGg!@Icv4bEQGL=l57W70Lu>VHi+@CP@ufM-J!qcsn_`1vPMEsNM z_WpWmBdGLa_0(obtG1_a@W9uRl!mhnh8?R1#Fek7-jiW|l$xKO6^?GanRAd`K?TQ=4L^fCQT!kr9rr*3mHEV>DtX-Qi`xNQzXO zCBO{Cq(JK=3AisSQk|G=tte{I50!gXl5IoXo^4-X`0+tA%rvN#*1Hfdumlq1eumcB9^xyN6kH+wM!T5c#1;ZEcQK$v#* zRova0UsqzWAT_6`MWn04)SD>p2v0HQ(lF=Es%cp3e-03bsuFw`uhv)L8j!){{rYNh ztoB-AX%qriAXBeCpL|(gg=zgdxn5swp2_QN@>aKB;niIutIK+x_A1GVhAs{Fdp#Ph zCa2jiuF%uU$~`}lZ+vdgHmQs!`!-ZDI#tHNvzHvp$*Q32msjiJRy*EC+{E(s(^H`>f($-_l5x{n-h zpkk61qb9~$EvbMDw+pemacDF^3d$re#HeuDY6l1_P5Ct?-^Hk4BDJN@NhG16ngGmO zG*rP3?n5>-R8wR0yx9C1K|xF-7vt1Ka-pG$Q&4n*TZ^R^kZ$UiRJ4b#dX( z$5P>Mk?=SW-tdx~I5kBv+K^FkYFow1B<1kjz-kejKOC}mcrad#2#bV!30RFC@|8++eg8kXekKu#>Zn-f%ezyNwfDP}A_FdhLq#o0V}lXMEccWZeFfp8|BB@~>@^|QVIQz7=2=O7HOJxh)p3o~ zj%mg_p?s^>hVnUY^L*Ay@<}7Lb5rNdP`>n)0((cSRWnFTikj8ZnZQ-36}umsi0J>| zBQhr@a@ZnQ>(oHdN7@Y93uHx#n$poW zYPE|W@HFeWE{V*N@f3ev;V%9ht`+~fK_18SN5NoXH8jSM-&0@~%zT&66;{s*4?<;? z1R-=5{;_&&=F@Vo#%i-v>$55bLYrW%~xU1mRb z)zuGNFc(_@;+&*2CjA9p|8H%qrfKHyFm16?*7Iq39J5crOHh_eJ3+2DRx@A;Xp*Xe zizuG-PE|Af_V?c6=Wf-Js=BQ63w!BJ2((KE=q-VqXajF?-fnS=BTxAa?yuVI%7uS% zlVC4PH4HtGVcHK;82vFRg0cUyJ{E3yon?0M#G)BV?)=nXO{(e%8|^uk3KwU_(mN)< z7%hJJzD_;N(>&jg7QcKyr5+Rcu8tPJ&YnvBoTpWu87+Q2etz^q4+(U13reW)O9w%kBFLlq1;a7w0pG%0);ok2FDB>r< z95lJbB^*~Yol_$6qW9mbCUn^^xJiu|5}^B>jW>mwm9cAp7yv4 zZnDl)F?jBVXQ~GjltEIn)FJWqY08&vJ(<)9F1yK67b*I;LEJ)}4x697WKm0X6TQE% zZz~ld7JNuPZl&tfX1mr(%~G@tq^TEdH)}N+>s5y-=xwsitG=e_gygqYv!N5d(ptS= zF)PTS)@pZ{&coWM;4xVhENG+JboX1oEu8_M4t8y;4uYM=P*Q%6x-!nmuYRMje0@0R z{5aJ)T<6kG-LB|8$n|#Wrg+pI;CUe!K}`SlYJkq96SCQo^?J72MbR3QL)jp#(TqfO zfH@7`8hqSAT@i0r2A6|Vxun1$4joqzT6%0pwQr)~hS6lxHr4+b3xSpBFY8WlS4TAm zHjy8YJDt=X3hGOGbXFmxJ$bIP+CeodWf}7)Sq84T?5t)g<_{1>TpjH?P44TWJ`-#1 zo0{DSpLC%-JEpH(e`-^|bZyzGnYjY9Nn%&EU9?HvL`(|f02$I%?XGCs z$!lFzxOM0XN$sW@im`^g+D)BRpuJU;5qT;I_d$b|eySwgJw73#uUWA;1Ntbfp%H)I z0WfS%QC^f&xhH2a+QYeNZ`E3vd--qUKct|$+CSM`T5FZ;;Au9IQoyHs8@j6*@#xcU zMZe{(gFYd@bca2H8I=8*r<+?z>b=xpUqZUytF}|%g!a?-stULc-U&|Xq0WKsHHX~1 zPkp+fJ(HH~wnet~lpGcIzcYe?9Cfl1Z;W7cA6mSV*t9no!%5p->bNxYKpB(cQn1LE ziT?ZjZ@bywua5dcff5qz18v17vJfv zj-hujh4)c&6{`a&=%bEP5QGEjqjq##i7U$nlILn;8b21TD<5eZ=f zsa$5$;EG)Jg)o;!;__k3;q(vc`D*7d#hFiDx*tp%V^MJV{VKTLPrnvi*B^+xP_V%R z>R`yRix@-HA<5`LD&A2S5F49DU&uN1H{6I?HAHP0ZBwTgLm^(qogr#lmr`g3+YVDx zTv6%Ul7=34f#Yp!aL91=(J;k6N;ZvDpM(#(f=wS%wQyxshoJt5S{Xj0^t0 zU8$~)Q2PuHb~!>%6D*zaXX>7$gk!)zEcj5hx+uPR@J#(%Th4s_^1DmM^nCW2%d?&x Xv*h54na3|xY`(B6$r3@?8UPxN<{ri7o3-G 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'b7kE8m5h^bka63P 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�QPa79xv+n1(R>VP5AivJ5xNJrfo zuw!WXLnJqVMivW|UmCFc%=I;fs`>|UemV#8OQ^638$zpf(1|8&1SfX~*T?vf5x@cu zWq(c9>J%I?82B|7hOQxmR_~TjLT^}?SCs&XP6;QMtHI#4dligu5(PJ7JBJECR4*Pz zkR`jLyR!0eG_@J)XsVXK2oRbqf_suvQTgLZLs(vkP$#Q@H?w^Jr(%p_QQ8t>4%(K5yuNc`Vea}5k%s$Tn;7e0 zaSV8~d5-+l2R(@}N^v;cHrzQ6#-^^QAseu7f_Hr6qBQA7!$8zDoNW^+*nGfZdR)Yf z0H;$NfTrurwB|;5wT$;_Zg#zafW_J2Y(%Jf1di1Bn}fL#zV>-`uPATYt5rOm*{YZ( zm}*N@9L|DA;%!Jp99xh2c=1z1dbM!m-+~REB!}&pu$M|(ZVj&Bl6F*7uHIe2MOLQy z`391Pu$@jb`326ig99!Z^PrT=SOc6+oolXVcGNSu4hel{Y8D``pYKQ+gnlIBWLa**Bf<% z>o2Y9FLiyNL;VZ(bm?fiP;j=Of?IfT@gZ(R1KdU}^|tYbs=&pC5$vbU;hUuXmBLkxMA4p3W~F&+AFj-Gg4h=<$kK53U{C- zk!%Qayg<(atP7N|4DH7_Uipy6Mg%*J+CM>KS=F~F?WMdeuf#qOBD zxU*C3Zk}vEyLcjK@~>z~6x;As@ly4&waX-M-Bq@BxvE^k>rVt<`wmWwn0+a@9GiMf z5l^QLJ&0n5)8bobP-}K&wAvl(AJ5h;8IEWBa+vL{Z$lfW!E`#Dv@GP>s2`1O%+9sp zq$U!K(h+V9H4LvrV6Rp0A*n-cctc%yZ@BRU8^!~RRL7&*R^inL1ECSN5P->%2BKw} z8xi6@v}ksYue6j5e+rFj!-n~(;Q7I07mhG3Z^L%;6Bm$YZ7sUkhHdNzUP=ACxO!y_ zYwOq>_2l!-6lBhXtG!AMO7kPLd~ahnr9SEDUZ&$K-Yr5YCi{G;qS6$ZS#e$mwue!=fKOOk3~+ z+{6xcfbL~a;|AI*${)`dXlP67HTSoV8C@GlxR!9MX?wQGm}_+aTzfOz4RqX($f@9G zRPp+Yl>$L~7v{DpxH>TX>y?+zkze%|7Uq0s!c0>FG}ug3*q#lgOWs3g+p}>t(HgHR z?}1$o?)Hfgl2;bozclFteTqICce;Z5^B#)oz(zKh^mw-r7U4~SQ;#Ap>Y(Gq$a%K| z`zrVq4s~FiwE6(WcVs)z;ypCGBm1u@3C-xlX2Q>tPV6i2(=xHx@GA-6s zCiP|`O|<+3t&C^q1gnoigm`d%KX~*}ahU8)k@bxD5JlQq*iE~qOt!NZ&DdS(=*zAN z(%_!yE+yR^Tb)hKVgB(ZQYfW7>dXG&Md$pkTpfU^i(M3EARBB7$@x9xC>#Tf*yOw& zQ8iffjh<`GP_IF(7?A_lW}4x`Uo#bQv|q`xqa?YkacJ-fxQlh@v=DS^5E}}aFwKy+ z11CKwyB%^A#brTIOWoI4e3|&7*H}cWCe$p2T>yRZSqj^R7N4SDQdkwfZcJrghM$9} z?3obpr=BJFkWT&=5Yy^ivNRUoLKzMhk6CkmN1F$;^ZAdzCDLwx9CW;`zF8DIgzZ9W z=g`z4AU+>|gH{f~#%!r_X$b3MqSXWFx7XQ=w73Hu9?HTUCRfmj;W_O(%5wnQuze^HkRE$ z3zaBq94lJnKhqkTIV6r{8z8Uo>@2uCZti&YZ8I(9qFZl4t5YawGTYDB9^CD6G0cQn z%H+xH%idOa)}NN7vlef?->0$3lOROWoJI9?pgdjXV&KVyby-sf4Bh<4kTvjHG~OaE zgbp`5=B9$)(;>m7;(;ee<(oUenAk0ttMJlVMQ0Z}=cW=WnUN@YI-5?*|Dt2lVR5Bi zM~O4oa9X&6(r2*!X!){ocm^8^Ep$S;I*Z)~ZMjtW@O}1ohL(F!^o2Yy#djN}39t<0Cgt9e{?Psz{3Ak*?fo)(* z4*WdNMaz!rE@vYE>y_nf$;)yl0z6LXnOc#4_m#q|DL<1!;Xdko_BC2+;&{p{)<~U`SoNtl5)0pc%u`4aGPS5@f%}4AA8h$kdt6BK{ z2jF?zZ@87_rc5!2!`0fW*aSLIKCBlyVqRZg$Y_PzNIHa8tO0HzUGcQF?6A7(cD1@2v<+-m ze8q0j26iFtk&RFb=^d1{5&LCcRd#P=(@l+U>Qf@@mpou`RU1mZ>pR=#iB_`xo1X|SWgZdRgx5MwGA~vqE+#}yw$rk3O z-T0)lG96|gXGsz`my>Zt#O|oHh@D2Oos@37*gG&B>Y=DT>N)?~ALdP5%vc!S_)I*kF&qi^p-d!s+5iNHc`ruQ|w6?!`UeGG&>c9x!^QAmxi2FfoDKV zsMC~gXV_IfwDzZR;d^jBSWf&4Iq;q;PcE?8a6LVR=3itt(Z~N)!hdAfn4ra#W0%-G zlj(-?+GTdTi7tDpJpY+}NYe?=l!qD=0DquKSJ@AtC7_rJ3( zX}a{^eSff{yx~_7Z?mVvY1ynq2Xb?uCvGb{>T!b^x_KP(ZpO8voA*MUn{oZ|?}BDr zR4{Z*Ry?J&wD$69=}lFr;s>GG`OcPc%IRiYIqXL(>%+PKyfKp-T5*%S=>$rFbg}OM zb9d3~c3dH?)kER!xlVYN9@U;329v>4Bz5G1(fJPC4m=US!yIU%XC1lsVR+5z#Qh6D z(_^`T4NsZ^CRpi@eXi317QwrsvSN$Z7H>M=eA0xpST2w@2cn0u9Ne;1ri6Fq;-N2= zp~A2}LGw0xg|WCMQ5C!2Fd&t~pQ-b>r6U!wEqB zwLaWP46rMSTMv%|`hsNA@(k4QRjykYAsMcdtPnSD$1yv-hF)7@y&0Qo?S(f~pgmsY zGHG!ldj2Zc6$o_c&$Xv%u_t;bnTx>nT$RjifcAJH3SJYDLX~3vnj+m3j#$f73$}oI}<*hf1f^i1U#D@ z@t-L47!GU$xWg(ijq5-!oTVhCaVt!q=6)T^wWOW16u)sGi0}s*Hh~MlFJ?~Qrh3zA zu5#-wPBYajGqqGs2<-XQHh-@yA{^?s~YBtvm`u>now18^{{qh&Okjufnwtt|fxm*hEY^n@e$bD!6 zT%;}Hw$Y-B7JdlwwWz7G`$Mk286eQ9Wn2`7{AU?=6>8(BT+Zi0ps~ErlNDSqI>8IY z6>!sN;kNQc0T->)`fVlmoVI(R-w-#JhOGKYt2hToi$~D%ZCrXoVZUSOyOm3?c$Kzf z^35%&(U6}7*G%1qLbh`fK54XJJ9mKAHlbmKoP!oOD4PnQ`C%;9+rjPe_p_T(GDgr2 zD(Cle%S|s$*d7*n-7mJx+6zuAD^m_|LrfqmCl7KCQ(we=#YMnVm#<(L*sW;ES6m2Z zZ;3a|M=gpi0PSgpw+Ft0X6b81+E-9}^*!Wsh-+83#AJfy=_gx5!R_dPcug1={SI+9 zOR*U&**G-y5EqGYHXP#4K%~{=!|P6TNyy% zi!$i?@w?GKW!yx1u~iv!f{XH^x12_KUvouqVit^aFE59;cU(ajRYLU}VKx)e>in%v z2%4^BcPZaNZ#g%g-ULUdn=JIQ7gPCG38LgSpGF^?=BAk7l;mk{ZoQNP&I+nLupl88 z=G>2|``(~4QqlY~To)4@1UthGGz~$_S!%VeX9+Te+W*D14iP~h z$HbfLcw2mXLi@oFY4D!u<*U8WoWD4{ociQ1u4Az9Zis-dW5=wiQ+x!XlGR*v|1S^` zDH=u3Zcra}zQr{hZC?ix3Q>ye>r+ZxgkS){OU8s-` zKWuQt%Y2l&m)sQktO`QD2lJiTi4Nc6V(8`&iF1!T20D7r-<*OunS3AgmvaL;ai5dv zaSEFBfZGv%{YOl2!=c&;&UzTT5;VD`)P%Y{{fGOLUL6IdKg{Z1MxpG-Tr#~q z3SE56P4zn&HOTqw5twjMDCG&aoL&*7+Zo=6mr`^tdTXkrxjp z&E6=8%HVDAt2oSjV=%S7(0B_!70g@Zl7(+)qQ~bT#)sGNhe{v5A3e^l#QE~0%=GxT z(FTU^MO#}dR~i0&FVi?QsxFW!Gb5=kA542&(3-k@Q_}?WRb75?aG4oLqgYA{vkJZr zEynAXBsIVrfFc9Vk!e^%S_v&r5qaNSIG!^|`j~{KC zh7#-ZhfE(JOAtRbLN53EG|StoPcG#mBb_VE4KO#L`e$Eq4lW=hq_ap4;`^H3L$`wX z9MfzxEtr3^_iSMQgNmXfKMz&vmFgoHxIGLD5c?eRrOD-yM`G*oU?5}xY)So!qW>;! zKcYkGZ|!rCtpOjwN2RzS z|GlqiC0f&rf3-aUhpSfGti+eDI^leWHC%zWAfq{P1x>frd~05T8aC&{tU97|5sGil zH%&u;pWpomDZFG&MbUue%M^o^)fGkWF6*c`Cu~BQTgsx0w@WLEmM$`n16GaF%*#Uy zoJV4_F#F!Q6-A%tx=RL6Z?1BpIlsb6r%gqpTJvzj=euZ0YkoGZO;G%z`K}h)`ikP{ zz<))<6yO!h52xW02r-slY^k>ymE*3}7UGigoxYF}-~I`r78K7|z;Qk;gv9a9JDCsW`q7zX=c@ zIw!y@00#6;%0F@ZXTCv&?@C8573O@e2j53#k=7{Lfxb%QCxZrT*@y2)mkCJh!-qDZ ziWKW*Y-@&uh2Mv~=EZQBSJIuvxIz$S(}!P5k2`?cCGj7aPQnt5uV*@`lqK=8Cb+j_ zUq3z^78^>7SNXPJj*L-;_2;8a{@Q@I4;p>&xw2vae*&AzBL{+HmMGf?@(U~tisDKu z(%<;KZNkTv-)OHbkaA3KIP-2L>2-d-DX`4^QRdH!kC~6oJ9h$)SCAMB(uVR4OncCi zp?qrC{=?3S^#4wn?InjuN%n&k={=6Z^Ir1o+>53Tq-M1PO z-u~#x+x#)w?2it=!w-UArS7}@0x;X+(7JSfy{Qy+ox(eUeF6LIeyhtP6Uv~ViF2|q{wkMD%b8UH`Nj>&W$O`XO+ z$M2_3=R4!y9n<*=(>G|{444RjJ#_{jh<`84;D_PQ?cU=Dn9ia3@A2JDU&HNPd^7y^ z_xJeLFQ1&Qx8h(>M=;>d%sLV~-KWI=_X=kVh}R9~9Qzui=h$GuMo2IM#|U~4D)3P{2QQaA+K%>@k)s^9}Y%wHNG4!0!Y z&IdnoyASyGFn^B!fbT%7qtLn!_$9QOilQ?3BwX6e41Q48oIa+6bB=VXB3%iK%t}2+ zhzgCX7Ya48lwQY$x@rNwUvG&I$F+!(coo(ew z$jv$2`sd`2VDPAHJ~))xUkmuZZg5CXGCmuIL5oPVGMg9ZEwG83%}+GlL_Kr(A^7#0 z9DW9LH@|@I7zVor)w3Cnh}zCZH4uBSnhGIE(F8))B+efAaIon_^y4otOcw1L%0{oQX#TS=fy*A2VJ~v z3*6LQO`l!IXh=eRns?%ZgOJ+qGQptG^jyAKT^4iklHJV(g+9&YThown{!%WOS5Wnc zg)kDJMP@JLBm2o465|a58zv@_zr^*B$5&@VT^9v!EqQoV9NCwpjV_@asIljXefUo~G5LUQ(4@S9;sX}_O){xmA_odwK z{|hVoWjB`Ccy8+Mp}w#Of$?l@s`D3+VX;JbvM0UV#VA6GD$J^oV%xhAA{XEa?MlE0 z*&J|}n!8FuuunW8ucd}M$zMV$-0=x#bl-&QVRVLDU}{66t5eIjW>8!$1Oq?_bTlp5 zMOuIWOoP+_Od20{?rsp*nquN8qB`-~Se0LLQ4#v;48{(@dcSAZGRP2w^bb|91QECUS)(5IL2o8eiRx*R4VT0V`Qu7E`atP1NF@DRUp!o?O2 zHpNX3BOGG$T(Tj4F*o(l5vLuDJxfJ0Th{zX!l+dIB3@}{H=b66gM|sKdh|uu>=+%k z9uc0Mb5mO$!J})|l>D3t`_aV$J~0$j2G#hGt}>E8KY|a)gzCrhl^g=sViW4Ml262S z{ct7UD_s1%W-;LluwKr_Hn<_`(pq$XB_D6Pfw~~R4@S*Gu+;kGU9=Su^?4INCp18Q ztH^V|Rs1kh8Tw=u-y4J9S_Q`64fOJA@+hw6Q{d}fNZzEVnAabWRLa}lJVq|_R-QqslC&MHOd_9->1XGLaVUhR!V<%we@Ps2_k-z!H zS{e8|K?#fg&F`ZLv7dkdS`+G`$(wll{~zE`^kftNZ%duLGTz!NKYKio|ISabFz~kn z$baY8bi(=x%2v?6+2Jv$@n-%V+G}8%>k(|&gGON$`2D@K*n0K(&#uX|Z>Z**m-IKj#329jm z8WKG5%bG=(rg&D5R=1$!t$bhxwXY^%_GHi6h?^i87GZWzO-M_BPe^s+NdrMU6j)`BP3oai4=< zPJ9*Z{+vHWi@lT&ioi~U_!FgkH~$>=CjM2*zu=dcOmIqmAK$+Ijg@SA*<}!Y3HXHD-Mdl7H!Sqh8Kmw+y4n`qI_+~NU8!b;}Ce)*L-3ULm$J;4{ z$*ZXVXP{9I)ju+~(MdNSknAx12yY9~2Aq#K^_ilaj~@;HO?~<(uJVQcXvYygsZC}d z9ORY+$)uy5I0=WPbY~XfMFXMtJ(=d?OW_2cgc}=buJUJSp$odN@;hMX@}r}?-NaK3 zuO_7Z5o^M^1~JnVdUT9`9|Yrn$N4kR3-?j45NIS*e0>YlYL1=@{q>6 z1=lmAux@t}rfO{=ntYOv%24OWuBc+%T0B4BTs(hu0!$byVOG;QqTVHZ*d(KR1{7GH z5G&zW?Shjg6L@)UbvT{cS{IaUl2On1b*PN&0FOc)8(d)O1OlebbWW&F4y=%gz@F@a zw2dj34T~49L>esH+|nSW5NW_?^kL72Y(QCq z^4q}9R__5do(Gxi^HKiS{A&%I3zD4MTY*JzTiN2%D;EBP_Rk40Uq}Ca&3DY8hPulQ z$g%IhwJF^Tj&7U}pKxYBr@+Z0{cqdg7ooF1^Mn?A4Tbzwy6$+bI&3JusnlZG=}Mo2AquZ7=`v7=b>=NAq-d5wc)975*N?pdcqPh_5xU(mhdw;e;C9e*na3l-dGMU zhBxrs(SZ178F}ttJfAHf&+U!p)4S}Uu^6G9LEyk%0?^iFHjwv@U*_2>Z12UyKBxn0 zE%Ut!(9`IbvwW1zsxyO+8e(=J1C&i^(clk^r5`^$h$6q?n`MLpBlufTvnkJ9-@<_z z{O*U)(GRNL0Yms5YMT1k_09r3;deu9_Pd^3VfutGrSZ_aZq8a{`o~IM~A?+JJj?Ni?Y~}pahM&9?cTD*KJ2tE@S^tXCVCfjl@ZhQ@-{nWB-8pa!I<4q~b9`i&YI4Kl z>>?Nv#P~GEAsBE0_Bp;m#&z>(mvlb!iioG&Xu7jVN6RjCqly2Iu`dsgn)?3Egw6s2 zc9O7KAhb}*R?1q$f&tnoRK$wxRtQuC6s0J*0uyLw22i9@;kp}HwJKJ&aRUOv6cDf= zDkx$U0mX&NS6orwbC=Ad)A9GbfAnc4xu3J$bGLK1@5JZ^XIkzkIqi=alK3^S1R-nc z2zeH7ZRUp$+_hMn23-+{uSKgfxUjBW)PnpU+OXk1`n1-A<{$Hxh-+uH*g}f)tj>A# zDGmL5%zMq0_j?WYI`UxMa8(c78S4pagz;`?Igpy|;j{%UTQtBWr1ZUFr-!q@DSkKL zqb!P-En-jaFZJfpckfp^*;5*N9JZ|mE&RJ^VPW#L9u89*m&SLQAP z*;)Dlv*rBTm^nr>skVWnA7L|`dAQkbylxsU02&Osn^ zOf1&u8}nddbU8!2PRG#NcD(W9K)7XI5uEa|C2*GCy=W&I_p!HYs=PPmFd_&5eO3qv zJ3od#0jVrCxU>9YZ)PSp0lH+3of17JY&V4d;0V_&td2Sk7P&Tdwr;ExDzx-WAG7)s zZ-HNj8U8x@d1MbvPEBEK{>0}TTly($@o1FjScpfYE8&nQQde(@qrq&1HztRsLS1|& zMuU41<6$sBkcR(_IH*T+$Jj^C4G%ZTKl9l63(TCa#iho!@RU=8%LOraoH@)UPf=mj z+3 zS7C?b;1Zbpd!QQW0ge7uC>gWW{b=(E?~F`+Sv>oFSHVs)up36Wk}(48Mlj0#XxK?_ zXMf9!^2UZRB6T@`pu)&yiHMYgw_qZ{Hg+P$Y<|Ms%w{^Q5UJx~AgthgdJ|kwhd_CQ1a3K#b`lPv<8%;pjw+;~q?i z!@IDs3h6eSU(<_!e3zMVZX#F~W9Ne4b&Q>&@)HigDU+C;JSP#(u-J96!SNl`;(s$>P_mp?0Umu-F69wNr z0{gup*V{!>6wioOyDt|0hR^jUc2F0L32&ajvY;?Zi5=^Ry+McjgfJz1QCG~C`gIl1 zeqJg}_Xm!R#!HPT3G;?132T&uy_u14^|q7HvM~u9MaKt*-Uf&I;fyiz6H(wAQz3%c zb_#0miX?w>G7ZIJB45B+n#2i*CL&V8h`1om8`DJY@i#-sN+J}#GKN?Zy4Nw3(RCVi z+#Z^dlL%H~!Jv|k!PE?tej1huaOlR<-Y$-o=t21BSI>ioT;mju!E(FQz|>s4+>R-d zm580X9}_*kqaYKi+o@vO~^`Xt~yZ$=;p z5xy8}O~O5*W4TKid%0sGtir?&j2M zR=#P!L5vrU1c?TrY58&2w*=04xW^OIak*kS@7L7-kzR1@WD!C_Z&05E9NNtY_#jdp zGp2G8=R6hxF6gBK{2Pb%Xf_ohw-00mUHRKrFCo6wh1tY6tCdwF{28B4wxx4PsQ=gA zwwdOyajC$vSntAS(1pPJ-eY=e+SjP;Yi~clURxgn%^zIDl0Orw&XPKcp4zP7?h)xg zQbm7Agw`0^hc{S9TW<9PY{(=i^}8r4)mBB8GZ+=qYVctX+ZpfcvhjHovw`$0JX!c^ zml@Q1T%{=E8yGZdpT?&uNwKBc;n+ka;69F~vkL$ha{)zWCrbd`z;$%TU8S9d^NoiT z1QsJ$zkZa`(Q2Y}uvFe4_=rucU=W@924a-z2PpZhS88O58+j9Do`qR073Qt&?|pD` z^;vH(SuyI61*%zXVrm58n3%KP@v`w&e5#tZwp6uf{5fxbS&8+2EyLMTMZQH<=e#Mh z_C{q8Q-kWUH7R<`g3h8{jqCN=8;$Ja2+Zf49`lwnZh-BwS}&^ran5j%8oV`S;fFu zX`%eJt-oVsLwh2T9?49P$Ty4>M>=o|U?l=6QS#$)C{LB$Z2fXRu(;(myq?JlEA*}h9V{KpFlj*HrYMEC&u*c#%_$Z?^O_xRGo@7Po!qwJPA0?T=({#I zvve{#^S!tIFlDv1$Ac#2ZjBR)HFa5V9AfAWs|shVe70t*7DV)G6?Lg8V-i!V0czE^ z*QJK<(X$%C%m9r|omp`09M|d8Q|X^|DO-}asm$0Nz6^`|VPa(3iHo(fKYcE@adK*4 zPz@clZ0yi^(6R7ucubT3!Jtq0;}`WW^(DDk9tfD$&OS$lmQjNry%|IQ$lN;sic!+< zaF^2W5ZfhrrT6RRftam6`FZ+VftgS`)=v5zr)`3x#(&dqW^Z)QkKThV^Wosvi`=;D z($bT--gzm!Y*Ru`|H)hH{YM}EUbScAOREXx*?mB{nE?t*DC;L~td}1%R1}1!6UnBVZuz>Dv$fgBmI{obe>z z&z-;~_^sXGlL1zIg+7(Hn+ESIY#^{@i-h+PCODwc8T9!jj5ALIt!+E5k zrvc>wl!uw&Z#p132A39+@er}H(xg5GXto*N1py08k>&pH>sb|LHYBLYbr?gJxGQDr zyV?%ZE;q5NN>?IgGD8IgJ4(KEc?bIGqPHbl_p^7j-?&mAiZxZzp-?>znl_7Rs=~F3 zc+^){Q~me)6hKo84{?;3rph;~cHske=igjeHeRh`V-KEt0TF73@!ej zcdOq#QJ)pIm);WMBMYHKw~L9Y?X54WdAvRzf`1Ghgt$!1TAE>rsvTu0e;rXx2BY?| zG?aI|#N0_fl89L{Gz?hOx^^+%h7c#Qi*Ya!DvO}%*+t#{^9~vy&$!JMfsl(a0bJ)sqc6mU&PzdF~H^9l}nl-3s_nebySp;?p@H>_NEduUZtiZVQOuw3?sLo&n7biGYO+NIlESWNjrsVIS*ysB079N-SKrC_~I| z1wUaL!}-k@69M5A7-BOV1dG{Bd$gboV$s`h9pB?$s=fJa>9C_*A{w=fMzEiqh7#(& z?V&j-L(-3t!^BbE?_Ri(VkcVnyLXviU22&!xtBdNpz5mtXC+wy+Sg+5;pU~u4Y?`I z&5b}J5saP`>4L4pL=A#e=V0X9RsmUT@yyEZ1xKckJT$6pDsH}2@;G$U zU*2}SvK*ECp0_2h{yvChiK`IEK8OLv=)n;BZ|_FGa;+VbYE%Y~ zEul3IG#Tsu>O&t zRDVx9dp!2gZ4&#YE?^1G%=mOwwsgU16D)$=;?vdG(nV&x4d?M=gPEOaIyKs%^3>WA zx@NV3Mg*^%f)lFB4#1+p;!N~LNTAN<<_`lxNYt^sekg_i* zUL#$;_)IraDc<*x9S>*5{_E}G=W4o?4LnKVT+hOKEt9AG;Tsz_Z)pi<|tAT)X^&>D`0Y`N$gW-r(UNrsO)B>uy{+kT}DRC-rnBIV# z52$jhKGV*G=kkK5fnVDTwJ9)yN{_5*!OXy=A7E^b+1bcdEPG)hASzar35PEl1tvZ` z6H7cuejQ(@d8}Z<+w`}wBTl7IlAlS4?~SjX2jG(ySbc?pw09CQlPzX=&lxQz8z{5x zZ_?jfIF6YI2X;dbQ^g`rQ^ou=vA#x3(vum(EjET8gPM*QJ-ESc4fRFLaNbUelB!o;qi>ovPiiq?E-L% zVFewvQANA}SuhJ_6##tsG0~Q+BGDI~W!|N)h@x2F2u}q>dCiKVh>aeB%NYqX<*|5} zW`p6;ON^QMKr1Gqxg?5WRY8``vXSTPC~a<&EtHoQz$m}nnejY;C1bGK4wL5`D}a@X z)FO-H+37YReXwpXCZvA%@@;g5jlM7*rC=fbtiZW+J50F~qE*DC$|LbG!^SLFWk;EJ zeDN+tnGeLHOdBe)C5G~Y+Z6BKLSfq6co=81h$|d}LBC0z$x!kftBTaT-)&_A%#Nod z+bH?oiBiJ(uid)H5@1$5EK9Ui>dT`rK*{69q>|*R1+!~!`k6A-XVgR6mmR4Q93~LzYH*VQ4zyv5SX$; zhKu%fJ5ZOsGP-`9jCP`9&RF}_{||vY*YbYiX-rgq4#rvH3bB#Wv*GuPoRepj0~_* zD*ZC3J{2qhnSO}Up{A3&;HzU9{yGg0Jo0w2PXp?cVUu1!#PyS17^5R9Y%27dX!ed` zSmjoQZ((_g_K|%9@JUh>=bSZnT9IgIufN@)_t}z-Guei-g8R@MngFnHNP3YYOuX5T` zscu*)Mf0U)ILv~#kShNldn(QeVcyy=zq}{F1RwG`)RY9qHM7I29d?-Rz%c)*fx8xr z4d5%e3^KF{L)A&JikEiQzFq>c*&Z=Pe81VLD1TQpQDEMa@oP%?$yA%_KkZ5NKcf=% zM~%HgI&>F%dxc$o?j<}ej)#{t#6iLvLC25T_BAO!zqM!RE5i7-F1skYitn@E&b!G_-^Ynxi+zF9DSd~%m zCEF=zpTk-jg3^8P!l}V-$#9ct?XR#rR&_uKi)g3QC}o^YlJV*&xN*_f!Ol=I(94q02hI{i zrzJrit9@Nr*6PP$bvSXeFBMK54JXCX6<9R84kS{lydm&d9nVAChDJ9NI`GC8^l&p_ zGq2u;GMfu6{bo23jS`rL4QcV_)Ye-5sclV!GNDq%s7M`GlXdKBgPCW;sTXz^gY6nxN z!6IGkd8e+N!2H=3L$sj^Eye2iGq)nJtu%k0$AR8&AuRAKPgy}Ut%Vm34aTm;A?saL z3o`ZwqS#iTaXDm6AG;9xV%W<_-L4{$os?s9P)WppDgVYOuTE5b!#0k@eI#g-vX^uPtIv(>tXcV6%Z^=EKpc7?D4= z=qP>K=uJ6FsZ4({Y{) z>E9eC%*GFk4lvSi_f9LJ%UJzk%eJ*Nm=(2c{tIARD~v_0bVv8s7=sSpPvA$M4@SfHKL*X32@4hJGMgf3GSjCDt+iEoej`uCd#Gc>j8(wwxVTJ>@nTf zP?T~ZC5un=!1_?)f9|Yzw?A$M1}3WWI&um$4TDse~i90BSSJ z`=%(*srEuYh%$}9rrwyK>U9twConbEpS7Xjgie}~Bzg&v6w0js({TL~tr7aR5!U*R zLE&vI2Ft*ClW=~PH->_+4k|;qCnRqYV+37MYuzC0&Jt4Efci8bFvTeNreX?~0CM{C zOaM6>P?Mu22KtAgyh+ftYC;+NrrBXeDunU~GoyDRW?2jsoMA_)?ZVsJ3QZk;PKF}7 z6-UBKTvqi5Y+e#Wxs#xUxvL_O8I-nLCN50n6Y@b1hg#qv>={VyhS} zEuNa+W#yID0*hgZKo*-oxZ4uM1rf!VAaaBCmZ_w8lng8FEfl^vIEFI*9b1M2a}bsw z_EM9>Tm5xe8a6Nv*v7!zl>z`mgGWu>IG$~-UD(NRC;>^QG>T7`W#bT>x4f@K&>f#p zw^CNg`ag7kdtt0!`?r36V+T!!WzwPbbsbdx-kRWLQ~%Tge?=*<%*1|{W#P;0 z9>bl-ar)2N%>dKsTfcck_yb-buy7m>&|6Qel@yNQXYsiaMlDEFclm?k_Vx z`8JBBC5`Ov033FER?e(aq8!IrSkJFI5`E-vqJ*eEo@6QjArx7H)}#sD{OXr+so*QN zTM2aNu&|LOSXe3=_dz{Yl+)++X+QyB6kLzl)iol~T>cbLo$XFe3U(EP)h*cS`{@1- zIGaDL&x+JTxR3iHhzpT0OI-Qg1*5Hu#)}SMD=PKF4-(Um8I9n|7!7l~odWVx0@d{i zfW<5kU`1lAA~QEzB@B+uwyIE@e`yx#DLYDgqZK(%u)=9L;pPv#e~)nXYv+d_UK2>) z)1?f~11d4DZU0rc6Y0|oJGGZSo$qkUVDEl-?ht!-{J9e_TOYu`Qgh)1?3SlauuX|n zp?4CA#^Hec2Jlx1Ei;7*p?NabNB7B{S($6C3nI&w2{CP3B4V|8y8;l4yci`0v}E*j zy0Cnj`AT>nt9zJf0xv_j1aAe{5By(&&52q{*C6w` z`Vj0u3Pg4C-v#+z!_26)wIx>OTlEA|#tY3;uyDGS{tdfuY8kpCLx3BlS4O$8<`OFa zWui4$;Y}#UFq8%^2I&zm#B+r>ds4~%Y{vWXCGhwvsb385fAykPVWW)kjE zz_C(g1DXuz+inNy_oE@5g?@em?wX6YKNc4+Kz3JwxP%=QS1qwh6)sa$SVOCihx`Mc z1P!6kn6T=s;q0i)8579LljP~?FT&E3a%>Cr9=i0TLC0JO@8J%s`IFTFl2My3!Zmzx z1{%;sDDs>4MtS;Z+e=N1S8s;4g4dMCOsq|+YvS}hR2Mi`a&KL|%U*^PQ6PJ3un%nk zch~`bN3&@n)Bi5gEDv8znOXpyv5h5Lqn$B&Uy2EjBw zHQ-H&P+1mgm>p#f*ajQy5#L>Co@o>$!r@W4`yI$2=$OQ~sr~Rwa!WW-R%kT9bdl*~ z!ko)XM8tsD0VaZ{lVe2SYOgijg-pNp3z<(Qcx_N3yu$E!J~@V$yFe$DpycbKC|g<7 zEw20QC?g%_lL^YmCMYtWY=g-R=GtS2scGo`OaYES|6|n;LQC{srr^nwf8H04i^WqV zGNaGaC=bOT%1>51M5_pU0@O=Tt=mth&2lE^n z-&=TwhkXB~xA2o+K2kdFB}eJ_-40B1kdY16!Bp|M5x3hKEai2>i3_f;>~!U~7Y%R5 z>M0Ix?5*1~t$>*dqLO@=;8wYR zSkG|ki;x2Z^MNCZaY9q5Jcho_7WVt)?0H)#STDD;sQ&Y3MnYaeg#|}RuW*m}fC}vT zjFGD%ovBC8EE)JC6XG#4K}6Jo2_h;eNo78W#e+Qv@t8KkU_Tqgm2u-$u=IgvWVp9@>y2z||rI^)dPjBN#^zO-0*?cM}u zl;;YtzxH?(vH>@ysRr(99E9ecr<#{Dor&}G-0@A2}Z+BDxPE} zsY|w_wRgp&p@+sDs!M|Qbg~${Zv6?zq4&xYGW>d^PDVgJB;ytDJ7^&e z!YpMh)0NHCRO{Roqas1=BQ12m=i7hTmcrsC*j0`fF$e{tlz?bCJQ8R-%adE@W4iV9QR16l1 zAz5N9a^xKdGcnfIorKJ-I|*5P?v*Jf2-*Nb-%n;CN%_)ABlyU)mnlqt ztUe42rZK^S3bqfOiBleo%?QHQV_GpUiQ-Awqy3k8CX z@Ay=15Tp^IW1>4Zm!xv$MpJPxtC7BxA#S%-9FVqxq=UK`(?1S_F^#4(3Xu*J{oIu7 zxbj|@1SuIGS02SP4Msc^W>2?8QLO1Kgy52eg6S`tbjt9tOYzF7V+D(tC5#DC^tB9* z17sFFIL{7O^F}V6T5xIjv4VyWr?O7hQx>CHBZLxYO1>B&49-+zfh*=c*oKh#B9J`+ zTEmQTUM`iL>xas3gkYEKv&yp}SvG^2AHY$J4@$I!F?tdVzU}bk8wEJ(_cpZTWWX0d%AL^qG49@;B8FcCKl`3#uJ#q zjH?n+!&5<+nk9~h5>S6b{caWtd9@SHsQ#G>S079q1V$yHBbE&)*8Co2jS{3x`HCfk z>9OY!aS*`Nagg%_1OAvdO6Z!YTu#gmFYV6%5OlvO=3AzTUKmAortBC6L3b6Fjf@h~ zGnF3_lTe^J4#8bDIQDC~r}-($yhTXK)Xyiz;9X?y8rnIsFv>^h!CM5`uQ$5;a7ymz z++-!^KzJN(ho?)>B9o{5uFxWrr}G`5MJ7+7b6rEXlj-%9O+GXJog*F^N`9tT|LW50Sc3KAwHhFTNf(9F&#w#HBe!M#$nr-;q=P>m0 zA^~64zPSe;+?TVPOofqxp?;EB^%~seJqejLA!aUak0X!m_t#0cTtAi=T+6`0q8M1& z>BvjXJrIV4KFN6XH9q;0ZR|BS)WSwy+Lr91vnw#$qT;qiGaGbF@}Mf*mTT9O_Juqf zjRrvjLp0z}yD^aeLmxyrV}uT{@^s1=p?98AhJ$dMhhI_(0&HrGq}F!Fi|kaPmWL>4 zH4pAQ1s0~LR`nsHlVgOCU)f$Cg3CZHbOb{`fOp)EL97hCM0VAY&Fmx+N|?%<<0yEN zp_2#L5HNT7WRq<3YJf6dg+0j@&H5W%# zT}KM`r?uG4RiH1&39Wej1@tEf!|M}K)_ABlxTorq#6p$8ikSRAt<0h9^-^^2cwwSn zTTvGSLmCi-4J|kJ9*r_As$QR2={R2Wp*CW)PBAx$EX#Fx5|<<@r$@YXzzN zCd}4hq-#M;emE>VYa+JPgHeo)7v3;{5k80~5aUz1is9Zn2qUO->SM5-YH&RME3gx6 zVuCCu816PY*UKj0$vgG#`gn*&GBn=l7vssn$)b4O$>uWA^%Yl80~_qoit$22)bCc9 z%GIVtDG`lhd8Xq!`meY=ySZMTQM*m4O9kgU8PGBsad|dkIrM_aK2Y@it-=_;GTv&W z*am$tBqjj@`~oI~AVy3bb0};NCQQxI7D}hv`WcEeZGf{IQGRdph5ZA=Y}fC=W9 z8fve=E-HpP6qVlw9QErHbA;e^$o&)GVd~8C38gFg9XMud11uA0>2*00L>-QDy2VjO zw@ec9{cvNJr6LH5hhbPeHXn1QuKkp@_3fv}rU#>VsI~BH4xsBgq0$=HIR*Q%3uZ2@ za4PO})M~OYCR2?~^F@hZArzPf30(pqDq>o5URvUm_VopaW}_=b)MacoMyDqW>oVoo z#9rN!4Ivlz_rQm?8^p1Ue^Hf+hZV7|AC=7`Ln{NR!BC(eVl4&1=zqmpip}(Z7)mSF z;bSy#oW-KyduAT<0;OS`P9CL+En)C^R5(S*$TX6o$?B+42x{bi2SUNx3Cl^;TC`yb z1l#p4=ri))i<(Zw9jrg1G`3s$4pk3yq}_i&X@l^2%uSWEX#7+GU#nd@RTvEI`M#+_ zk8HWsK2}^{<(lO~Hd->Q$*TS>o)(9?77ODrsbb+F$#}lBVd+#hY@ zY(mzOv|Z{oP@4~y*_rL$!77eDNS`K1jV$uMSJ2LB0^B0=JvuQ>Xv-Vlpx>tn83UDf z60PZQs(4LDIbM1BEBFnp>4+((t%v>`RS4a7htR^$ZHvmgA?7kF1CtXWVlA@n7{0)& z-|hSS2|=|g5v6iG2l+E(4+IWkVsOvl{u@+0Xw|>o=GW7H=Pa^FgIcjN5iNz$s@vu$ ztI>sj;izgtM4m`iYETW=B_d*EP=WADjhH~j3RtN@P=+2w*)mYJSZ}qX)W=|@237v~ zZi!$zV-~5h!?>le^S>49J3|n8c`~flxW-L;+hftJ8IZloCG^+~p^P^+Az`MF%4@Ho zeluYR#-TAYg>(^WsNmj;KqIwD9*xPFbHb0$6#6?RnzOB@0?)0;5M6M8A%+^^&M!=! zH^LdI;SQQ{D+A85r^lnekjc{jSSLN4JaQLwDd3Dc%elA5oF$p!Aa=u)Bs{cH(3;by z;_$&bMZ!}H0p`$`lv5Bk+QuZ4Z=x7QwMhmV;54G&qgbqVTB^t+jumv@MM2zc@r;sj zl!GyfKm{6Oqz{9@7ZFdN5Ra-E_pu{NYzQB8Gh+x&eu6RKdfE}?Hbl@5 zqnjASOlioNnB8%4*F_6x(;fPWF@(`--*&2r(FG%_#6OtB!Qw8wRgkr8hMg(&O)UzL z|9Z2BcCtK*c1tlS(*|)}h(RD@gl*gF?8YV@Zlp$Ql4vbUI)_j*@yKE~5<6!qbCHzX7tp+p8$~ zx4%cHPK4QG!p3x0xMAlIRB*6X2--qS1yq9`0v_*FwF1F_0y*0!T9I=9!`+PMF$KK0 z-)K-@D;VCw>Q@YPUA8k zZdr;icq#pa($~*hNVEM(W>@u`^{%!(EIy@joVDI@sSoYCZO)p#8}=MDMxGvZYV2nd z(Te+ozPuSgk^6)yUb})GoGaY!SLYsPb~6uSXUC^RH*$!fBvlOF087%7qW++~Q@reM zH)HexT^&Srrh|$ur#+<}UbU;e4~9!{N$*ATrmdyprf_2z7pc|+V_0BC^ih9?Z4^|qy>?i&!;UhlFzWha4$CsTsc?92dQD6n7ulO0<)yxkmo8;B zu}rtK4ue1IFsO_Q^et+1KSV-|FX42*tDJpGJ2m9+Tp_nG=S27c9Kr4M2V6Emo;HTy zvI+XM7%rQbj=#EJE@DsB=Ti35uhoAS?WbQi_AWX^gRmR#OR1sn&NnM!Pu2gV9H(Ea z^CuM@r=LTgrJSHo`A3S_Q>VL9PSJPMe=cHA?p-+sBYoq1_T(Ok8b2Vk%rd=|p)~my z4^;$}lS$9y(oRX9wA6K;;$`j(INiUS7jEYxQ+2b@=m&%@JY0pYJs>n21g@L!gyI2H zHnH-^mG9P>{F7i3mgrtx1e37jX?i+L!qRu>qX&fkjool3Kz~$-$;+t4gF+|28Vlsv zy6!s6NfKrdfVVL#BRdX_4PmmokdV=WWO7j<5^s!6Ea6|(2GJOY| z-1NhSNk?8_*N_SHgDplFty6H7uJ)k0nI(r6{J-B#h5{h7`ana(9xCv)z#%-hXC3}#i6ShNx* z8lL^NMAPQPW`A$Civ6M}J~}ps-l)#tz8pJS?QXcAfC!+~n~253-9jsaU?P@e5J@ZF z31{cfr$?g9qILu;TBrsV%7=9{?&!;4#si69h0HQOj|IahwHVIMA!EH2 zW_b94VI-Osg>g5*z>Kiv)Os*LWmzcEE~0(|y7Y)pG7at;OrRF-hJ{+zQ)@5;8mNM! z5}|4ss;+$MpyBA<1wuP?ZoV+WFAs;t1vo;ZPiIXb2chYLX%BY`&6+&?m#l$Tb*Ag^*Jd3jx!{XzfBFU(umYN`=tfb|G*G*DZi8VAy97Q(Dmw zB$+OwInWt(f%2Vcc8rR&ofTZj^D4X(GZ_TJF@>lqninrdXpSoVLJ+2z69H=*Kt0hk z9%v?|!xaAA%*|lIVLg|@S)ub3>%%AfGAk$!umaqQ0!R7N%ejg0nm6pXNZ6#t_k&^P zu>8O#wfwiW{GhufK$EBdHgpX`!|DSYTKU6TeQDInNPcDZ2mHLl~FfzmvF{W;fpqzwLRS0VZFX1P? zm(|#w?GzQsunTW~{P$>>QKuP>dujw{H2x}FJogtgvlMSj_!_@t;}TpYxq=-r3Apl( zz_<@#y#jqQqvBdsG^nUDaq(n+%v1Ca@U0TxSykYvDAHye9V7jiAr7@ios8Rmqzrbl zZ(&lOu%zY^Xj>Pl?p;&1p5c^_EnGQh%M>_ny{n4Sx`Wmo^$o7?T2t1O$*KK^C7pe!EH*eESgSz7X2E8-QN1k|HT7ebXS*$ z@+8BqPt2nbmVUS!#ds)B&`Q#tJ^D*gJ75En(`>NUGbmoh5p!K-`P;Au(G{6_Aa$>` zo0y6q@3XD32;n~X`KhpWf;@G)8CF}6r_cmgZ9%`5z-kNnZaS>Cpy{Nd12fsanh)O$Wo`y1Wk8n-;*K zXj2Q`-Zi^+*Y~g%EnNMm(89r+bCCI%&^l8eQC}LmcR$n@>;Xr7*fi*mGM2+uV=gy} zu{;iJs6y9@U~uym)mrcI_rx*V*!mhJinGaGg4-D2Ro7Z_w;c>64~(KHw>BXsu&ZV4 zT>b6rj0_|{4hIfu{V^!oWI|?;CNmqFOkzT_13zKN4VSmDZ0s9lVHE@5P{jlz&1O^~ z*cjg^D|z0#6v_39B5f)q`*9lsI?=qe{7G+fa2ed`$(X8{iJ)0bt-46A^_pd`Fr3*X z4(Bl_2AhR(^jj>o=4*hZgGsA&ih~kM;$4~bGr$zqEQ8G<#9BsL9L{6fSh^-Z6b9$o zZ5{rRx%4^o_6ou8Q*xeDx{*>tZaG+Ll^Uf*961mJmw-ZO@v3`Up1?ASM+?h^JN#VJ z#29k#W*kQUgLX*y3DNT-sTvLI(|~pspTqzZ>RMdA{N^qyf$9Pj+sA0jW0S$^x-EBU z&C+IJOY|r^>bTTzEgT*$N4-k>>F)_}yg3n5{kJ|2_A%91IUxhF$Q~oN7iP{fmH{L83>RvayjYE`=8S9QlF)*COgHJ%z%_?m_>hPp6*KZt4 z%m;51tL|EtkGd1P2tF+`dKCe&y>_HN4Var}6zcMo-+3M?)qj6}XwJwZrJeIoi&Ze} z)ZdR1uw^=)8msOMCdK3PsDYF>@ToaB;?-G%xw$KfwJBZ5uyq|xd-ZkZpW1siluXAp zPmwG9s4U3fxRxm^^P6?82gwy-`2CYq%}_bLiXE z!YJJJtLKI=Edmks>W;tx_rzk_KMBETLS0#(2!&(n7)4#zs?f~xZ471B?e;;})Oii) zjpOMUM!J1bX4-Oe90_;gXkk48i7(>iZ0!McOH3)Qj7-myv%Bogul!^j4Nnb4Kmi^la(7zhG4`P1hber}U`; zx}@akJc4d2dCKn#om2XCD0EKAQ|M;soYJRaSo(_^dVz8NQ#pim074wo*C6Q`LC)kJ zO00_75z@B-Rd6?xsiNPGramKNHiFv)g296oOFY-1XPyz1BKLL0!E;>8;e(yi{>2^1 zp40J&0lID1b#xauI?FwE!*2Jqf3v}45F%C=Yx{>T*4iAvUCZosEpqT;yh_N=r0d%2 zo?(NN8Xg#?YzRPi5}y~k8ufctsA{e)s|;-jwD;{S6P-ygZo=On)OzJvA=$x0zp?4_ zuuzCMZx0W6LAcZ5fD0L36dF2sm~*Yt1qr{{_mc2AEb?y}Ub9v>-hel1!Vhi~(i`${ zTAW@b>`B6F8gAbv?C15f;mqyAR!0GMsCUD@j`XJw2Ap{p)9>P2}iZu#}^>0EIDWxgkT4J)9$ zJA^j8@&L-(0gEn_`_SkeLI$tiix%z>CN~4aW}n3-&ilc7+V_3<(hgxO-_;n{K@nX> z)*`sh3@KQ8Jx2`Ww!g@|G*k>ErC#LP52Yehqoan@O8GrtDky+*HFx>&Q~Bb*WslJZ|1 zwm)ZoF^~9cjBr=Kijh#bUk^{*C!{%=;J3lhxg*tmp{-hufaBK-Y;P`13$|9bIHXasMNYghLeT0kGVy*vRO3S?k6&!(e zINGh@nj^xcB;J56xgQCOJ+Kld|CDeuZ!Qc!b4nP%i}I~X(WpRLMhExpCm7N2`P0I@ zBwiQLq%+{2u)Htl8=>3JJ_)_>6BtTHM}HDTczyOKp|k;SPD6KI5^m?U zYf#N4;WV!`30M73m;oPJhg<(9tOJ*M4jF&qZK~l<{}d*;c(rf1mqYxA2TDDY#6U~# z?*{2jnp8M%Y_i3@j~fJ+bPWsY|@g!QT-Kf9)1qI(Xv>y5bRE2Kf4h zVoyxAq1X`0H2SKM_%v^nhv#1{`JKDuz<1y$$OYwXfsF4kSSR@CE#1Xe zpmHA-p43B3fofj~&(9Jc=i$p$y~Q>S_`NmZF8#z|_{Dww#p@ls^1txbYsD9MUO9k9 z=ZG1+9zhFpL^u_HH#(LhX2F$V;iQ4$3?~mO%I+B=uEFl+%@tcUF@|?p3P)oZSZ@wx z=Zf9o%d}kac_?xX^2BYt{sVd^PrL`(5!A&ej^>A&Nb`YzDyNa|6APgn{p=HWgD7ar zaPcJ`4k;O10I!=H%X_=J3~uCFl-Jw&Bu5!&kD>Q&5Yw9~N4hNC&zNe5QSA-lLf(jk zOGb#JpuC{>Zxp-o+Due?qu7gw<7_*O6q`5TOZ$X#ZWe1D-SR&lKh*mH)W4s%(oYO+ zSpDSCm)vKb+wjkT0JIa>-Q4+~A0PVC9+=(y9F4z4EO0bHYj1%fD2E-R#m-OwFNeF0 z5vTIJ_8}@CCywCtgXr`)&`IAP{%4$+$@}w#v~(wzLT)rz4x5@9L1WhGZ|K~Rr}O{P zFEi(fPUr8?*pavHzpU>eDdoV)Fnv2+wBAl{oN^#<7kyjZ(0c3ckaA$=E<&kxvG&lM z)Z=i~Tlm$9Vnb)L{DjNdds?0YRS~Z&5AU4}^#SD1*(u_!yxIW`nF{`BNGPXRJe8rl z;8b#*q%45B^NgQc76dEYT!S@%jH}jO^>a)5O-l+Zw~M3;F=m=L&yj4j6O)>8sSIki zMW5Xv4oTKqvjRZ~8m&;b>EbhxHPzF_o3V4Xo*^zF_t4D%H&ova|1?7^0$Ol3r;XM* zH1SSM>+1?AT$30F<16&qo#2_;Q`_$n7heM|TpARwP2$~c!#kIWqg?QSgeM^5;f3!B zu}>4;P|^GsAXl{8!mqs`_HjZ!ezjI?=SWe1PixlRQT$h~qqplB1-lwBQLzQIUs1|> zaTy4_alP1%H@-*v*Na`+?&|=-gY#ji?%Mb&0(l*0*M4~p|AKWPfqfmr$s5GY;D6!w zH;T7F+Y=18d`)c1^Tsrku}K^&_$H1v!frPgZr(B{;D#>acvQYgl+t~-K-X~0=o3XX zgQsV2Xfy5;SDd?-jS^yXLg}FptPT8AsD9Q)k64`^kbwG1H z<72%g8Uc-s=$|*lw*LGget3p)JL9!`M;NpRUQ;aHB4w6t!7{9yC#svT%%(R4SVzbQrbW7Pq+o%A(Z$JPSR@Su|E9>R( zFQV)dsOe_0d0STi7%gRt;9D%az=+F{@TQpRclWjE&U+VUD~xZ|ETHS*vT+8vU@Y-X zp&^~h2A9}99lyib;dBQe%Y)y5VNbW*o3g(U8}~%ZnwG~?PFQKOAtNo0Ko!ykzlKKH zEIMAefApd8HAFqMpV*@wZ{8fK!8uB{%&R$cObeZtSx8&sbW|d6T+MFcjtb2eu|;A}avC z-|Dyy=7wI}Bszz{bWkY&fBzxGWxEh>T(pF^`XUjc1rg%u@P*A{D$m2V-KN{1anLWK z$G3?idG!K1y$wFN{zd$D@h*2}%N((3)7Qdtw~Kc|E7%m7VbRAM4Z|64iQOFhna$y` zZ$nev(l{%k%MRzF3aNmbuspB`72;Y#{RS<3M_eh&pVP0gFC0pHSGL%Y&85$cHWUwUDDnkg|=GQGr2w=`XD~T)s#A z(&6t28athv7i$OdiyK^a6@RlaX?K1xf0^HxU)=1nE1Q0QW3jeAzu0k^r@sSL&@z%Q z0roMq#^bdFVNF3~JbX{ryWnrsx;n^p|VQv_$%k<~2FU6;LCj>e32BD&_#htv-9HpEQ zS2-1UH3V%xBldOX!m!_mYR`zBocZurfKt8@zjQ(zDll^OS@C&iAtW7z)|?f0xS>KV z-ROQF-EmIr82z#G9JD~{DYWOD807Vj!UgBWV|;UUL+YwD&dH?*j|3p6i9G6h)a!yc zpI4qoRTsnp-gpXKxgcghtJU#)aT^Su9uA-SLHxQAuN(>+zlrmqqqh|e`a}E#8un&? ziofwX3OD@=da1lJH=O&ocrWf-h5r@L@YHWB3bgDh>DCE-N?*zE6CNk#G*}nvQ@XC2KEL7aTlz+RU-EuasBh_} zYWlp^-LG_Qen0a5ueq$)RbYpck8q`>tHX#ehXEE|wK%PFo z;qD3KdouDpfjoU)>+S{Qdol98fINNP;O-6Ndo%LAfqZXtrLi=Y!~>d0qj=-Z@XJl4 zryWh85xVpE#J!W2iz|Zfheuv5ZEeH{zYiz1mIgo{`AMW)BhBLVN}`y8~AT-LwDf+>YHd2`TZLDmHd7g4QeY5Z3RwA-|9>lo$3o87Expm5-Qd+A zSU5ks^wmf<95x-y;6@!9djxix9((xs!cXo!asOwnPqjtMWohhPS-_W?{FM-7#s9zg z8Q)kIY;^YqzF_+N-oUqaM>r&@>i0Qe+(dPs1HFwO(a82vYd-Y-#yi_fjrh<{XjWG# zhhMuKRd$tTK!-`}COz7KS4P4fW@%QV;-M|hbc2P$?>~;3XG!Dv(!r=COIi(i;O;3^ z^FzC$nx0aMw6^nLFNB4l*M^VS{sjuQlCiy)l;w~EKV7Vye54z6O56J`*6unCcVs|3 z<7OXCrHQDpw{#C*+87zV3E6RdFxg*`+*g9}2%6JZI?M+yA*G+xme;;UYCr53pQ9uF zq~`GXY(MEk!8|0ol%z#@GrW|j`2mV#OKWpdpV(R5}H~H66bG3SV8}j6u>QSJOv-6_+e?Rk)Wm7ehC(VFZJfl<7hy>GzqTw3O|!C?Qu0%r)H18YDk4= z5m#~lFIOK7qz6P##*^WDM@l^OrqR4xq^J3z?r`#GDap}A{w;Yt9JMxJly;~38Gn=6J^bn@c9&D=1R}= z${*;LxzYe$xs0;rN!@t;5}Gs*^4f$j!aVR6{X8sIhjNL-3HM6|ubmA4aKE$(Mp>KC za}P-q!5qImB<*Pkhw@+>n9qgxJS+{t;R@$`DAwkK==gjooqvBJx-wrH1gWoEAmNb3 z%mq>>`1iyDsa>+(wrJSpXN&fu@@{y=Zd+t5kf4*+8vVXNO5xR3sQE&vOS0aqPO4_% z!iCan4S>eqi=-{Q*#>Q14Du@}$XqOa=jekDmP#od_Etd0Bs=>rAtyyS0#WTpuif&% zAKZq(*uWDXB8^Dg88s@C@|q05FX=0z11c($DtYa9oL1_VO?v!#^g?!ei0d%caQlxM^FiIqEEvqNc!AyRSpzR@&?*I{%P>hK^4w}IpN%= zrFIP(E@X)phi5$}E%G${7Nl@97^fv9vYe z`{@_868*DX>cblwP@k|Q^X57c|l$$W$`tE-+Hv#&8 z@vW~k6?*G?(xP~2n7#!&q`~o@n4tO&X>z?!PZKLhJEd3SKiLiV%g+DQ0Sq|r|AHRe z^`B5szcorWq+9OsVDB1uKRDOgm&(hrp14cK~vGhJ^z{Cz?$G) zXw9DgOLQ6adjCIFCvNxP`~NrIv-khTkK8NGj8}r3KePfJ+AF0(g>`YSH0YW*$BrCJ zEoC>vu0X@~N$tIH349-;hxgTYun68~zXBykq+URIXhd2P&)ao^q%b4WR;a^PRZFw} zBSrK5(9WB?(H;AtTW}UVx?f7aHcp7hd$jm1ev(#Hbd7EHzN?17!I!>^$;!3#8OG@s z_DkL4OHpuF6TJLq14{jpK-a8=Ol_*(O-DJZKN}c@) zsFl=7=FH=tbm%aLuJ#;Xy0PpF=Z~vCfVx_0vlj+X%@(6@0t#9J3ahFK%Alyyjf00{ zq+qXG@nOZFCI5kRUAze*)vN*={eg62{72V8_VKL`q-pUVeTUe`s-xiQ!wyLqytxS7 zdq~Qz=PF0gJBRAKN^mogs_?Khgg0iRCl4p6UG|V9qmSUOs*1{vNGIc+CGtK=a_@&y zPZ{*KtL=)+*#UFbjiEb{g}WgzBlMx4E6*lypq$9{(B+m>F_R>JaNQ*vAo{KnF+v3f=PwbnVp7(XmgY$C`5=EgjeSsMq%y zjB|%SLJh1OMRPxurd)Lj0(`{c+CgM~N^IvmAzgp9`fz2y;dA7nLh7rxoRGf6vzL8N zO2eR{TyRplfj5iL!IRQk8H(P@*UcjaDmg~`#cGyqKp|5)!y7%rv%Zo_9DF1Ro&H+7 zyW<&(Q?l$`{Pxis0lnzUk}V$ zW>@3)8?XF7w%$B2=Hq=F-+d*!E0IL5nO71KE1SzAB1i~gMRqrdqoM9bEpb)V)lyZ* zlI%t(Lhz_MwvL3nRaNmq9ZO~7zFMm4SR$?>L7a8`o_W1?RezuFAIWQWj%S{E=9y=n zdFGiJjQ5wqv7<15Wbz*@e#BC&0Pp*fN>t26ltP$NE*g+@BJpkSmKm3;Wr?{ky((DC zIclJ+3hhI;;P0y77Wip!GdR{~L>F9UAY3%bO@i#3!3i@|6Q`C7u`+Z~08j#%HcKO^Oy*glEM$1my~ksK)$$F047s?8!N8}<Mu3Fv_As%XNYPd*$LBvx-jc@uwh2*r8wRqbK(o#4nBrJe{NL;_$8LI7a`Fl1vlB7$L3 zg|Qb9L08y#9T9Ye3$9`vVJ`m2$2u^~c+cpK2)g2LeT48`VdGAOA1>vO?S$~dg%5bv zRTZbPf^ezJN1VY5!UY^s7~c>paD_*xv4U{nONLzOYODYOiHz=r6@m!T^7cxGWH$pHnc%@&#$-Af-j0lHEchPow3mW|$%!d^mM!X`W>=nL$7>i_gKC`eHf*X1ZjZq3)CBkCVmAtD4}*80d3qbX zd=wnc^n=H&_#4Q2jCEu5=*MW}Ghn5Ug9ms!w8Zd(zS_U216+9(Od+xsEq=yhFufMH z2X4WwT5*O@Jqa%7jB+^n1gA9Ynz*NE|HJzp?mi9vf-4;Wre}zm<1K7>hFzwV!|`Wm zI#P0Q`x)*A83%*zdGJ&YCEvd1*gn-TP`^NHo{jCD1?M1!-@QQ0N8E+l7r_qsE#a4! z!F%Og=`@(~3Qgg*-f;0%@OV|JD3#67^L215Hfg;^?bA6rue9*;V0~Vxk)H*v4+N?F zJv6c^S+YCxh1ZCX^#Qzk9lSJBwIk<%#xq*J)>9$VDDV#*g#rwtWjz!iV**__5VpMu zZo?T*!-F>{!YiQp+u$ag>N4cKMLUo23e0+oYph$a{cZ3>&QZIhDe3F=K(>o~(3$d;3yoYDu@$;li}{{|8`l7=?G&pGlnvshJol151}4QJ{b;T}r$ zxP?QKmDoOIiN6J7@b_Tpw-Q}%+3%mSaV8RT4EF_tf_xtIPWcFMVUM0N#}y=w)1QK; z3bH!z|71Xq8YOA$xBgo7xQFAD2~LCx%Q(2ABvv+Q4ObC0r>ue5D)KRBeGIo%B#pB^ zg{F1L{}c~UJ$Wr$szcCs4jJ!(7fJWCug^8wWK4s>*1rLrH%TKpo5%T2O#W{7^(z;|EXH~$2x>$#K z-oJGqE{E!pv>4fJR>yUw=E*y`>abgj6=kweLxxNOW4Az4A2Nz_JcDIESgC9pzIXJl zQo~DD>0JxD2i81hw$dqZ#fKc`tV-D6OALNWpJDq^ZSofpQo}1>vWHU!z-~WskTZn9 z^m?QzXYU4^>XD6J{fi3@<)c4IHGJ$(TF8HeB7f2bb;l$A*k=0!xaUuXa8@~F2M}~a zg%JUyIp+v~WdWon%+^r&k{Jt)KZP2+EyapfG6^43gs>)%>_&_ITKJfdEY7qV$_TQL z8txMk?IZiZ_l_`}(cKUZ5tJxBy+hIB5b1+v^flrkxoqZth4Nj_)u zhr2vd7u~gULJ0F_To^){aCkCzUkJIXsKI{Jz?x7J&4Pw7I39{D;T#ALLP>aF6|R~C zQj>{Kn%uAvb-(o=LUtCGzs=a5pQl-Pk0bTy8?|Sb49EgK}j@8VEfS* zqRCOteg)RWkm*=hh>As)!QL1cN4ERx1Yr`}30SDd)sEHi93mT&Hk^4X9PltIQgRy@<*YUb65I!_q0^&Mz}^%ak2^;%o01g7uyr%imovPD`OQ!` zDHU+G8A;`o-Vhj1Cd;?<#O`lPnYdpV5z<~W+m|c0sv5$*1mrSRBS>w5U!w+!@Qa;wtp!=a zIecMqB6cPoE=zAoz7h#v9}c!8A1B*{VI{eKb-5s)Zn9$454g>O&O#F5x0lV!4O9ew zZ_NF+)-xI9G_Iu9N@+6a+lpvDvOaS4+Ud93XX!%?xU3V4nh*C7@+w|&g%!oh?0S_e z{&*^MkQSjQ)?&Y&W?f}|?RA7LRp0%7)#yc#<%FvOHJocjVnfs~xNa66ONAhS6~8njO(8Jr^>tf?e2P-%R) zAK4B)1i{W)Vj2j$Q&Geiq9Cv%NeHoO3k8WCZJxM#7I_7kz9|goNG5a2=J0z*lFKkr zwu1IL99#Mout!JMWK~sG>kecj8^jqlzEJP0M|Nu<{f_B5Q~DjA+>52J``RM@ZiIIh ztovF@8|*FR9exltbi!F)`58DmA)Tyk;C3gX<*dmNoJRUFxAHM*WS&Tjw56R<3Oe-A zzBB10#-zZk&QhYa6$GavHz`}g@N`rY3`wv%oh)Fv96IQ(M?ocnTY7R*jA;+M4HAW| zElVdDiCkU&P@n>O~rfQRo%ci+rhOU^^-hJ%t&i)0T!? zH zF;^$yY+n+I%}j@<{m5v}ycLG_$B7JIWxUj%;03}P;8lNQCf)ZibpVOs%pX9_JTD5n z2aqOpFL|M(g*fWIg_;4xfFw`;i0DIXMWKgty}e|S%ndU3k1gqj?3*MoBmfJ-LQFcdo?^7p|8Z9aC!`Z$^LJlMpt$pY@BjgTugAd~Q5 z9zwKX%FqDA_xc0tJdUZ73XQpoUbuv>H4F|7!Fk{jW~~pkLr6@BvcWJR_dBCJ8O`lX zLZd;X7Lka6#9R`UWNpX*A!%(L56?`ublofDf|pE^Ud4=|6I7>`%|xZ+#vq+*?V9rFco=X z+fXE{Ap?+hOdgKv zm@*zphGS=;8?|FNQHLm#TmsbAalsPfi~Ukllqv9LII76XREQgalcP1w-R#wta^qT` z+OQ+rrJRmTSTO<{XUzip2olB_y1}IpsC76#0H2Y_$%fvLHj;Fcw}qmS2=GV=>>f!z zPO?TafS33A8Y??Jt9_4N&#|Gg8@J9gRvt}$@o#*^6Qool=>7?^si7Ba_=H%IgPM;b z^8!pO)>yo8YhK1l{f~Rkqew#z5qmI-bPrUkb99lGSy1L00;Y!0{Zk~PvM)^f6cIEp zgH4|zA#8JlylXjT`YTp=aX9Zv%rpmXd`bpz=6ukNCg)V*lH%ZMvK7Nr;pAA--Gj3>5h6Y(P8?4k zFP%u@BCK5$hClITImW{_b4UiG?@XhIu^PtBcH^OC@CR+eGp+Z+12~l05NP$56u>TpK99 zg(6m^8dgpsJho!{B+?|od2#&ZfAb7;NyZK<82x zeZ_)mg&6Hz0@|;MiL)<&Z@wmMJ4N`K4C1UKA!I7Kjl`2rBTcAnVo;q!nNrC#^p9Zx z@lL$7X(Ta7Jzk0znxnUspdeG<&Kkagj@D)(hN$;d~ddaFnC_z&3L$vCTSQi6(usaugOF}s1c+k$pMUY_{jGK!h(Gd^J=aP(Q z*&GkYI^2m^Cks*xl}TJ9D`abnP(!4Pi_pFF8!``TMjJ{OKSu(=6=t>h#~<0w1Dk9k zz-J!u%>Ulv5#l9vOmc`tv;UCx_b9{P`p)!TC{Mbf#afSsH`5FOw|RI8Nl# z0W6KxxKIINjIKY_&L=H2;^0>Oumd~_RI+{-@*IciZ#1?r=HB^3CY>u*{QwyYP)o&S z#i9kIza%RSW_Yv!*JHYL&=sNfAcNc@>^D=Yu%?K#7DXs_@+P>l5b<@!Lf|4Ki8%(^ zFCvRWob^#q;O&hvPu#4scySU!<}kRu2wBt2Lr5_>&6&L6ZZS~@n*+7@LKzb(b^N8A zHl+};7`w>JB`B47!uh2{$-3?`kYwxvfi5E|xl63ihp2B!9xuvx>w=a0v+$fasx2ZF zY@1-;x2UY)m@`a=kmV%O-`=|{KU!Lcu?6UK$XZVH?y3w$uxvSU1!g|FoMeTmA*U;I zO4ZbVA(I=)*ornDjlKe^bFS_Nxx;ls*^O#|xgbG;au7gTLxR z3j6rLfHefqrNeag%NJI$k00z~pL%eGef;5#^odxDzXBk2EkX$d6Mkj{qF45AT!uTC zTU>FSRvqLSGmUa%F|t(yLls(cEJ1kV@y<$KambaUqatIMQDL-TkKVy_MKGrC!1RMs zdU{8B#!m==rQc`eS^73iw@c~0Fx}!xf2fZ_PdtJdwqk~TQih=&y)qWMDtN*wpb)hV zTSy^e9iq>}$aRQ*2+U!hP}n4WPO?uJ)Zj-`AKUbOrN3gc1Ta`8)yR0TSdq;kNVFrZ zC!OWtFnK)|YXHmFlg9Wt#6A)5fJHV0{}S<&Sb~+Sp%42sf+;LA5l(B8+T#Y&v2GGFEFUYw!TBTH-9S3kofOi(tRRa`J$N0(M$(^R z1WuQ08VeqMqPRN!+}yc-BT0-F)0B&jY=1w^w(*RRXY_Qf6dc9yY9sl@3#H&374ES9 zB-qPHguI@4PNLzc1+8Z;ZomIO(poFCGM_`->zV3N0pWR$f^ZMVm*E2Qw6q*b!sW_a zDZ6<+blpU{HnC0jSSJn}&pDPLO2?z7q8aZd9R^%BwRT#P|CkxfL?#QxR41&Tdu zIlKu$O8zR;RlpsCXGDG=Z`^~|x(q@#lV-{7(5PHEGs{&dSNQr^$Dq1heh%`~dHh^3 zhx1t1<(JgOtns;)z8*}??8Ah^a$)Lba*;Xa_T54ThuYfD)&+TP!#h)P16@&5FA^`$ zkcRx3EyU5bnYeR*r@Ceaz82_v?O$(A29KGvl`Gl8MeUDMb@tn9Y;uld{bh#JKN0k` z7M}csjKJBCL&(pl$(Yfz^JkKUOZs1aCJ#B=W?}O-(nGGYilS;JD0h&>oE=$l2igm4 zf5L+uq?JN zux$@csLnKavj-lkO!gIeQG; z+ly+3X&5B#BZDQ8ZY_l6`$#miVMH5JEy#)6K_^c8AHmsuXd<+s1!+H8_MK#&-VN9p z48!*mjjIurE@I7xW&4>0tSju^Pnt9qDQUUkYT<%+CJ5c2H*#Bme)Aj&Ns|Zo*~tQT z3$3M4Vn@TJ-4mR4B(HVD&yB_Z+%*;~BBL}jj{sb4G0>Ac1=!17R)^Q(*2Kf|^|B!|P}mx1MI znzGeGYB~8sf?(YU;SMrT`l0+Em>r~()c*AfSA|7z+JPKpTLO0-WT#qoGOtwr!Pc(b zEqQ+wbkr<^}()ASqKS7h{<35V^Dh2tE$ir zd&MnPa$R6Qfw-e2!&g15SaAeZOKGrAJ4%Lec$(zKQKI8a{UPQUiT6?WK?Oj}pz95$ zW2CQp^c0PB(Qh^!K1SlgY#ro=Yx)dXweEvs+I&TodrfOt2j0gS&*wwRanh%SS|>Mt zZ)ku^R$PmTfMtn!6```d->o&jkV!GNW})S7(W!<5$59K?C4%|{ndz2)%Jooog7nks zMwS({#A){=8$BX4n}&t4M`p9Oxnp%Lq3KDI;wy``yd$m*K0ir5jnvi0A*z&lG%!41 zhae=Be8*UpxY}*6xAYWB1^Y{gJ4G5uUGe0Nt1F72*C{f`SNG=Rzs-TaPqFTN3T;l4 zCN5^vxrnt8CY&bLC|j*|u^cxY78Ge0M_NU)CA@uG<{}%Dp2|%SeulJj^?Zh_x6jG*MDvKfhH==QKPYs?cQzfFZy%>i4Mq1QEIffPP zfCN#7`N5jsNOFW2ssGh7RElA6qA8LOa24MCXQQ_m<#U7eU7FXiUc4ir)!d z*YtepIb1|LnhD|ONDR(FOCbF`8Ru)8*NBOBSK|+yC#N{485aFPPW#y>v^el?Obv%| z7szOw!Y*GR>*d_~RLH+bHu%|=2sm3EE$EIN<;a7SzeuA1Y5KCdjBp7HD&P%IHL&0> zQkPr59#;H?o3rNGQ0EfkrA$b;L_#79PVa^loo5vUwLT=03&%e*8X<_Ipdb=^AIY-06%ecjfbh%9QoHGtmuaGFV z0>dwbDOX4^TRIe7At51nKfBID-&*#scNc?TSA+cu+1k`F8Fg1Q>QyI?-gM(LbJ!AU^0-em%(G3PTaS}4%zLb+_2%d#2 z&Ofxa&`?Qn|7NM!w61X0N%9fhzSmIumBE+SNON34lwKnrg_l1LP|N~c^I!H@@3~c| z@=3#!wtlGPTB09A#C4o!96IQCoh;{$wujp5L>r;|W#Il|t9ODgDk3sZR7BJrkG<=%}q$p8m<5yoz1kQkpos_k>YZ*h@aWVRjXXiZNAd(FTsSOYk1}R&`(Qkul1L zl~_}t(6cgVv^-md8i92ngx_RK;7aIvlc>{e*R~oxGIrHr^k-sVZhzL6hD%4*k)WBb zX|1E{yo2rZy~c7&xU7+!DnEiPH`#J=5Cq>MeZq9VB^vd2A`8~e^7YZ=HS=AYH_i7b z3cM3TApaKDY#0XHZsE4C{RrH57cb>76zy=$VOmN38*kjpVTpQ*8qy~=PLlc&AAEe(S zxedf@)&uTrr?xIMzSu4mb{vL7_i*GnPQkrlL6@x4lP5rYhs5;N_z2kuzg*2iKLXhei=Ot0Wzv0aWuJ+^NX8uDrj~f05J07Ba z+#C!3kH|1d<1;LSsgKCqSGe>_VsLyAoj z8Ri#IK1bIiD_-LB9CcEg3C=$!3Cdfmimk(I!RG}ki-u9q<^`*5G>m+Kc?@G=(F^ib z1lG2>fURu|g#iYIK7J00L;vRJ{KmRj4UJ!-7l|zc`n)8~Ty6OV=HL%sEcm_Nqhf?7 z7M%}=Ub5Z2R7m}Y3}?HFCI66FNmb{VbgOpOdni0%z9l&EbF;1!WU$AppZzvk;AM96MblQhe+1H4v--7uS8CVa0#uTL5d(OsTZB>@Qy;r1( zivqhK;x%KW@i6%{Ztxk#LCtI2fisK;!y8nY9qnM<8=NEz9pLC2@(tTI?e`Y7TfBPA z`WBTyWfdHLOHvcf8KDO%mw3JMFurKL-k2NuO!g`pwF0add-PUsAKyC3CEI8e=XkK>BAtaJZJ?a~>gSBf^;QH*#gvyJo}&qVGR>mC z@;fe27hp6;BmHFRMSTOxUHSfk6&QyHNx{xh+QwWz^iHVZB#NXg4rHu{OktHO#a&nK zODj=XY3jAI;=g%pJotG~R7~+qf(K3Tkp;eke+8y^P<4{7UI4;9i*Va{NpRJEz6V@T zulC+MtM9j`9vMRo=$U0Px@tDph0`7sca6N@fd^d_=9K4#DTYrlUdMd9F<*rXlIblh z_r!c?P~YiE(I@2#xadh!)VAliYw~fTF>mP{`Ne`U)-{$P_yX8|3ls6k{S%>;f~rl* zFM~!HWtzNOo;`%zhUYy03)}uMH$c(v{}1ETTM348Dw|wTa>!P%!~5H}F6$ihrApWK zH^#J54m4OEUnyhfCfrhpEFfKijv}X%tIKbr1o&f z>t_4pN73@#QX-f0_hx^($W;qnRWu~rcDB*whx@;+@G!>W+9+05>HVx$%Hg;NW)+PL zb3A>x9Ss)BJACo8XZ3PT&p0XF@Dlc@DC%-E;DU;d<7~e|RvmgeMkmNm^z);A zaQ67ok2dF&8gTki180qaxO&*dwyTg;kEU?Wzrf1AcqP}tdTc;^0=Mf?+{kPT{{A#E zLh15_s;-&-0-r~d2N*T^x7;r&TVnH!H|~2Fe{$2X2|V)0frGnmGywYzEiXZ9m#ud~+MrqGyooHS3kNiicbf#-Rk^Kf}~5uinKzdsz=zJ*>B|5ZBPP zGAVv07l1O)8vd2A-~Xp4@BZ79 zwm$#%B5n%3A+!%?n+<&^MSqGs*hJ~Dy2z%T0@zy1x*o!L+Mcs^fB`(#tn3Jrc*-np z2YA|=>CVr296`#?Fe(Il)0z(7gow$1gwS@((I7aKYB^;l=t5~!9YYtC6*cp3vGq&> ztO%vCY)!}JMn@?+Owt;vnL5ktb!6s|PKF@Gk|zA)N4SX0{SMBC(NS#alUkpCBCTVq z*5Nv~6&Bn8JL=P=I0tkKr=Q?>5yI&QoM9x?X+Vc?Itrs3;Aq8Kuq``ac>|j3i$B~> za)yoI9l;2w18oG-Vb}?n6+v4vtTK@qlt0402x@d`P20hzA#IOM&umD)k!D519=Ozy z&Iz->bxRAi%bnbA?0y#6HfmDF*HlLER)9+Z1KXBDgLo|W}p zK8JCCp)P`?x*0>SBUO&X((%l%p?w^k&Nhkm#L-%e{;4r-%<29Imm1R*oXHGRv=kpW z{T7~TaqK#KLqrowIa4o4YC_SC^8*;ugii9e%?YhKX<_b%Ogh*EFuxs+Qu91v zOFK4O#jb=$?P(5IaRIVBh_g*;2V@s?F9=Je2ib9lE2-F{w;;14jb+{{6FMRn7Sw^w z9q9n2u^LCnaPZU7R!S9fG8+jQEL?COdn^}b>1d*|;BTbcVA##V73gDU7zB@4*mw)` z3;=B>7QTsj`oRzuE~rG9yL!2^K^qcX*5y{J3fE}7B0Ao@t;FK zci1rz%xN@6S#SmG8V{S&Xo|An62cq{_tFrzii-$yG{khqu<=hUI|@vl84kBG&p=ql z;wx@o**(^ zyp3uAq-N2z`R0%e^8&TOV^oQ66*P~1oV0i%1+v5L0X$!EaXg9dZT)9|zhj%@?p4b_vz2Os$p z{a0(o9!KSSscX0T5A>^~;qoK!ZBN=Z)O^arxXnAy=q1bbM1`@BZ`zsyX12KrfA^$c z;vmlbkTwfh|7$1t*aUO5Jb;1G7Q`Iwc?j|O9yWYPmvVXs=z7si6(%7j>!GL@O{-%V zSBTztAKZtcEdjyspcl2Y6w|FgxU39YB1&4@R&-f-%O#b5sS-R&3%r&Xa_gZxg_zfH z5=wfrdG<0K?oHFX-n_`JWvub9wvGK$TM&A}m206J;`HyP^?jsE5e1Tnr~_HM*qyrS z+eG6D!ByK5=+}ovq&XT$sbjaKE_Kyj*Im2A<>)we%k;%~XvoivsUz>9z__OqTa|wa zJNux*;HZG7eVBfD6vFz_9(57@AeC8#Gy<5^7ia4J;Ot9@F(tSwt1#(MuMCAg>0oe1 zlHG;Schy_`UV9i1$=PqlMvm2N{an3e^FKbi-1!O`Z^6rcwy@a)_W|4Yqpc-+Ti3wk zemIpN*IenxG|MyK*`L}u#~BZh_hX)S^NL#nDg*=8tF#)^d&I26C&T9QJ%f zmvOc{=#xW}o7luzbjDZbLec6Tq-g5}VvKG2;3twRT_$=jip`q_J9ChxhO_WA2Wg7? zGGPO0e`)wQR>72k)WqpNg-Zi*I>r;wejihI-A=cU=~#9+Y2U|8-@dSP5XH^TJ`gsD z{j7zYL8zG-p2O@xv^!_df(wICku#-3mI>1h$Ke|jZOs}cdUPCsqb6F*8D4;WFzPL) zXow#|zn3sDEQj+$X#02>&kT2KEE)b1+B)h|Iz7>Q;dXV++e4^$y4HotpFx*PTS!DT zY=_CYIKFK@;K;?E(?uSi)AUwum*=vWDveypugocI;N}a*&-3 z7lzS9RPpK#r!h?s-aH)n)}3y5*ofsTGJM4)6s~wzwEmNo5_edvkTaY%kXobM4d&rA zrMqsH#GJB`({^R$U;afXVB7zy_IVYz?puCk$TIFSl)hs`+w=wOGN`dNGqy4Hf#rxi z6kiaZk0|^Ebw(gB=MIMW5fp7pFQMNE$}XmUJc4fLlujrciG;IOg8wHpD$H>6&il5mSo`0(=sp2|& z$NMerP5y~j4ec4l7MZW%`6z1UY(>J9PuUvRG!+hxrdyHKCVqzMqFvb;5m-5&~4~Bj7jXs)w#_pAWx}!|`Rg0DXDDkH9d+0R@haIk(9g}cImqFbxX-kHH?n_*bSkA+; zFL8Nd^?{vV;(8CyQ^ifj3UQI#YcfM12o1Cfb>xhecme zwka%pMVoNuNpRyU+KuI4=^V~iXb4W7LiMaX&X2RF&9*qVIrKKic6Vj+#{Gq`FhCgc-5j-BlB#E$XFq18Z!ob1p}tJ<+`H~ zmQKS)8=k`PX*dTul<;60?d4}ZtS}6A&0+=$+0*H;c!nSEB|ng-`7TO67{{rfmYvzcPt=-ZHxmn8nE;3BqU65F}menN&laiFvW+IUep-`Wj_f%%lKhh}%OL;Z$*=*Vj@6Lx6vr(eU;M8oI$*t`NVTH7* zx2%UteDsCvLK@fB)JvP+_73iaiCk{)s?BdyRqdZJUckwL-F1|#z|&2N_4je_FdQ{v zj1e#fSEBG!A$`H+CBmjT$daZ`aB>dCLv!(4bqYP(5*?dhn=w|c?lv~T-e_!sdgzi; z#w(oyLYY3Z27KmXsodreKbIcOHigTL8w~-5m3V~8g z5lw3CJkd!H<3xV`2PYAodaAY%%_AadO(+?qkoj1ymlx-b$IY@LIxtXo$oB}kF5ruC zE&x*@d?5-z^8skTkS4X$?Q?@x-@~)5I`e4loOivpN3QRVhY!SxfANSy1-`Dg(w&MG zETkPdn;jl3q!WB{#Un9trm(Jq(Th+ZdH*GpEuvpAPqv1OsleIF;lg4XgFoLcrlDNk z0SH?{KW1~@lqEP=%sH@W339g00%w;N9y3VK|^ASJz+I1oSxbEB@+R z`U~gmDJ0=(S$Qj4e;n1JD{pxig9A0bo-#apM4zE=H^bW;>OM+4Q}2Zg#8+zZLg74o zMBzK87vbHaE6~Q8i$ih+&KkOVU|&Hay?(tTm6pNZE9gY5aPUgnytDI)q;VAFEc?(6 zRiRq;8$!(!&1%mSnVp1`!tMK03)kbe#!$IN;VD~qN>kULjxP_%bAwJ zBpYfFx>Le)8!8T5=XtPc4SngS+mn+$vs#*69S30BT6&YS&w&-|aClUf!M=604Ut*U zz#^*+WNmR*>j8Dw(-dhsLiM`qdWx?2U|CPkV88V(q3zV>ukxY`Mi3uGRDht za`NH|<*cT(0+gl|u(gEt@h@+UYu$udAaR}903oF~{mAm5CdDfRdX>_+5Ov3D=ZxJ_ z2InZ`Vv)mjpTOc$Hu6Wn4lLqpYr9s4kpmUA2f^#(d5(A-rz0*w;tb4LHX z&tUNe9Co@rVBdf<;js9n8|4)2=pgX=i`ThKdg52?XDZcS#L9E!5xD(2g-Ya1BN@Vfq$&&=vH_}L?x}uE! zgj5&Gm|gfJJSby!)zjejKRSlj$d))?hvqtyJ@SmfvZ~)C0?DBGe{>gD*#f$6!l9#q zjhh&~euo>I=o7rI-fE~6uKYkpvN37=kyh7};b~sUJBke!HR!isezOkDTPV990JhMt z<7M0OVtwSk#pc37 zmM_$&EYZ~8By-2&ftzjHX#&!wYCF9eZCaGewf0!3cPE<`dh{7BZ)w@6dte!ZezIbl zggZNETX}-RDY~C#xOi7G4HG!TxX%VMOh8sIkfweaP z-7fa6g%!JSEhvM(c2Nzdyt;HZ9T}unAJ0B~yju3i4~3&xUIt(9rnx@m7ATG-fc4<+ zZXBq1tYY*pxO>xiKG=Q{TXNs zcJ8H%{OvcjbD6p&LB)w?z&DOww`ESXO z_iB`Q`G|kUL+PRgT*dKBji=d#=heAgTh@ zN4#^UR|T^+C&97`q=xY**emE_PW3zVIZRV%=`Os1O1!}7){l4tl^8164kd?awqI;r zymhCJAh26|R5I{9g3Bz`8<={8j`EEy)I?SJCF6}gcp(@(K0=Ln2TQx7^h3_r1d5K* zct4|76IT_Oe2e8My$HvTqLy9(s$;mph)46=9Ha4JF@Bn;b5w}I8;7ip-!$5DO@;G# zX_nRc63oXa^)=uXOPDUk-GsGRG{!m$i-br~%3hin4Btfjtkw&fICpsXd3b(|8vKUi zeOBkfgqsXx%-_)UIBs>8Gz8mml(sQ3aOgNq2`lM?c_IX>2qPO|LqR!-@uiFAi=&c`;o;tdq>i;>C>e}wqC<8LE;SG@8z!gs~r z{1)NI2(arUZJb&%1q;V90t8u0vNUn!amk28kTT|^MvGyjJ1$jsX_{h~z_MdK5dwOCG@jD3LVt+AXo84*SpN3fhLzQiBPX_I$|@t47TiqfVfS-CQ0mQ-kurBNG7~I=aeRh`kBxPqS^k z2XOr~9pW4F94l!h6>&h1GiV;Y2}jP*55r1oG?C>g$u}7=$0e*PCHcGvcrYZL#XcS$ zt5KJ?cU7jryzcNWm~)nPpHW(%iL9b{lT=!Asc)L_44bNoJ&l)S$dSiW@m8s{WE=zR z_9^7#Yk1)m-qwZjQ5aw0&Tp*1`0tS8Q}Onyv}C+QOM;`ihgXz+r_o}3-23@US7H7Q znx+^Zq;(Y#D=5GMr5#|@Z&cf0Lcj_V*9ou=)nT_JDM@#bd`P3@ec)O0+ai;>&0KT zl6`wha{RJZHnzE(I;SXBW z+T0r9>BL#)UC7?*U0lnpdUx2C=nkRb=mLGnMVYjf-?e%zmBtM}5sFFMR*Pa2ZQTr} zy)ktCi{^N%qom(Xjj;7ErsFy8!0^jBHyG~0Z1MX5$}Z#noZ-gOD|Ba|Ee9XNKzBc! zi_~IUKZ2uIXil)bH?EDnnXM;lyDOy^q+G>8ZoLH`Uu8DRyI{M@7MBmeah0Y88y>Pl zoG9eg5iU%1ry<;lDwg31WH_1G>={gO(h1B)deezg+JG*g*JygATFD%Z*;TA%)}R7K zmX{u{(9OarBMbbS;8ptOM?(HJnk`2a<=l1J5hpBCNxN~nOmqN6-A4umm9!H(l5w<> zPQ{vJAqd zsEDU+9-O^JQ)lSDyKW5Z%W@a0=Bv;Xxyw6Z4#G0I@0W2}qXnt769l8H&g|4f6EdzF z-SuH742n4zV?R0@J7P2|jZ0#QGI;^pU7^K~+$CnXdu~t`7BGyEsw*4{GS+*}8HJv{ z!kWI7i&XcdqNXBuMPh$56eqe+6ie8r4&IxXvvIGK8@Ef}=Z-;R&^r!GjQ_WUCl1lC zAn*>d2<{Kvp>sLiMyR<%!=h|oU()@zGdD=t1X#;OAU%6MpN}cVI(M$H<@&__lUCO-wlyA?9>U1IS?*?|`%i+p50|5O)g8J>PVJsLd%+KvzM=)}dJMTHRCkoY?ucU%cWAJb;2 zODKP%zEW7=503PNgW!x?Ltog?lFyThy6f1#q&q-m6q;FI|{iZ`&dk!Q5| z1MjoY?DN|E=yIuQ(>a!lxfHpHrC1#~8?{DnB-Rf|k<~bcMI_Y+$Oc#F?Eft@<6WV3 z?-z3JeS|F=l72Rw`8wcLG7_kh{{;|)FZx4_ErIzLvVq<1u@7d6v2V z_>!|_`N>G3><~7^U`L#OLYvDsEPaZUUklo&sF>>n==qd(X|#I!=_w~C9iMPC>@YUO z2kFOd;C@Fx=PKCul(xkFdi0bw9cU{1Zz~uDu$Uim#ZT`S(=GkVHI{Ux|F?ulb*xHx z;QcbVPJ2chWZ2gTq3%I|{vNB>6a*D`t;Pxtp_CLmLbd=`H2$5sTd-}iFJ0uVVDFx5 z^O4&`F4yIO^BLM?75?D&9M|gWDei5i&gZoHVw+G^e$j;kK1Q+b0GHXczgD=50 zoOQvjVLj)ZI&8m`&pEHmT4=oH`X!s^=4IAeLj{%@!MZ^#gaTM>x^r=-fS7~A;$s~n z@r)_!espON8N#`>SyaG@NXrxLYxVzSjoe*XcJOD_%Z4X^i%*Rh3w>rDli12R2gbZW z3#aKr*!==k8C?&!^n$kWx38 zp6WPB19Q@{X-l0 z%bKu6$?i2)H*2nt^bbAn!L6?bzqd5UN7oaDn?!>iFzGGLYVJf+Q(ERD-BvWDvJuKZ z7R`uVG@A?YU1nF_EO#lqPxCFsjllLx4)aqudn-tn^J*V8d%{u1grj*PjFa;Qr81A`=)sqnf-1s{oDAa6y*H+&RTqf`;J^&334$#)&FNUdK6|0`SJ+h!IKX+wpXm`ti z!xE0Rmk{B_Px4nkuJe1@Tx^+$x$Y6H^WvjIqGi?UwnY|HFZ|M`+9Rz&3Ug|)1?lJX z;^PC&e|t1L#Fc%6xJm833udl8n{^_demrlJSdp*iLn>BMkV|Qfr zzoZnjeR=bPeN2GLv)CQ>r4Ut@j|wy4YY(oN;ycgT+>?xm;C@0i45`Z}a20Y`T$kS* zm!By&o-vH`uXeV`(dK7f1}9@HdmkZ$P5w+sMB0mIXWWEQK79BnoW9@1$FO*3P@Nji zE%Ad2^w;rb-w>SqD{-c{j>ANR=1kq8i%DOaJ{ZNe6l3~;L3WQU{dF8!cit~yZwEC# zJo=?&f!devPp+4+*Kh8zEGTXype#@)fKJIpNB8x8IrM5n|l; zA?I8ruJ&_32d3jc5^aCb^;x0=(r6xh!QYt?GAKLZ;x$ z$u0y{SKFMBDlRPpb0B|_D~N}jAbtqWHv5D4Sid}P_8uJ6Jj9`)^Ac)4dpLV`)?lW>dLeQ3+o=)j=qj!A@f;bD$l=>$HsPQkGGinp)KcD z-qdpUE7;on&G`!b_j=`diMVR`K9pb3%(!$U7A>i?KKacg9_4ah01&OX6kgc26 z`%z}M{q718QD!)WQs0GpeG`WLcyf_QjB1pT}$I@TP~8u(Lit8y7X5 z!ubZAc@~($`94bXw5{2ZmZkmim5I~g{Hie7gsquqxjZdOy7BAxyTj&jFuMVdrxeCO zNdsQ%5#PvP zmaMgk#$hMx8B;4rYsBMwEX`q2BYsPiJqpL5ls$?qj`10G2}unK3o&GigyE5V3Ux-z zOy~MP+3OK~#ADzYS6Tzu5y>Y6n!_@5)&8coZdm3}cpk~yIGZ?=bw>r`2m z1-Bg`HlFWjG!MZ$w?wGU!RUG*hIE6G=wirb>TannYJUznQ2IT{qVHp=w%bhDp6nH8 zutUXoYS?Iw1c%)lGB}DLP$>SBn_WN+SH6I^gzftEB-jRHw zx@Og;G7H<&53=ODTC2MS!AVF=+jSVuzIm5nXAQcyhW)Q1wQv$sgJs2K`Qs0C zG90xuQb^!TOChoyAIIqyL)UhEbgQS;HK~`&^3UwgYn)yW=TNQ~GVw|SqgU!;sU7w? z+Cp+-4ZeZt2BC)a?Rb2kP&m;3SJ0nZ5LdKztmr5&+yb62o;^Pp2v$bZ-CCg57nu!puY#l?ry9e zceJ7eNm-|ktK=n*5}&|g%W+@y_ZDH9{wh|sS9ZsPT}dwJx{Gkbz-#NtE<{?!?{#C2 zyRSz6!@ww8wX@;wyqNq5whBfo{yl|!oxQHBi5;C~FTZPgYIMvTw8VB!u( zCO?tu{3EQ$N|Fn^8n3Rz{c+0YWyv0YC+#7j8%C0Df z54-a(Q2iFVf54AHNA~uxFPq10rWD~uHa}V(?2IVO|NjVk^T3#{_Ye5aO(v5>kOlXQ z23HcnP>rR6l3pYkQB_rYQ@sq@>OvK*md+)aj08nfPWRrbb-t}CWx61jl8~aPDqZxF zs_GUrrPT61XUpjK`@X;T4>I?B&Uv2aJm)#*JZJB@yDwb30EV}L_RMK`!cd5!tGH~a z(!1fVPPO*?#Z9!dU`oj@{N+%^4^{iV`;-P`jqkx>$^)`_6>lG=s4b;`pkXmd+3SC$ zXNH=$-#@ryHP`^5YWxL_a?5xByM<_Y6`90n;LTLvie;A?M zCtF|PZX=Zg@EJ8qnL^$?oIVQt;i3xs@+f62N&WXIh3w)hAFVtHb4KC1(aJ@KY?X$8 zyI@E1)` zo=-4tJUog;wXfq96BMhX^oOT-*6zVTe4LZzMLnP1v76Hu6(8G|o{)r=ljhN^#V<@$ zuE@F_E}NwEgQqF?31Y_Q_}D{AOT{_3)~fh`Ts}T9KGay@>H9E}RT)zXi7@J*t#J*}e0qQZ8F1;U14EXJp4{tWHtxhCfeCQC?F< z&mG{ds7Z;t4i%dCD+W=T)(@*wl^-0Vmp=&|%xFB~N#!5-Gjy6V8R;lgI(+|_l2d_4 zoarkcfx@AseG4{cDQ^7xG^I0eZ1t2fTGo@o&pxHZKuaUxdDE5ovT-S#Fhgk>Eo)nF z$63k|*?uQ1KdW>DD_D+uJg0PU{Ea6(r+ftYZZTU4%dY0(qqCJ9s7>R;&7N2GIb|yz z|5&69N>rU7ZZi;fDis$_JQgc!Wq1_zmtv(mI1#M_%2UnkU!eO=a3)MH`H7UILFBaI zz0?47IM$Ciw?uhW*1p4b2{iwgacmGe(SO1dg31tJxD9WauXKc*)XZ1DAa?|RSgP!j zb$BSO44fD14ZOBY*(qy_@M8<02+UHvdV%u1Y?k26g^I7mRH_m`bb30GPk+|4K>Rjm zg;y_B8ao_U!&??X6C|6XaLi(*H?ZozSa}wLw=V`xvZmtV7s0iMk*Z#>)SE^<65PkwHnV|7y7`($9_!msNQ#jV}vhoD6$Ksd4y|T82-+dW+ zIEc366{S5g{u2t2ZB4b>)O&}LI?ZUV#qz6=3bZusRcJhPI2HFQ>C|z!$!kiT+*E(K zW~}o{TFGNlS2)Lsbs`)T^_$9~T;oCCl6Tcf^aL;m9`Gs7mgC{x5?aKCV*^DU_PW@Y zJ|ca^e_~hW^T12?2KfENQl!22p6Q{nX!0yOg!Rfak8yuW+zxu))Hm1}^HZQ* zEFMB+HbxT%>QtZ|;@_i|zpqS6l7^CCh{l8AnveHkdz96$v_9B=o;we z7|&C~L4bZ1R95JlEbtK}TxBT}W&L*CX@}BVb`Hgl?SQQ9#!GiVC4mvxPNiuFt4#`h z3>i-6DO`pOCPMfTJ*IRs4!6z(BtL*a6dLom?NGqL9|sfFNP99DYCW@@+B1IS=}8e_XlUu{-?Wapgf`+ZEp^b92;} zU`aKG@Z1%Tvxu=slo!`JSO1rzHLkYP{_rt~0 zQdFB#X>iH*S8|r6r}cDj&R-Pf1{Sd;x|8%m6o16O7Gen2NWZQQE{y z)pQy+sK{{3jnX|PzdOvm^}y|ZRz^BxxZ?%}*fL)Iv(lrbwlxH=+enF|^N)w+ZCVl^ zi`3z(KPw52cyo;izz~p%JN-hY0A3Hz{sk1+#ClWH5JlW2o3Lgg}SJpUr8n8sbp zP9{Ag!-F{SsxqpHIcGAYn;@mHUl+>|%fPd*Dua`ar_)0`g+vO(dKQ0o75vcXBlrsc zi>@h0pfde_O$l_89)OlS)|om6M7|fM;HlN<>7fZu*w5UIy2x<;`eZnIm9-I5l!@Ao6@fLd-0V@j@DL0`*e8{Az+#JPDu zMn&-Fq>S#8D}TbBq7ZBnPsXF7P^+Y9a^okQ_@2qm`NQ6g`B5m`GkTuECeNL&c}Ca^ zCmVvUd8s?juIrnWwkxL6Qw(cH*V#nKQrPErdNqsVEyB-4qqI>|kGI&71lNv8&x*9! zF^&6$;ebu*4w&)IgURVRwUYe|nMPq#Z?)%^e8_1$ zO}17x?a4@$5L%QC;#byvcO3bsj4hV=X+xa`MS`p+MBCVz^^?!+UrS#7a0_ z4oeEja4_-Ql2?|;qn3>fP)0=!FU%s`F`jaIG9D=d^w;3vIjm+A`Cut(b;FZMdBfAV zP8Mc21D){vku~4lW%qjIWrxCi*&3ErEj!o)E-?%~^>-Ef<$e6v*V%2!93c6UHq>aQhLwq7iyRwsUZDV>D@~KCY;3ag%IUtaN;F zdPZFn7E61Oi>r&jjy$q>$i7s)yf~U?Kz-nK4NkqLz%Fr`A$vToZj4mf>WY7BjM8N7 zF1T|AHA7M3iBxQV0o|f&P-!Z{If-C5vL1)$C8426jZTX5yj0^ZxB(NNxpg-fQ42bi zBs7*Zy@QewT<`+B!N<6p;}yvW?(XY}E%H}~M`n{DXQqM&r=StgtgcEyMfChe6H@iI z<6%wEyw1`;PeRua?P!;T&z*y^ldklI?_K111onNoGx?5c2iLt&JnU+U-h&eiUx&9e zL!IOV{X<6{*UBb*4xxjxxdHEVqhHd@H{hWmN1uF=)O;PjW%!O|q|Ddwf##??R0!uS zhgVEdvIAB1Q#`gE83vn z!TER-uWyIo{jeGM=XOY!eN*tj_C)0HbM4VmY(Bsk2CM>!QB@s95 ztt_Opl$!bqCOV4NMN6BGx9__%uKajhUs!gay4F(gkt{SK-)L0sb~+v(F_7F5N)f$b z3WSijDWl{1&KL0;_{RPxL44`)KJR~;30g)Rp4u7Bl#SE)=g!0sYj8pr1m4(H+^Y** zGh$xx-McO}J#nR@%kX;(IG4+KS{F2PfPKDZ(7KC)u5=!5qS>|PVpP*;sjG8UUtXBC zWRFeFo;7uIE5;A!>Hnx1xUQ~Vg5PmgS48G$^SYvm30A|NA~Q*NOIM^e(wtB$S@xoR zi||!9%D}PR&`S;Mzrng9}&fh{=YbAYZgSyW?i{U1)b6uD_tXq zCOZrsBQ$4c`R)^PnP40uY7|5j^3WcW7G1DDo!+VDUgvejLdENVW|o@nJj=x7QlvXi zvR~Gj|IM(`8b|j)Di}$d9;mgfox%fpfL>L1Ls$loB=AeA_;yQQo=HnngjlF4Cu@Ee zk+*1N)fm!NGv^1^!3mlHv4Z@mYU!j=8WNr z+lvqMMD5Zf$E>e-jw+ccH8gK7B}>An7i#MmhP7TO6K*wOS-Clial=<=!tRZf-v4h_ z5e1sZulGW!o$b1Y|1tpcpGd9LKmK16fP-bdP*)k|hFji&(*5^y!G9BVhl_o_roVZ0 zMSa1j7ed7(^ZLVN=TyQ-BShISzRyFSbstn!_uK}VCZq8CV`tN*O-{3vHk;ktcE@~t4 zV;yI4T!lmjEMMBeNFJ>(JjHW!BLZ7r!So|Ufm5dp_H!mIcGH1Q#zD~ z8FWxyv?@qr`=O(#XKwG|EI1*%p1D@VSv<&dP$ig~yEzMvn6Ti*;z+wfzauH7tvoy2o~%s~O4=q*acORwZG|KX8CL`g7v(ZC<_B<-`er_cSy&dm{iTHi zID?NwF7$9H0ImSdo4LhPTyre$NZ2JAU3aaKmTn?6q2At)2i}P~H{}MXts|A5C4p<> zm)wbNOBJ@cDgsHNnvv#J-*5x(zXvsUv0{81U%eB-O6W>FL_^P{nJ-hRi=&{k7ZTa! zk<8gI;$Jk>x+gCZ19Lq*7}1TkJQ7`df#EKlNoT+fvFWIppM`pPsQTiHz#A1IUZC1i zh6Z(b8IB66F5z56{3W918iM{fPX7gg*b6xij@SzYqAdvfsZk5|QW0l3&QqExtg4i= z84e`K&${~$q{3YK-6N+fg|ng=LBTTAii17>;g(Jo@41tPl z&*Y3IF!JUTB9S(OGvbK&4o;vJL4}c?;)Hn|YqChKKgsD%I+P6?j_IP5TzPsWi&J@-FXd^di_XjLQ8b?A%-Stkw zmY)=}{ZNZdVV9-(&R&*$cR72J2&9rYK7}sne$rTno2T^V1SgQB)uKcT!)Ll{<-xC^ zGW&kYPG`)5K$y_gDJyVj>%WD_)`MIu|3fUQ^`L;%u?+HZL>(&-gSI-*1arhF6bLLw z(_B_@#2zCMI3&;V|1jgDjTVSGk|6$~RbCFU03iQxh}QIJwIbs(G#2CVmAV;(T;M%d|_F&G4LuS56q}|OKO=dBrJb{>e=;Gyw4v&rS zI0K8Ih~_-o^;wUDg_wOk#o12DI2`DjmnXu!VZ~34;|U(gTbre+o(0w93Pxs_Fn<{$ zi=RvzeM01|Li*e8?>pcWy zb?1y8V~oVN_pyjY7~NQ$AdjPU6shel45{LX=@E$5nbUoo(UsZ@#2m>7NnQ@=Z3QHC z;*2)59Q!sou_+aLpzN>YpHgT#fh6x1 z7vzX^T_9#OL#jApMhirW;(Yv~7rP=L-N6}gM10@e2dXzXVIIf6C{i2OIN^!Bxc(A| z{ST+h5%W)i(C$dP!XVKHN*6>TSh%5itKy0Da{`erMG8);rG4Na(FbaOkW{qCd!ofA zCW!PqqvYaUll3b}e;JRv3w#p$9El9W8(Ox~S=Pr@kv^^lr*YwULX{Ga^l|DRLL}oi z&O&rozX`H`IWhr%;*5AFCH*82{YTD- zBjOvnxZ*UPT0O<-@;LT!zesM_oUrJxjtRs*!3m4*>Zm}p?-?TcIO!{anBQ_nJdOUP zK%{RtAJ+8y4eOAA^kbY6?-kU80exyuno8#i`YyfM4`n=0P&f&g6=+_Jr#DJF5z=dx3=&vSF9BbkYIn z7KpTqv91#R;VyybJGq8X9~yX3EV8*4G)}b z=<6xV2nA>74iCHUcm>Gg<*3BW9e$bi} zMD*fY7qSo&a7aZds55JZ#a)1dR+75(riDs7 zm4d+2JtgZ)1_xkjhUIQ5Oy4r1xcz;o)gb%vT4~7>j~`-zT4yp*xR*X61}~QJxgRe) zGerH7$zr*dOji%IVk$$$or=4ZGSs*gzjPn0h#8OKgZClD-y>?Zw+FlsHj=o=LHMfb zF(=HvTs;BnnHP2>#T;n5n}kKJ3HB^nQ`NKAuAIuWyp4IVBPXAcl?K69=onRYj$2Ao zN3C)7f>pj=$15C3ByTYX()MLm58N}D3d6JE^OUq$U&09tAgahLSy7T108?OUz(vDQ zU-I00fz>)(cX#to}qH&F3IBPh1ojjU&U^qgscywks z>X4>sq2QBd`G^^g@{1Q6cPjpvcVxjQc(Od)Z3JqYe!uUiOSE89irTpDhr1!5+Cjnb zh_;5GAA#;@|3oCB7a~?YF$1jCFitz?DCKyDW7eWGt@BRxlm>F?Aswct zjxc&HhVcviQaixxCyVb1m1V=2wy4cO@YaYQ#=<3N(?bgcOSLV_sq0CYu4MEwS%~*Z zyn*^ERtsU7I(4(bQUIdHmLU*}y9`wvF`5fRIM=ReEREV)AVw?d&oE&X&jLE|qF;6k zA_7!4|0*v}X0?D^Rzk1EBBXB2^VH`-qW(3hn?WAiZcfK$G_IOl&k%(Ir+*eXH}wGj*%C>xEDSQVTa;)*nrBF%%H z#FYvRM5ALi4wc@%O|W8A^hTk;@nc_Yf|jrA+}xTD7tV0^#>MNm3SKsgY9&O-O9`Ih zA<&>FivH0c{I`g&RTu(BqCbN9Gp5g*Xr4`lnjim;|3Kp(2pOy+~Uc~Fi zpyo}~YosW_HD!9eO0DF(F-X0`zD$R7EK8TWMz520Y=Z}KU4ca>oGi8hez6dd`^z-8 zgtPBQT3jKg`3u}Cje0ia6;nSQshDtn?7;mn!>J4Zm1{#k8zF3-ZM`B}ncNq)RJ^&# zbz1U0bg2oeY1P97bM=SvVKe%c7dQDkR0>+YZ%Lvk3+pswuMNyDQNipVMSa!2^OQkj z0uQoWy3rN;3Q%HV?u4MHod}isQsSEMeww1j(Y(_s(UP=o7kG9w zq~6J#Dh$^8Mzo&xVMaYTl`iNo`o}^6G7rx_4&wL+Q0F)Zp?n=6*^R!z9VsTf}J01I} zM8+oqQg?6$Jdyp8K#U5`h$C89AU3c6UM_;USs>b0p+WsaQF*0L;c@Aoh1)U^eDY7* zZxU*?xF$fYBFEgFBx(gOo)zU5p;qaA!Af6`yF3V6my9*od=L#twO8EiLy(PR>x;2T z8hm3Cj@FUt*H>?ZQ>3cg*ReO;DezaAWzRL^IM1ke#`!SWw&SEKfp)ntQp3#GMB33b z9Wk2y5IY3>qlnKU>{ER^#AP;K_7txsV-%VLeR&*yM@Rh|X|F~KT6+=K=_n&XeYrl- zVw^D!J$hFG>K%rEa1eEI(W=tLQJ%fr|5L#u94croBx}s|aoUSGW-)KmAn#@w{$?C{ z58Y9;+It66hx82ffv9R=zsh*j%Y74SPm7@T)A+)8)J?XY!0mjf^S`1^zA4%iJk5t5 z_FEHujhs!Y0|Vjk5Yf9dnQ7QN9JE72?1#BY%?Oc24;p4Z#LHnO`_>;^Ez(co={X`z z5{N#5AwiC)g@E`eIcq#;!69qBNTiPAjGpGgj1q`Z&(a)ZPw*jhlApctR7L)f>P1=ba8MNOCe>joWoqJ>0!#R;*g#ulp?ifi0fIF$WjHO zbEnwL5w(>-tTrr7kRwKmZ$t(&IG<-d3p06`?dNW>>p7m==7Nycnnm|=L~;wnY{gk{ zL{|hN@ww+Jj#y0vqVu_D*KEc|Z4!ca3b9H3cRd9*rBgLY#4BgTku2o4kO;FA8DkgJ zTv!63@$6=Th18f7NPY1%3a{x1FELz7fjV3_GENwyp6Ds1O*P}^PYIP)la`wigW2Z# zi1GCTFgKYcfZtreSlaT^P_uE$m|tLVC*@g>g0sA4e4 zOVBV?54gk5u3Oyh5X*cTZUFGox=FH5Oue{uR8(a4-MMa(||p|h{NxzT?WkOb2g zbkIA8UNz1HKF7jb&$HwfnT=)w*D}P*5u41&QpDi%&OweCzYE0vm8BUX)M?g4N?END zre=^CV&+bA62$u!R%HGxP?w)GJcBbHL$`ywO!@2I7PZM8&VJh`i&ibFSF&`nsLg(^ zVClG!%KV{dRRUL({euYAP878nB-BTyekpDHyP{PKc&Pfl2sMD?f@g#@WX_kV=o?tF znnPz8+4u3HHt`}y_3W*$i&hozQ0ohkRzJ#AC6uVwi(nn0J7OqBYoDhQwq%`a9EOh3 zUtF&u;w94v5_j#ZI0NahK-9g$C=I%|hj{N^f5B$b1H;&h3H(Jwllp#go?!6?qR%-` zZ+d!-L^77cduHSFqBee^TH~{NCe;zu>SW%RNxdhcTFVlldR0WVCYkPK8K}IeXWTAA z&0R#Zk><$!3^eQKd9>@qH^o7qbQ9>vo}Vp-2MQjE@=$y15p6xh5|an3N2WMoWoGDUaF$qV6AFrJ=smVoUdH!LL20m$j#4+*;peBI=6)M)8i@3& z+WMkZu!oMuFxJP zw$||angZ^R^;YeU ziJ=}5-Z>SufK7}vS5kQq8C$d8FV_q*uaNrjKKT07C1l~RFrF}(!@e<>VKz+N&=7kW z3#sCbg}F#H_1a4e5v{TI5<`fm@ggV7+XuZ&B$AeL1{{%=3PfMb5#AcBL4jC{7*Yjh zKA0D^v5G&U9?2yIZ2KZaRrn3d9|oQ}9S%mABk`NlQC{}_ zr^CKCD&;v%d@a5v&v5)6OdyLM@zHP?ZOICFuK8p*&I?D9r5ZhWHG<&gGhmCYes`^X zqq^35zcv(fdVL8$%5h#_!yn}~$FkefiF6}JWMd#JChzPPYw52w!TT?V3Eh)01uq#N zFTTCvztd=5k##S(IeqYHHcPU`JG*l@d<$W+#tT~z!t|HRIL+o`*1!(U6Ejd|f?go> zXlXccCb|{c8LAky51r9qzx&l_=G9Er{?QN(HtB?lSxl=hk-}3-<~f877=3B`O5<8R zpmU+W>}+_1zMAI~9+;;E&2?*?JZ;$ zf(GcFU_=LdK12@SME91bQL8v1ya%6n8oAy4(`wg3En1a39NKNhrY%l<2JIzlhF~l& zuEq=drwMtQ6H|e^zL&1XQ6ZO9zRN9nN;egE>r02aG`WfRfRPbvM$2$jl>v=7!<(`Y z*Ie-p4If2dcMK`-RbGlf(`_{nke!aa0hetYD4N;F#6GCe;oa3H6Zniv>vqJ<7bFPD6&38!^~K&6{;&1 zrt${FbcjN+WM)EiewC&piw1&*?&Jo>Rw4k0{Hsx(vd1?=J?aL_t~|Nxevw4FLbhHp zcG3-U!iABjBD390*h`+`$3LB$yKEbb?+b-q$Y4pdXwpSG+eTw+*Q!N^u0oc())Tk> zDR*W4?W?SlPDFPtUMa2G#LIMUd2w#ciRjE_jGgv3j(rYw$&mgMwNw9{OdVK2h)_RJUsR}q`|?p6J&;>M~eC#k)0?S#voK0c<^U7>K!L~rLS<-9E7@?`|mwe zO~xEd;xB9MFTi1j1>3ds6|vnXRMjg10PKjw@$ zVs8+L0p7Q$F2?)ZVxid)sy4v=&E#3IHm?ZWx@OZ|>!h)8f!&=q@L)fRzuVk&?_QA( zW;0l3KL{37~B`r!X$)*Fxn~yoFyg1 z8Xvs7er{Ya)mM_Z^)u{+lZ4}vs2zv|UVMk><$D<5@62EnGT@ zqEOdgIP`IN&G#_h_VhU4jcf<8Ytqodi?^`I$LY`YlrG&KUh~GC<^JF$7L7F&U6~0KBX3L>h&_!Vt|fGio-#L|D@2Hvc@q4ZgQY8jnM*8bwFtTIYbvp zSfsI>0Y|hEB9UFl8F9uY>A+|jcn5*CB^=S}MS#1km~|D?IS(fAC>G|2`yFV2Iz$kH z`L}FQkpedE6tJ2vP;Z1_AAxGQ0(BLNwALL0)%z{;M1TFQvme3TUnAVK>}zK5Ep>&LqHPvfaz?^PYys9ce?}0xkl9 zJsWeqzQWVoD~8Qw6tmK>J|AWKhjl%Td32*yd9Y4O!C1Pz$WuJ-OoW%-to6whU{E8+ z)eYo=sfgPU*|I@N8qK*L*hUQ|f}7aGT)y_{8k@#bTMCIwmq1{ii$*mSKFDM8HLX{e z0UMl(eNEz|)q#SLU=ODNm8tIifoRBE>Sq`xJ|5-2k_V z2^hnWs;5F^9*u^nVhl7LXER~03PJ`yCQ!v$X#WVrc2KvG#lH-O#dejp9ylCDt>N$eIw$P(bSlVeZXj%ct0|Nfxq} z)sX7=@5*8Qd_fzJ%NHPbH~SA_$KaU8kgD;Os2Zowhap6AK-Ku_zpKVC*j|9t5$b7P z&zII)I9yn8&b29+-S>pcQ`+@(P=YJhxx3;W#q^?`7VU)oJxgD;G}5T+HF(5AG}r+? z`$9Ag7O1H%tuL^;2u+Y-h*q))RfrzK=0hgei$Va{-$UDV?~9RM-Ppl2<{CxENR*&v zkuc)8!P#mWqLRTID>yovPn|km^YrbjVIPtxEn};n`glw-;fzh?l72!*J`|HaCAK8$ zkNv^5r{^rHhUo>)5T+0_19O_NFYTkQ6Q(<0t66k(4i$H0)v!6!yH3w_&=pTcZwt4c zo`(J*-!;G_hSdsDF^&JgjpX(9+lB#>r(OhW9iF`yrDbUAQ`$JCb(>SZp6*C_`cmV$ zUiYuOC|_janD649i&5U)(2=I3wucL@tCpR@Men(!%)qr-e{e2JVTEHGK9^&LEH2}~MVW+Y5{+q3A8dY4QEL?~H*Yhzxx1?=Ep8GIv>#(Lu? zPEmc`Q+l*M2i7L#mRI72d18=00zI`%nKG6^&gi+PR2kkDJISMhX2y1LrcvB zeyZzV>!hQkp0PO3)yH`jwB==yW|4Nb{Rgb71q(ZW?0fZ043o6#CCC?zrA{FyNQGVu zI4=MVIYqRmuvU&*s@gPClOEsdd+Uq@Z8*i~DhK^#KY^bwN2C1OV`NhTwCIeg7#J)g zM}yW$gL%09a0s}GFX<6FR$<&8W;W@)pL3tYB=s(%+o@5D|O$9ves0wcgjB~|1pD;i=y$cuii_!e1&Jz%Vv<%l#wASNG-zyvI%VZsS$Kl>@& z&vF4XuoSX}ibVQo+Gw%_qlxT73)VD@sgL_7H^Sju6YaQk9+3yN1G9?YGT8dXq`CE`qP&%%Rm(hO^>w?$HF%_& zR4d<}wo&CVmv7LaTMWF6v%EWo(YJx?Flypg+xJ{6xR#Hc;rPC|{L-byn}T&(Yp*Z& zk`!ybx0c)LazWe9V3fI(Z6JeXqWY>C!Xk`xZpn~Oky2|dP_s3pDjgBW&Bs#ll9!R% zz-%cZNcd9-@Ygfdo0AQS^({to=zWRHOqF4hJ!15in@cmvm9^0b~RqX^oE=foI>#I%;br*Jy)XFg&4}KNhqF_;bHCT;+4Ju5O8`yZ2>_@)DM>aInx<+Dn zBJ~}X2}Hq>C4>5mT@|(6yz&8?Z(Ub4Wl=an-##B{>~yjti_$mFoeYPc{s5lfdAhal zXDp@RR5qyW|}R zoLtCg!_`c$p}efBFFwHrSq-BM&F@Jh!CpEYx0Vb;YwR;uIQ}gj`#Nf#;5}I0tb?=# zgY_T8#jm3kvUM1@djqb&)Q&_lqV2=O-as8X;IYLyN2wjH@#36gv~sR-={eu9U%>}+ z=vqn98W=x@-auKsrO#_OG+us+=aU>G6`Itm!GC7D`3!cSGog3ggzv%4-b9b~gm$#o zVFue)^2ktW+!s-+_CupvyI~3x%wV2hwIWnXtVVpBTkt1uqT7-nVp?hKhTF~&siWSl z!uZOYs7n`nGb5>PV1M-wb`JM&HtL5FvigTyviI=Vw@@<}BFuOTwU@1TvH2D<;j^!a zdL~M5zc?a99s{AduwTYyCTev%4w1bUG)R99?wJ!^J)RVBM)RnzvA^na9uMOaCTiA9 ze}(!_OewGMxG&=Pw^1te4{hH@o$oXk3*yF$>E^rAsd`lyOGBljH^D9{DQZ6vze@KkcWqkc!1yvL;4C2;5UJE)IG ziyJg*?*4LDF1(}h7mNw;5PH9-E8P<hshi?AMuth5Xk;NAS_rD67S1XUX0x za!p@$CcI3zs&T*UHt@=6Ow8kOQ7lehgPtUBAS_=47mDitU~3IZBQH^{K|M30YO?dl zd#JnjDNnT{_XXEEk_PU13>LYad2IAuYfP=c{nnza6lo_se{(wBjF#@sW_ifMfwd?- z!Te&`oh)F;NBG0FaH`k%1b?@dT*nEI7_EbAEFXFb=d44S?!0Fla075)g%GoE5)<+? zp0f_!-TmO|+H-gQ*ltjIvuKHxm$b9?T&o|s##X`;KSR>sW$eho-CASGJ4C%5wa@-9 zh3$-HD%(*EDm{X8L#SH|>kCG9>TB;o`K9fPIp8UV9sVjQLwMvN1l!APAO0kSmLytZ zZZ0F=J9x~0;9gh#4gAS}P$w|Fv;RTqj?=i|yXZdIC<>2%7bU=r*T2zn*B0Wk_fT`$ zd>*fU50U3&zJS9U@Tb9gFxoS?{d&|&)~Dlv>q+U1$J5tCjnKxDwDH!0I>W++OhfgB+qQ{`Q`2z#cc+d)I&JBaECY4CnIVWu@1G$8V&rwker`7)9d3L{@;(x98Zti+C51hb*5 z-__`*??&(j)y>}x2aTd=3}q_ey_?|DNjo0@wh3i4(P18Td~TO~Ru4%%=-(e_e26|z z8i9HTCYHObr{O)bPUR&rrOP*?j>ujY)gf2v3C}qdW!wd`m3RnsNa}FzX7piW{VmUe z)sZm_c5MMu(lGA01@+4?PP##t;~Xi0mGBY-ZRc!venMaavex3j~SG`DH!W$N>+QL;X3#s3BML`-+RlNCQG%lHp*e>L`Pj})H8Y6ML zPtd!v-3%Z71YL*^-T+1BgGn93hd)K#lk6Mc4Viz}y>t7N3Nr4kP#?@|xYt%Rwmy3P zalB$HoLe$Z;$vIEcJ&K5a~rv@`8PaZ8?ljSNzQ!6!#=iZGksdq1&=Dz0#1od90Z$uxNMc*;KSQcr+Vfk-{Sb~S|}i!Yw?&J==oIr zt(urXU0`B1XI>uMy%|&j?}g-_!gV`Pj;y_kyX{21fzFdV(Pr8H3b*?VwRS>`%2Rmo zXV9bQPvDqcsJJ;??obk~yB{iA6H|S8@$Wa9=3$Lkl=U%QxeJchYa6h=i|mn`jvMVp zZC!A0JFs~V_uh?ei-V6YLHJycr|%{jU4eJ*MrFYD?n+c3TdVQQm1r!=&rSmC&}6U< zE%k-H72y&>qofyZRD~|PR@09n+-MK-rLd3Urult0hw1OiK)84hn&fCArPahb|0o(> z>>&LqkxP_bMYC`h_1JN~ab%i|3>{3uNS z#g+bz$L<5BdL^E>4|Qy$#cy&Ai;8Mn{b_m0f_L!NeJG=m9(yVP&myym8H4}Whq~Nm zJ8!QbkHfG~&Dkd$`Ld&(;i9}9k|ST>@IuUfq{IguOt}2-@YMZqF$LV_`Qv`*Ea2IM z1L(GB>qz?@_@e_T6^}na+T{Is%K>8Fd+=`upx@MYW6u|8W3v8bXrc40FQx%+E9^@A z#~08)*oScQgQ!wo@B=<|5d9?EYjO1<)Kb=0;$IG-xzt!r;;Dz>4gwXI9!7bxwiq8g zjQYve65QlVs4-DE`%AQ_leuK6H{Dey3F+0cB5$-K>qI1QFO?89?YpH*1tyml>AEO}wvMMAN6$5e8Vr;5-9g>mpn+b6uO3IQf|~I+=>2BKODVmZN~FatkR}Ik z77;=#$A#a*l_5qRe)n5+f8*~`oGqkY2N-AuakKBxj5sjhu~0io7U7q^LwO3d=lmea z&2R5N!9}(__}q7>fYpNh1!3)b^^v-O`MHvoO}|&GZ<^}3n$S4 z$l%u}QR|LsWozg>;Hq|&WX)*j+#7ZsxU*9$T)}VQj8kZ6lJsg` zxaQRc*T-{45)Ph1cgjH*-g64Un`kI}^%UysASRUm1Mc@D+Af>-VEHr}5oa$F#W?OX zYAe?)2$!8kKRIM*%%`0}6M9sB*DyaYk>sPd5uQZahM3hNB;f`Nsaz*Qe!Ip(pap95 zGkU)dO_2YAfFC>0;F3)uWY9UDAS^;U)^ehs;wwL+(Jo4&ayuS#7QG;wL-8+XL1X&m z@T6bhZ3|f&gJ1ZS`fJ;MMUTku48iSw15H9Z`x{yyn`iO$-za+P@8~%hp8X2_jtp5l z67Kj1dIp|m+lp7$lE)(O*;@3JY;MG3&q0l|H{j>bq331$J$(HfbP~p=IQ2YAZK%HQ z-VL@*Ee@_yKaae!y$-){9@?MkAMnQWXo+034(DC~i?G(uiBifa|)CKu5N#VAPH{koQd+e*H{E_k(( zSrhd27ttN@!6+EV4*+X8gDWqh0kQ_~DO^IPY(I=QUP8-dmlF^C8v ziTa<*pr4?>v}KP}q_2pR($za0 zC+8sH`> AlLb;=pNagj{99h1JjKD|DCF&_06f^*@pGkP;LY35zso76ngk;==KKI z#7ID&>!?2vo_igoB-+~tShwy@%EKFo-)mmNE3c!p_`Gy{kbXzugV#~}5u;PB^o(ff zYz3ofb@(4CI^8UViprxC69X1b>%Gh4Rg zo$@ZZ^4dtB{103OMM}ZQ!W|v%Or-DmHx2E_fVW2e>jGBKG;M;Pceq#IqkXy*t_5H( z*<6E_c6giR+}z#1Iu`yMAoy9dfP#)Z-D zndD8UBhl`5VBgoG-BaMt<4*Ujt<9bPCQfsn8_79LDLdW4W>Obl!%+MlZEpVHk_0$W zPqc51!J}f_X?|l1oRw|#S9For;drHLS{@iQv#lS-4@(=9;+&dzGW-d=LEXKw*Di+W z$310zcBFYX=JzVu0*wS|>h$l19*7DR!;K}0iRtLPlvX`(Urm$vi{mP+TvpmrJ74Td zY5oAl-FV`a3i`V#5#@0rngcpf2I}|VMlSarS*yUuTyE7{W2LWjNzA}h3m(XkY7>XR z<4GhN`ZHlyf(~ma(y_Z>`T3t?pR;iLX_%ydQfJRFu~NS?*6jw(jgEDK+zF-?T?-vA0&$;Fc=df~;>H=kQ(|;mjwu zFTw3-vj%D83tWeT1Xs&hJo|k?+6v<)aqe#E>RO-;jm}^7w5<@OowxzI3z8NFQgQB9 zDbPXCPi>7L0dJJYxu;~=uaVc+%3Le(NB22hAAQNAz3Gc?Ag53+e<_vX1$!gB3g1zI-ds( zH&wJ94GChL%~%4XENa~@=hh*!lAH4cH8sI~3rxQ}qy6AjPhPcMw-8Z4-1m(MzPqOO!!Glnx;LYT3*b~ik>p*zzr z<<_SeA=0G8Zg8;_C39{T&%AAJt|K=kPEFkZDWjrl^{Hu*u>!Mr>X^AK^}u4Tj}CKb z>ft=K);m0r6gkn)P0Ur1eCEx}?Y1d#iHS=;=A?SmGrlRM&Qn&-x;dqmfgf( zQlI8u>Pc)2yHTd6#N^+so)-8(Be#01e(V27nnakUcuAG{k2EI6OT$s_b?uc4bdK0&$xK*ONVXoOHaRBuC)J*N(oCNw`cGdG!Vy$GxE(YJM zH7g2FO?0RFjg0tTpup5pu^i#t)_f+vPgyQ`ct^%uA$w;bxB7KYi)^ zecq1D>fC~~eWVHV;08(VHZ9HeLZ?_Nuex*to~{aA<{C9S;K51mPO_bWpHFhb3Fpkj z0mCbp2$EdS{$IjtDIoll{}$f-9WE^d@yP?JEVX*QK6SnDqHR2)3oNn@*cZ&MPBKB!Y4%f?rly2m7{M{Z8r|C{iHX706eJd9Ntr~lw) zZnv5y!F5d{Y5#YLGz>RZvcK9IJj(6vmS&ofcr~jd@zl3iJo|0D-tF%Gmz_|z7bJkft%#^MdIVVn$$p5eyVoZ^& zd2IV3i={t}hctJqXLyaba%}X(zjS=@zh(~sV()-J*BT$PyXd7059NNTR_yKr0XWXjIVI$7I&Iz zorNBfrn0A{PAt8Rr^!n zC>ik8S*=)@HFyQOT;gy6Q4Z+9{{{d)HjfMyB0i9JI+($c9zFAlNcdW2Bm#9xTHGJ z)R`{lI#?{ri92Qh9eB-lXoh=yQ~PS?hequXPg1ftP|Y&jw@kDzhu6eF_FaLTJz-3K zc?ad}W4|71kaL7*a3EPYr)nzLevtios9^hHmiD1Q&KE4KZ9&eV@TDH`ctll3&X*+Y zVb}?I1{bt(@0PW6oS5kznk?0%#Axw!LXPH1gSVJ7-7m_}x z?k-?oQ#!cslC2l<)(-AoFpqVqgF8>QSA=sqx-Bw$e&bem2ibZw+_95;2t2Vk6hD8P zdqt8u;J{11vUSnK$t5a>*NU^;AIrua__r+g#$+uE;Dr%byA5yX><-CLKMK3JGl5M} z7k9R-H^*DMfUssue7y@aQLt9MwyXQ~WT`6rDlCHr2HMyrRmPI=h;HuuW@a>06pMOz zWWtR8vaf|Vc5~;zeA2u4!tL(fvX+Oly1U`2K|Ha$yK7SmZlz^0trH@Rir?$*ZX;XY z;v?PNg^kkho@bDzDc%VUNdeBucHinKz>j6SyChmW=jPtJYv3Mi5U!x}_1Q#@uIVe* zo!VHCuD)_=ZZ5|vaC{GUR)Vz^Y8REv+=cUdxO>U^M|fTjH@uhqCr<3?)@5@QJS*m& zM;0tE_H?)Om`QzhgKK<>&?FSgTsh069gM2}My=UqC;M%_j&pjs2O$gBnt`n>Od=a# zm>%B5D|)#zlC@8cdsBDJ8U9z8m5lZ=KGw^fnQU!Y^{;SiGfun%s-wOPce=x!)kvfF zRHWbxutiY9V|TbO%7z)9(Azy9j4g=&=;MB@u{4(u>A6`H`Xf2+uChHFznSCi;3x=J z=eYCbWOF#>G|l9UL?noJ9aFAEuf9njw#y4=84E3p3R0M5fUY=7~a zV-BOpF)eem)Ar^-iG9-`Qm(zzXZ+6GRPz`J|8}uZ`Q^H#GQTsA=8)<{yU+&{hL?Iu0x$aX-M++A zav>w*l<98XlEI8Kx6ksH1nzQP&^P^#kE8;V!sPA$d?bN$;fwpH^Y}@=Wc;=Lo1bJA zBjbVXg#nU*%uEaRPd^eY86rQ3cuv;~k<vZY5IjuNhzlG zPut&gN=RP_{QuX*x4(Yn1;uY$^-SO2qJll4#n6h?<#uiNL~llA-9G@Z6$ae^ delta 259422 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

-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 diff --git a/boards/default/micropython_esp32c2/build/lib/mini_bot.py b/boards/default/micropython_esp32c2/build/lib/mini_bot.py index 42653c0b..27f2a1be 100644 --- a/boards/default/micropython_esp32c2/build/lib/mini_bot.py +++ b/boards/default/micropython_esp32c2/build/lib/mini_bot.py @@ -1,7 +1,7 @@ """ MINI_WCH -Micropython library for the MINI_WCH(TOUCH*2, MIC*1, Buzzer*1, PWM*2, Matrix8x12) +Micropython library for the MINI_WCH(TOUCH*2, MIC*1, Buzzer*1, PWM*2, Matrix8x12, HID) ======================================================= @dahanzimin From the Mixly Team """ @@ -34,6 +34,7 @@ class BOT035(FrameBuffer): self._buffer = bytearray(12) self._brightness = brightness self._touchs = [self.touch(0), self.touch(1)] + self._version = True if self._rreg(0x00) == 0x27 else False super().__init__(self._buffer, _LEDS_W, _LEDS_H, MONO_VLSB) self.reset() self.show() @@ -43,6 +44,8 @@ class BOT035(FrameBuffer): if 0x20 <= ord(ch) <= 0x7f: char_index = 2 + (ord(ch)-32) * _FONT_W return _FONT5x8_CODE[char_index : char_index + _FONT_W] + else: + raise ValueError("Cannot display characters other than ASCLL code") def _uincode(self, ch): '''uincode code font reading data''' @@ -54,7 +57,7 @@ class BOT035(FrameBuffer): elif 0xff01 <= uni <= 0xffe5 : _address = 0x25734 + (uni - 0xff01) * 4 else: - return None, 0 + raise ValueError("Cannot display characters other than GB2312 code") buffer = bytearray(4) flash_read(_Uincode_ADDR + _address, buffer) font_info = buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0] @@ -138,7 +141,7 @@ class BOT035(FrameBuffer): self._buffer[i] = self._buffer[i] | buffer[i] def _ascall_bitmap(self, buffer, x=0): - if -_FONT_W <= x <= _LEDS_W and buffer is not None: + if -_FONT_W <= x <= _LEDS_W: for _x in range(_FONT_W): for _y in range(_FONT_H): if (buffer[_x] >> _y) & 0x1: @@ -146,7 +149,7 @@ class BOT035(FrameBuffer): def _uincode_bitmap(self, buffer, x=0): _buffer, width = buffer - if -width < x < _LEDS_H and _buffer is not None: + if -width < x < _LEDS_H: for _y in range(12): for _x in range(width): if _buffer[_y * ((width + 7) // 8) + _x // 8] & (0x80 >> (_x & 7)): @@ -222,10 +225,9 @@ class BOT035(FrameBuffer): return self._i2c.readfrom(_BOT035_ADDRESS, nbytes)[0] def reset(self): - """Reset SPK, PWM registers to default state""" + """Reset SPK, PWM, HID registers to default state""" self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_SPK, b'\x0A\x00\x00\x00\x20\x4E\x64\x64') - self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, bytes(9)) - + if self._version: self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, bytes(9)) def get_brightness(self): return self._brightness @@ -283,34 +285,38 @@ class BOT035(FrameBuffer): return values[-10] - values[10] def hid_keyboard(self, special=0, general=0, release=True): - self._buf = bytearray(4) - self._buf[0] = special - if type(general) is int: - self._buf[1] = general - elif type(general) is tuple: - for i in range(len(general)): - self._buf[i + 1] = general[i] - self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, self._buf) - if release: - time.sleep_ms(10) - self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, bytes(4)) + if self._version: + self._buf = bytearray(4) + self._buf[0] = special + if type(general) in (tuple, list): + for i in range(len(general)): + if i > 2: break + self._buf[i + 1] = general[i] + else: + self._buf[1] = general + self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, self._buf) + if release: + time.sleep_ms(10) + self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_KB, bytes(4)) + else: + print("Warning: Please upgrade the coprocessor firmware to use this feature") def hid_keyboard_str(self, string, delay=0): - for char in str(string): - self._wreg(_BOT035_STR, ord(char)) - time.sleep_ms(20 + delay) + if self._version: + for char in str(string): + self._wreg(_BOT035_STR, ord(char) & 0xFF) + time.sleep_ms(20 + delay) + else: + print("Warning: Please upgrade the coprocessor firmware to use this feature") def hid_mouse(self, keys=0, move=(0, 0), wheel=0, release=True): - self._buf = bytearray(4) - self._buf[0] = keys - self._buf[1] = move[0] - self._buf[2] = move[1] - self._buf[3] = wheel - self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_MS, self._buf) - if release: - time.sleep_ms(10) - self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_MS, bytes(4)) - + if self._version: + self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_MS, bytes([keys & 0x0F, move[0] & 0xFF, move[1] & 0xFF, wheel & 0xFF])) + if release: + time.sleep_ms(10) + self._i2c.writeto_mem(_BOT035_ADDRESS, _BOT035_MS, bytes(4)) + else: + print("Warning: Please upgrade the coprocessor firmware to use this feature") """Graph module""" HEART=b'\x00\x0c\x1e?~\xfc~?\x1e\x0c\x00\x00' @@ -321,3 +327,6 @@ class BOT035(FrameBuffer): ANGRY=b'\x01\x02\x84B!\x10\x10!B\x84\x02\x01' NO=b'\x00\x00\x00B$\x18\x18$B\x00\x00\x00' YES=b'\x00\x00\x10 @@ \x10\x08\x04\x02\x00' + DOOR_OPEN=b'\x00\x00\xfe\x03\x03\x03\x13\x13\xff\xfe\x00\x00' + DOOR_OPENING=b'\x00\x00\xfe\x03\x03\x15\xf9\x01\x01\xfe\x00\x00' + DOOR_CLOSE=b'\x00\x00\xfe\xfd\x01\x01\x01\x01\x01\xfe\x00\x00' diff --git a/boards/default/micropython_esp32c2/build/lib/ws2812x.py b/boards/default/micropython_esp32c2/build/lib/ws2812x.py index 013b1267..5efee45c 100644 --- a/boards/default/micropython_esp32c2/build/lib/ws2812x.py +++ b/boards/default/micropython_esp32c2/build/lib/ws2812x.py @@ -36,10 +36,10 @@ class NeoPixel: j += self.bpp def write(self): - self.pin.init(self.pin.OUT) - for _ in range(2): - bitstream(self.pin, 0, self.timing, self.rgb_buf) - sleep_us(50) + self.pin.init(self.pin.OUT, value=0) + sleep_us(40) + bitstream(self.pin, 0, self.timing, bytes(3)+self.rgb_buf) + sleep_us(40) self.pin.init(self.pin.IN) def color_chase(self,R, G, B, wait): diff --git a/boards/default/micropython_esp32c2/index.xml b/boards/default/micropython_esp32c2/index.xml index 850db41b..bbd9c05b 100644 --- a/boards/default/micropython_esp32c2/index.xml +++ b/boards/default/micropython_esp32c2/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_func1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,01802910044044010000412000000000001000100010020000;Hello, Mixly!Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistance00Mixly0Mixlywifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"sound"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSVa3S0UKHIy9dDArs北京SVa3S0UKHIy9dDArs北京1SVa3S0UKHIy9dDArs北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi2000004512spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr0121ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensor100midi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comwifi-namewifi-passwordurlurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_func1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,01802910044044010000412000000000001000100010020000;Hello, Mixly!10Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistance00Mixly0Mixlywifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"sound"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSVa3S0UKHIy9dDArs北京SVa3S0UKHIy9dDArs北京1SVa3S0UKHIy9dDArs北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi2000004512spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr0121ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensor100midi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comwifi-namewifi-passwordurlurl \ No newline at end of file diff --git a/boards/default/micropython_esp32c2/main.bundle.js b/boards/default/micropython_esp32c2/main.bundle.js index a3205dba..183948d1 100644 --- a/boards/default/micropython_esp32c2/main.bundle.js +++ b/boards/default/micropython_esp32c2/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Ft,controls_typeLists:()=>Pt,variables_change:()=>Dt,variables_get:()=>Lt,variables_global:()=>ft,variables_set:()=>Nt});var i={};t.r(i),t.d(i,{base_setup:()=>Xt,controls_delay:()=>xt,controls_end_program:()=>yt,controls_except:()=>zt,controls_finally:()=>Qt,controls_flow_statements:()=>wt,controls_for:()=>kt,controls_forEach:()=>Bt,controls_for_range:()=>Ht,controls_if:()=>Vt,controls_if_else:()=>Jt,controls_if_elseif:()=>Kt,controls_if_if:()=>Wt,controls_lambda:()=>Zt,controls_main:()=>Yt,controls_pass:()=>$t,controls_range:()=>bt,controls_repeat_ext:()=>jt,controls_thread:()=>te,controls_try:()=>qt,controls_try_finally:()=>Ut,controls_whileUntil:()=>Gt,do_while:()=>ee,garbage_collection:()=>ie,get_mem_alloc:()=>ne,get_mem_free:()=>se,get_unique_identifier:()=>_e});var n={};t.r(n),t.d(n,{base_map:()=>Le,math_arithmetic:()=>re,math_bit:()=>de,math_constant:()=>ae,math_constant_mp:()=>ue,math_constrain:()=>Ee,math_dec:()=>Te,math_indexer_number:()=>ce,math_map:()=>Re,math_max_min:()=>Me,math_number:()=>pe,math_number_base_conversion:()=>me,math_random:()=>Oe,math_random_seed:()=>ge,math_round:()=>Ce,math_selfcalcu:()=>le,math_to_int:()=>he,math_trig:()=>Ie,text_to_number:()=>Se,text_to_number_skulpt:()=>Ae});var s={};t.r(s),t.d(s,{ascii_to_char:()=>ve,char_to_ascii:()=>Ye,number_to_text:()=>Xe,os_system:()=>_i,text:()=>De,text_capital:()=>ke,text_center:()=>He,text_char:()=>Fe,text_char_at:()=>Ve,text_char_at2:()=>ye,text_char_at3:()=>ei,text_compareTo:()=>ti,text_compare_to:()=>we,text_create_with_container:()=>je,text_create_with_item:()=>Ze,text_encode:()=>ni,text_equals_starts_ends:()=>Ue,text_eval:()=>si,text_find:()=>We,text_format:()=>Qe,text_format_noreturn:()=>ii,text_join:()=>Pe,text_join_seq:()=>Ke,text_length:()=>xe,text_random_char:()=>be,text_replace:()=>Je,text_split:()=>qe,text_strip:()=>ze,text_substring:()=>Ge,text_substring2:()=>Be,text_substring3:()=>$e,text_textarea:()=>fe});var _={};t.r(_),t.d(_,{list_many_input:()=>Di,list_tolist:()=>xi,list_tolist2:()=>ki,list_trig:()=>Ai,lists_2d_get_col_row_data:()=>ri,lists_2d_get_data_with_col_row:()=>ui,lists_append_extend:()=>Mi,lists_change_to:()=>Ni,lists_change_to_general:()=>Fi,lists_clear:()=>ci,lists_create_with:()=>li,lists_create_with2:()=>yi,lists_create_with_container:()=>Ii,lists_create_with_item:()=>Ti,lists_create_with_noreturn:()=>fi,lists_create_with_text:()=>di,lists_create_with_text2:()=>Vi,lists_del_general:()=>Pi,lists_find:()=>Si,lists_getIndex3:()=>bi,lists_getSublist3:()=>Bi,lists_get_index:()=>pi,lists_get_random_item:()=>mi,lists_get_random_sublist:()=>Oi,lists_get_sublist:()=>ai,lists_insert_value:()=>Ei,lists_insert_value2:()=>Ui,lists_pop:()=>Ci,lists_remove_at:()=>gi,lists_remove_at2:()=>wi,lists_reverse:()=>Ri,lists_setIndex3:()=>Gi,lists_set_index:()=>hi,lists_sort:()=>Li,lists_zip:()=>vi,lists_zip_container:()=>Yi,lists_zip_item:()=>Xi});var o={};t.r(o),t.d(o,{dicts_add_change_del:()=>on,dicts_add_or_change:()=>ji,dicts_clear:()=>tn,dicts_create_with:()=>Wi,dicts_create_with_container:()=>Ki,dicts_create_with_item:()=>Ji,dicts_create_with_noreturn:()=>un,dicts_deldict:()=>_n,dicts_delete:()=>Zi,dicts_get:()=>zi,dicts_get_default:()=>Qi,dicts_items:()=>en,dicts_keys:()=>qi,dicts_length:()=>sn,dicts_pop:()=>pn,dicts_setdefault:()=>an,dicts_to_json:()=>ln,dicts_todict:()=>rn,dicts_update:()=>$i,dicts_values:()=>nn,json_to_dicts:()=>dn});var p={};t.r(p),t.d(p,{logic_boolean:()=>On,logic_compare:()=>Tn,logic_compare_continous:()=>hn,logic_is:()=>gn,logic_is_in:()=>cn,logic_negate:()=>mn,logic_null:()=>En,logic_operation:()=>Mn,logic_tobool:()=>Cn,logic_true_or_false:()=>Rn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>Kn,sdcard_use_spi_init:()=>Wn,storage_can_write_ornot:()=>vn,storage_change_dir:()=>kn,storage_close_file:()=>Xn,storage_delete_file:()=>yn,storage_file_seek:()=>Bn,storage_file_tell:()=>bn,storage_file_write:()=>Dn,storage_fileopen:()=>An,storage_fileopen_new:()=>Ln,storage_fileopen_new_encoding:()=>Nn,storage_get_a_line:()=>Pn,storage_get_contents:()=>Fn,storage_get_contents_without_para:()=>fn,storage_get_current_dir:()=>Gn,storage_get_file_size:()=>Vn,storage_get_filename:()=>Yn,storage_is_file:()=>Hn,storage_list_all_files:()=>xn,storage_make_dir:()=>Un,storage_open_file_with_os:()=>Sn,storage_rename:()=>wn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>$n,procedures_callreturn:()=>ts,procedures_defnoreturn:()=>zn,procedures_defreturn:()=>Qn,procedures_ifreturn:()=>es,procedures_mutatorarg:()=>Zn,procedures_mutatorcontainer:()=>jn,procedures_return:()=>is});var r={};t.r(r),t.d(r,{tuple_change_to:()=>Ts,tuple_create_with:()=>ss,tuple_create_with_container:()=>_s,tuple_create_with_item:()=>os,tuple_create_with_noreturn:()=>Os,tuple_create_with_text2:()=>ps,tuple_create_with_text_return:()=>as,tuple_del:()=>ls,tuple_find:()=>hs,tuple_getIndex:()=>us,tuple_getSublist:()=>ms,tuple_get_random_item:()=>Rs,tuple_get_sublist:()=>Es,tuple_join:()=>ds,tuple_length:()=>rs,tuple_max:()=>Is,tuple_totuple:()=>cs,tuple_trig:()=>Ms});var l={};t.r(l),t.d(l,{set_add_discard:()=>Ps,set_clear:()=>Ds,set_create_with:()=>Cs,set_create_with_container:()=>Ss,set_create_with_item:()=>As,set_create_with_text_return:()=>Xs,set_length:()=>Ls,set_operate:()=>fs,set_operate_update:()=>Fs,set_pop:()=>Ns,set_sub:()=>vs,set_toset:()=>xs,set_update:()=>Ys});var d={};t.r(d),t.d(d,{html_content:()=>Gs,html_content_more:()=>Us,html_document:()=>Vs,html_form:()=>ks,html_head_body:()=>Bs,html_style:()=>ws,html_style_color:()=>Ws,html_style_content:()=>Hs,html_text:()=>Ks,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>o_,function_call:()=>n_,function_call_container:()=>s_,function_call_item:()=>__,raw_block:()=>zs,raw_empty:()=>js,raw_expression:()=>Qs,raw_table:()=>qs,text_comment:()=>Zs,text_print_multiple:()=>t_,text_print_multiple_container:()=>e_,text_print_multiple_item:()=>i_,type_check:()=>$s});var T={};t.r(T),t.d(T,{controls_type:()=>l_,controls_typeLists:()=>d_,variables_change:()=>u_,variables_get:()=>p_,variables_global:()=>r_,variables_set:()=>a_});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>g_,base_setup:()=>T_,controls_delay:()=>c_,controls_flow_statements:()=>R_,controls_for:()=>m_,controls_forEach:()=>N_,controls_for_range:()=>O_,controls_if:()=>h_,controls_interrupts:()=>A_,controls_lambda:()=>f_,controls_main:()=>I_,controls_millis:()=>C_,controls_nointerrupts:()=>L_,controls_pass:()=>P_,controls_range:()=>D_,controls_repeat:()=>B_,controls_repeat_ext:()=>X_,controls_thread:()=>v_,controls_try_finally:()=>M_,controls_whileUntil:()=>E_,do_while:()=>Y_,garbage_collection:()=>x_,get_mem_alloc:()=>y_,get_mem_free:()=>V_,get_unique_identifier:()=>b_,reset:()=>S_,time_sleep:()=>F_});var M={};t.r(M),t.d(M,{base_map:()=>oo,math_arithmetic:()=>H_,math_bit:()=>k_,math_constant:()=>U_,math_constant_mp:()=>w_,math_constrain:()=>$_,math_dec:()=>q_,math_indexer_number:()=>io,math_map:()=>Z_,math_max_min:()=>Q_,math_number:()=>G_,math_number_base_conversion:()=>to,math_random:()=>j_,math_random_seed:()=>eo,math_round:()=>no,math_selfcalcu:()=>W_,math_single:()=>K_,math_to_int:()=>z_,math_trig:()=>J_,text_to_number:()=>so,text_to_number_skulpt:()=>_o});var m={};t.r(m),t.d(m,{ascii_to_char:()=>lo,char_to_ascii:()=>Io,number_to_text:()=>To,os_system:()=>Vo,text:()=>po,text_capital:()=>Co,text_center:()=>So,text_char:()=>uo,text_char_at:()=>mo,text_char_at2:()=>Mo,text_char_at3:()=>Xo,text_compareTo:()=>Yo,text_compare_to:()=>Ro,text_encode:()=>xo,text_equals_starts_ends:()=>Eo,text_eval:()=>yo,text_find:()=>Ao,text_format:()=>Fo,text_format_noreturn:()=>Po,text_join:()=>ro,text_join_seq:()=>Lo,text_length:()=>ho,text_random_char:()=>Oo,text_replace:()=>No,text_split:()=>Do,text_strip:()=>fo,text_substring:()=>go,text_substring2:()=>co,text_substring3:()=>vo,text_textarea:()=>ao});var O={};t.r(O),t.d(O,{list_many_input:()=>np,list_tolist:()=>hp,list_tolist2:()=>Mp,list_trig:()=>tp,lists_2d_get_col_row_data:()=>Go,lists_2d_get_data_with_col_row:()=>Bo,lists_append_extend:()=>Wo,lists_change_to:()=>ip,lists_change_to_general:()=>_p,lists_clear:()=>Qo,lists_create_with:()=>Uo,lists_create_with2:()=>pp,lists_create_with_noreturn:()=>sp,lists_create_with_text:()=>wo,lists_create_with_text2:()=>ap,lists_del_general:()=>op,lists_find:()=>jo,lists_getIndex3:()=>up,lists_getSublist3:()=>rp,lists_get_index:()=>ko,lists_get_random_item:()=>Ko,lists_get_random_sublist:()=>Jo,lists_get_sublist:()=>bo,lists_insert_value:()=>qo,lists_insert_value2:()=>dp,lists_pop:()=>$o,lists_remove_at:()=>Zo,lists_remove_at2:()=>Ip,lists_reverse:()=>zo,lists_setIndex3:()=>lp,lists_set_index:()=>Ho,lists_sort:()=>ep,lists_zip:()=>Tp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>fp,dicts_add_or_change:()=>cp,dicts_clear:()=>Sp,dicts_create_with:()=>mp,dicts_create_with_noreturn:()=>vp,dicts_deldict:()=>Dp,dicts_delete:()=>gp,dicts_get:()=>Ep,dicts_get_default:()=>Rp,dicts_items:()=>Ap,dicts_keys:()=>Op,dicts_length:()=>Np,dicts_pop:()=>Fp,dicts_setdefault:()=>Pp,dicts_to_json:()=>Xp,dicts_todict:()=>Yp,dicts_update:()=>Cp,dicts_values:()=>Lp,json_to_dicts:()=>xp});var R={};t.r(R),t.d(R,{logic_boolean:()=>Gp,logic_compare:()=>yp,logic_compare_continous:()=>Vp,logic_is:()=>Hp,logic_is_in:()=>kp,logic_negate:()=>Bp,logic_null:()=>Up,logic_operation:()=>bp,logic_tobool:()=>Wp,logic_true_or_false:()=>wp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>Ta,sdcard_use_spi_init:()=>Ia,storage_can_write_ornot:()=>ta,storage_change_dir:()=>aa,storage_close_file:()=>ia,storage_delete_file:()=>sa,storage_file_seek:()=>pa,storage_file_tell:()=>oa,storage_file_write:()=>Qp,storage_fileopen:()=>Jp,storage_fileopen_new:()=>qp,storage_fileopen_new_encoding:()=>zp,storage_get_a_line:()=>$p,storage_get_contents:()=>Zp,storage_get_contents_without_para:()=>jp,storage_get_current_dir:()=>ua,storage_get_file_size:()=>_a,storage_get_filename:()=>ea,storage_is_file:()=>da,storage_list_all_files:()=>na,storage_make_dir:()=>ra,storage_open_file_with_os:()=>Kp,storage_rename:()=>la});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Oa,procedures_callreturn:()=>ma,procedures_defnoreturn:()=>Ma,procedures_defreturn:()=>ha,procedures_ifreturn:()=>Ea,procedures_return:()=>Ra});var C={};t.r(C),t.d(C,{tuple_change_to:()=>fa,tuple_create_with:()=>ca,tuple_create_with_noreturn:()=>Ya,tuple_create_with_text2:()=>ga,tuple_create_with_text_return:()=>Ca,tuple_del:()=>La,tuple_find:()=>Fa,tuple_getIndex:()=>Sa,tuple_getSublist:()=>va,tuple_get_random_item:()=>xa,tuple_get_sublist:()=>Xa,tuple_join:()=>Na,tuple_length:()=>Aa,tuple_max:()=>Da,tuple_totuple:()=>ya,tuple_trig:()=>Pa});var S={};t.r(S),t.d(S,{set_add_discard:()=>ka,set_clear:()=>Ga,set_create_with:()=>Va,set_create_with_text_return:()=>Ka,set_length:()=>ba,set_operate:()=>Ua,set_operate_update:()=>wa,set_pop:()=>Ba,set_sub:()=>Ha,set_toset:()=>Ja,set_update:()=>Wa});var A={};t.r(A),t.d(A,{html_content:()=>ja,html_content_more:()=>Za,html_document:()=>qa,html_form:()=>tu,html_head_body:()=>Qa,html_style:()=>$a,html_style_content:()=>eu,html_text:()=>iu,html_title:()=>za});var L={};t.r(L),t.d(L,{attribute_access:()=>uu,function_call:()=>au,raw_block:()=>nu,raw_empty:()=>_u,raw_expression:()=>su,raw_table:()=>ou,type_check:()=>pu});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>cu,actuator_extern_get_led_state:()=>gu,actuator_extern_led_bright:()=>Ru,actuator_extern_led_brightness:()=>Cu,actuator_ms32006_dcmotor:()=>vu,actuator_ms32006_init:()=>Pu,actuator_ms32006_stepper:()=>Yu,actuator_neopixel_init:()=>Xu,actuator_neopixel_rgb:()=>xu,actuator_neopixel_rgb_all:()=>yu,actuator_neopixel_write:()=>Vu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>mu,esp32_music_pitch:()=>Iu,esp32_music_pitch_init:()=>du,esp32_music_pitch_with_time:()=>Tu,esp32_music_play_list:()=>hu,esp32_music_reset_extern:()=>Ou,esp32_music_set_tempo_extern:()=>Mu,esp32_music_stop:()=>Eu,mixbot_actuator_extern_get_addr:()=>ir,mixbot_actuator_extern_set_addr:()=>nr,mixbot_addr_extern:()=>ku,robot_led_extern:()=>Ju,robot_led_extern_get_value:()=>qu,robot_motor_extern:()=>Hu,robot_motor_extern_get_speed:()=>Wu,robot_servo_extern_absolute_run:()=>Zu,robot_servo_extern_get_status:()=>zu,robot_servo_extern_relative_continue:()=>er,robot_servo_extern_relative_origin:()=>$u,robot_servo_extern_relative_run:()=>tr,robot_servo_extern_stop:()=>ju,robot_servo_extern_stop_mode:()=>Qu,robot_traffic_light_extern:()=>Ku,servo_get_angle:()=>fu,servo_get_speed:()=>Fu,servo_init:()=>Su,servo_move:()=>Au,servo_set_angle:()=>Nu,servo_set_speed:()=>Du,servo_speed_360:()=>Lu,syn6288_builtin_voice:()=>Uu,syn6288_get_voice:()=>Gu,syn6288_set_voice:()=>Bu,syn6288_tts_play:()=>wu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>xr,actuator_dc_motor_stop:()=>yr,actuator_get_led_bright:()=>ar,actuator_get_led_state:()=>ur,actuator_led_bright:()=>pr,actuator_led_brightness:()=>rr,actuator_mixbot_buzzer_on_off:()=>Ur,actuator_mixgo_nova_mic_get:()=>Kr,actuator_mixgo_nova_mic_set:()=>Wr,actuator_mixgo_nova_onboard_music_pitch:()=>Zr,actuator_mixgo_nova_onboard_music_stop:()=>$r,actuator_mixgo_nova_play_audio:()=>Qr,actuator_mixgo_nova_play_online_audio:()=>jr,actuator_mixgo_nova_record_audio:()=>zr,actuator_mixgo_nova_voice_get:()=>qr,actuator_mixgo_nova_voice_set:()=>Jr,actuator_mixgo_zero_led_color:()=>lr,actuator_onboard_neopixel_rgb:()=>mr,actuator_onboard_neopixel_rgb_all:()=>Or,actuator_onboard_neopixel_rgb_show_all_chase:()=>Rr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>Er,actuator_onboard_neopixel_write:()=>cr,actuator_rm_onboard_neopixel_rgb:()=>gr,actuator_rm_onboard_neopixel_rgb_all:()=>Cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Sr,actuator_stepper_keep:()=>Yr,actuator_stepper_stop:()=>Xr,analog_keyboard_input:()=>nl,analog_keyboard_str:()=>al,analog_mouse_input:()=>ol,bitbot_motor:()=>Hr,bitbot_move:()=>wr,bitbot_stop:()=>kr,cc_number:()=>Mr,esp32_music_get_tempo:()=>Lr,esp32_music_reset:()=>Nr,esp32_music_set_tempo:()=>Ar,esp32_onboard_music_pitch:()=>Dr,esp32_onboard_music_pitch_with_time:()=>fr,esp32_onboard_music_play_list:()=>Pr,esp32_onboard_music_stop:()=>Fr,general_key:()=>_l,get_power_output:()=>el,ledswitch:()=>or,mixbot_motor:()=>Gr,mixbot_motor_status:()=>Vr,mixbot_move:()=>br,mixbot_stop:()=>Br,mouse_key:()=>pl,number:()=>_r,rm_actuator_get_led_bright:()=>Ir,rm_actuator_get_led_state:()=>Tr,rm_actuator_led_bright:()=>dr,rm_actuator_led_brightness:()=>hr,rm_motor:()=>vr,set_all_power_output:()=>il,set_power_output:()=>tl,special_key:()=>sl});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>wl,ai_sensor_ailocal_class:()=>Pl,ai_sensor_ailocal_class_result:()=>vl,ai_sensor_ailocal_train:()=>Fl,ai_sensor_asr_recognize:()=>Vl,ai_sensor_audio_play:()=>Xl,ai_sensor_audio_record:()=>Yl,ai_sensor_barcode:()=>Ml,ai_sensor_circle:()=>gl,ai_sensor_classifier_faces:()=>Ul,ai_sensor_color:()=>Ll,ai_sensor_color_chases:()=>fl,ai_sensor_color_chases_result:()=>Dl,ai_sensor_config:()=>Tl,ai_sensor_face:()=>Gl,ai_sensor_find_20objects:()=>kl,ai_sensor_find_barcodes:()=>ml,ai_sensor_find_circles:()=>Cl,ai_sensor_find_colors:()=>Nl,ai_sensor_find_licenseplates:()=>Bl,ai_sensor_find_lines:()=>cl,ai_sensor_find_qrcodes:()=>Il,ai_sensor_find_rects:()=>Al,ai_sensor_find_tags:()=>El,ai_sensor_licenseplate:()=>bl,ai_sensor_line:()=>Rl,ai_sensor_qrcode:()=>ll,ai_sensor_qrcode_lite:()=>dl,ai_sensor_rect:()=>Sl,ai_sensor_rgb:()=>hl,ai_sensor_tag:()=>Ol,ai_sensor_use_uart_init:()=>rl,ai_sensor_yolo_recognize:()=>xl,ai_sensor_yolo_recognize_result:()=>yl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Kl,MICROPYTHON_AI_Speech_unit:()=>Wl,MICROPYTHON_AI_client:()=>Hl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>pd,mpython_blynk_app_notify:()=>td,mpython_blynk_email:()=>nd,mpython_blynk_get_timers:()=>sd,mpython_blynk_on_connected:()=>jl,mpython_blynk_on_disconnected:()=>Ql,mpython_blynk_run:()=>$l,mpython_blynk_sensor_data_to_app:()=>od,mpython_blynk_set_property:()=>id,mpython_blynk_setup:()=>ad,mpython_blynk_stop_timers:()=>ed,mpython_blynk_sync_virtual:()=>zl,mpython_blynk_terminal_widget_vpin:()=>ql,mpython_blynktimer:()=>_d,mpython_blynktimer_run:()=>Zl});var v={};t.r(v),t.d(v,{cc_g1_init:()=>ud,cc_g1_read_bat:()=>rd,cc_g1_read_joystick:()=>ld,cc_g1_read_key:()=>dd,cc_g1_turnoff:()=>Id});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>gd,ce_go_get_led_bright:()=>md,ce_go_get_led_state:()=>Od,ce_go_hall_attachInterrupt:()=>Cd,ce_go_hall_data:()=>Ad,ce_go_hall_initialize:()=>Sd,ce_go_led_bright:()=>Md,ce_go_led_brightness:()=>Ed,ce_go_light_number:()=>hd,ce_go_pin_light:()=>Fd,ce_go_pin_near:()=>Nd,ce_go_pin_near_line:()=>Ld,ce_go_pin_near_state_change:()=>Dd,ce_go_stepper_keep:()=>Rd,ce_go_stepper_stop:()=>cd,sensor_mixgome_eulerangles:()=>fd});var X={};t.r(X),t.d(X,{communicate_bluetooth_central_init:()=>dI,communicate_bluetooth_connect:()=>MI,communicate_bluetooth_disconnect:()=>mI,communicate_bluetooth_handle:()=>gI,communicate_bluetooth_is_connected:()=>EI,communicate_bluetooth_mac:()=>hI,communicate_bluetooth_peripheral_init:()=>II,communicate_bluetooth_recv:()=>RI,communicate_bluetooth_recv_only:()=>cI,communicate_bluetooth_scan:()=>TI,communicate_bluetooth_send:()=>OI,communicate_espnow_init:()=>CI,communicate_espnow_init_new:()=>SI,communicate_i2c_available:()=>qd,communicate_i2c_init:()=>Xd,communicate_i2c_master_read:()=>Jd,communicate_i2c_onboard:()=>vd,communicate_i2c_read:()=>xd,communicate_i2c_scan:()=>Vd,communicate_i2c_write:()=>yd,communicate_ir_recv_init:()=>iI,communicate_ir_send_init:()=>pI,communicate_ow_init:()=>Qd,communicate_ow_read:()=>Zd,communicate_ow_reset:()=>eI,communicate_ow_scan:()=>jd,communicate_ow_select:()=>tI,communicate_ow_write:()=>$d,communicate_spi_buffer:()=>Gd,communicate_spi_init:()=>bd,communicate_spi_onboard:()=>Yd,communicate_spi_read:()=>Ud,communicate_spi_read_output:()=>wd,communicate_spi_readinto:()=>kd,communicate_spi_readinto_output:()=>Hd,communicate_spi_set:()=>Bd,communicate_spi_write:()=>Wd,communicate_spi_write_readinto:()=>Kd,espnow_radio_channel:()=>FI,espnow_radio_channel_new:()=>vI,espnow_radio_on_off:()=>YI,espnow_radio_rec:()=>xI,espnow_radio_recv:()=>VI,espnow_radio_recv_certain_msg:()=>bI,espnow_radio_recv_certain_msg_new:()=>GI,espnow_radio_recv_msg:()=>yI,espnow_radio_recv_new:()=>BI,espnow_radio_send:()=>XI,espnow_radio_txpower:()=>PI,i2c_available:()=>aT,i2c_init:()=>qI,i2c_master_reader2:()=>pT,i2c_read:()=>zI,i2c_scan:()=>jI,i2c_slave_onreceive:()=>zd,i2c_write:()=>QI,internal_variable:()=>nI,ir_recv_timeout:()=>oI,ir_transmit_busy:()=>lI,ir_transmit_conventional_data:()=>aI,ir_transmit_raw_code:()=>rI,ir_transmit_study_code:()=>uI,ir_whether_recv:()=>_I,lora_init:()=>UI,lora_packet:()=>wI,lora_recv:()=>HI,lora_send:()=>kI,network_espnow_info:()=>LI,network_espnow_mac:()=>AI,network_espnow_recv:()=>NI,network_espnow_recv_handle:()=>fI,network_espnow_send:()=>DI,recv_fun:()=>sI,spi_buffer:()=>tT,spi_init:()=>ZI,spi_read:()=>eT,spi_read_output:()=>iT,spi_readinto:()=>nT,spi_readinto_output:()=>sT,spi_set:()=>$I,spi_write:()=>_T,spi_write_readinto:()=>oT,urequests_attribute:()=>KI,urequests_get:()=>WI,urequests_method:()=>JI});var x={};t.r(x),t.d(x,{display_animate:()=>bT,display_blink_rate:()=>XT,display_circle:()=>BT,display_color_seclet:()=>jT,display_draw_4strings:()=>DT,display_fill:()=>VT,display_get_screen_image:()=>YT,display_help:()=>UT,display_image_size:()=>fT,display_lcd_use_i2c_init:()=>nh,display_line:()=>PT,display_line_arbitrarily:()=>vT,display_matrix_extern_bright_point:()=>RT,display_matrix_extern_bright_screen:()=>gT,display_matrix_extern_clear:()=>CT,display_matrix_extern_get_pixel:()=>ET,display_matrix_extern_get_screen_pixel:()=>cT,display_matrix_extern_image_builtins:()=>ST,display_matrix_extern_scroll_string:()=>TT,display_matrix_extern_scroll_string_delay:()=>hT,display_matrix_extern_shift:()=>OT,display_matrix_extern_show_frame_string:()=>MT,display_matrix_extern_show_frame_string_delay:()=>mT,display_matrix_extern_show_image:()=>dT,display_matrix_extern_show_image_or_string_delay:()=>IT,display_matrix_use_i2c_init:()=>lT,display_oled_drawPixel:()=>kT,display_oled_showBitmap:()=>wT,display_oled_use_i2c_init:()=>ah,display_onoff:()=>yT,display_rect:()=>FT,display_rgb_color:()=>xT,display_tm1650_power:()=>WT,display_tm1650_set_brightness:()=>qT,display_tm1650_show_dot:()=>JT,display_tm1650_show_num:()=>KT,display_tm_use_i2c_init:()=>HT,display_triangle:()=>GT,display_use_i2c_init:()=>NT,extern_oled_bright_point:()=>Eh,extern_oled_clear:()=>Rh,extern_oled_get_pixel:()=>Oh,extern_oled_hvline:()=>gh,extern_oled_line:()=>Ch,extern_oled_scroll_string:()=>Ih,extern_oled_scroll_string_delay:()=>Th,extern_oled_shape_rect:()=>ch,extern_oled_shift:()=>mh,extern_oled_show_frame_string:()=>hh,extern_oled_show_frame_string_delay:()=>Mh,extern_oled_show_image:()=>uh,extern_oled_show_image_or_string_delay:()=>dh,extern_oled_show_image_xy:()=>rh,extern_oled_show_string:()=>lh,lcd_backlight:()=>oh,lcd_clear:()=>ph,lcd_print_string:()=>_h,lcd_show_image_or_string_delay:()=>sh,matrix_extern_image_arithmetic:()=>AT,matrix_extern_image_invert:()=>LT,tft_fill:()=>eh,tft_line_arbitrarily:()=>ih,tft_scroll_string_delay:()=>$T,tft_show_frame_string_delay:()=>th,tft_show_image_or_string_delay:()=>ZT,tft_show_image_xy:()=>QT,tft_use_spi_init:()=>zT});var y={};t.r(y),t.d(y,{bitbot_display_image_create:()=>aM,display_bright_point:()=>bh,display_bright_screen:()=>Gh,display_clear:()=>Uh,display_get_pixel:()=>Vh,display_get_screen_pixel:()=>Bh,display_image_builtins:()=>vh,display_image_builtins_all:()=>Yh,display_image_create:()=>Ph,display_scroll_string:()=>Nh,display_scroll_string_delay:()=>Dh,display_shift:()=>yh,display_show_frame_string:()=>fh,display_show_frame_string_delay:()=>Fh,display_show_image:()=>Ah,display_show_image_or_string_delay:()=>Lh,image_arithmetic:()=>Xh,image_invert:()=>xh,mixbot_display_bright_screen:()=>oM,mixbot_display_get_ambientbright:()=>_M,mixbot_display_get_screen_pixel:()=>sM,mixbot_display_image_create:()=>nM,mixbot_display_rotate:()=>pM,mixgo_display_image_create_new:()=>Hh,mixgome_display_font:()=>Wh,mixgome_display_image_create:()=>wh,mixgomini_display_image_create:()=>kh,mpython_display_hvline:()=>tM,mpython_display_line:()=>eM,mpython_display_shape_rect:()=>$h,mpython_pbm_image:()=>iM,onboard_oled_bright_point:()=>Zh,onboard_oled_scroll_string_delay:()=>Qh,onboard_oled_show_frame_string_delay:()=>jh,onboard_oled_show_image:()=>Kh,onboard_oled_show_image_or_string_delay:()=>zh,onboard_oled_show_image_xy:()=>Jh,onboard_oled_show_string:()=>qh,onboard_tft_bright_point:()=>cM,onboard_tft_bright_screen:()=>SM,onboard_tft_clear:()=>gM,onboard_tft_clock_clear:()=>FM,onboard_tft_clock_draw:()=>fM,onboard_tft_clock_get_rtctime:()=>NM,onboard_tft_clock_init:()=>LM,onboard_tft_clock_set_time:()=>DM,onboard_tft_display_hvline:()=>mM,onboard_tft_display_line:()=>OM,onboard_tft_display_shape_circle:()=>PM,onboard_tft_display_shape_rect:()=>MM,onboard_tft_fill:()=>AM,onboard_tft_get_pixel:()=>RM,onboard_tft_get_screen_pixel:()=>CM,onboard_tft_scroll_string:()=>dM,onboard_tft_scroll_string_delay:()=>IM,onboard_tft_shift:()=>EM,onboard_tft_show_frame_string:()=>TM,onboard_tft_show_frame_string_delay:()=>hM,onboard_tft_show_image:()=>uM,onboard_tft_show_image_or_string_delay:()=>lM,onboard_tft_show_image_xy:()=>rM});var V={};t.r(V),t.d(V,{factory_block:()=>wM,factory_block_return:()=>kM,factory_block_return_with_textarea:()=>WM,factory_block_with_textarea:()=>HM,factory_callMethod_noreturn:()=>GM,factory_callMethod_return:()=>UM,factory_create_with_container:()=>yM,factory_create_with_item:()=>VM,factory_declare:()=>BM,factory_from_import:()=>YM,factory_function_noreturn:()=>xM,factory_function_return:()=>bM,factory_import:()=>XM,folding_block:()=>KM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>Tm,inout_analog_atten:()=>im,inout_analog_read:()=>em,inout_analog_read_init:()=>am,inout_analog_write:()=>ZM,inout_analog_write_init:()=>pm,inout_analog_write_set:()=>$M,inout_analog_write_set_freq:()=>lm,inout_digital_init:()=>_m,inout_digital_read:()=>QM,inout_digital_write:()=>zM,inout_highlow:()=>qM,inout_pinMode:()=>rm,inout_pin_attachInterrupt:()=>sm,inout_pin_pressed:()=>nm,inout_pin_pressed_init:()=>um,inout_pwm_analog_write:()=>jM,inout_pwm_analog_write_init:()=>om,inout_pwm_analog_write_set_freq:()=>tm,pin_pressed:()=>Im,pin_pressed_init:()=>dm});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>bm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Vm,IOT_EMQX_PING:()=>xm,IOT_FORMATTING:()=>Ym,IOT_FORMAT_STRING:()=>Xm,IOT_MIXIO_NTP:()=>ym,IOT_MIXIO_PUBLISH:()=>Lm,IOT_MIXIO_SUBSCRIBE:()=>Nm,iot_checkonenet:()=>qm,iot_client_onboard:()=>Gm,iot_create_with_item:()=>Sm,iot_http_client:()=>Um,iot_http_data:()=>wm,iot_mixio_check:()=>Fm,iot_mixio_connect:()=>Am,iot_mixio_connect_only:()=>fm,iot_mixio_disconnect:()=>Dm,iot_mixio_format_msg:()=>vm,iot_mixio_format_topic:()=>Pm,iot_mixly_key:()=>Bm,iot_mqtt_client:()=>km,iot_mqtt_data:()=>Hm,iot_onenet_check:()=>Em,iot_onenet_connect:()=>mm,iot_onenet_disconnect:()=>Om,iot_onenet_publish:()=>cm,iot_onenet_publish_dict:()=>Rm,iot_onenetconnect:()=>Km,iot_onenetdisconnect:()=>Jm,iot_publish:()=>zm,iot_publish_container:()=>gm,iot_publish_item:()=>Cm,iot_wifi_connect:()=>Mm,iot_wificonnect:()=>Wm});var G={};t.r(G),t.d(G,{network_ap_connect:()=>rO,network_connect:()=>eO,network_get_connect:()=>pO,network_get_wifi:()=>uO,network_init:()=>jm,network_is_active:()=>$m,network_open:()=>Zm,network_scan:()=>tO,network_server:()=>lO,network_socket_accept:()=>MO,network_socket_bind:()=>IO,network_socket_close:()=>cO,network_socket_connect:()=>TO,network_socket_init:()=>dO,network_socket_listen:()=>hO,network_socket_receive:()=>mO,network_socket_receive_from:()=>EO,network_socket_send:()=>OO,network_socket_send_to:()=>RO,network_stop:()=>aO,network_wifi_connect:()=>iO,ntptime_address:()=>LO,ntptime_time:()=>AO,requests_attribute:()=>CO,requests_get:()=>gO,requests_method:()=>SO,urequests_connect_url:()=>_O,urequests_response:()=>oO,urequests_wifi_connect:()=>nO,urequests_wifi_url:()=>sO});var U={};t.r(U),t.d(U,{HCSR04:()=>NE,PS2_Button:()=>PE,PS2_Buttons:()=>YE,PS2_Buttons_new:()=>VE,PS2_State:()=>vE,PS2_init:()=>DE,PS2_init_new:()=>xE,PS2_stk:()=>XE,PS2_stk_new:()=>bE,PS2_vibration:()=>FE,PS2_vibration_new:()=>yE,esp32_s2_weather_init:()=>CE,esp32_s2_weather_rain:()=>AE,esp32_s2_weather_wd:()=>SE,esp32_s2_weather_ws:()=>LE,extern_rfid_read:()=>uE,extern_rfid_readcontent:()=>lE,extern_rfid_readid:()=>rE,extern_rfid_status:()=>TE,extern_rfid_write:()=>dE,extern_rfid_write_return:()=>IE,gnss_get_data:()=>wE,gnss_have_data:()=>UE,mixbot_sensor_extern_get_addr:()=>zE,mixbot_sensor_extern_set_addr:()=>QE,pm25_get_data:()=>GE,robot_button_extern_get_value:()=>kE,robot_color_extern_get_value:()=>qE,robot_infrared_extern_get_value:()=>WE,robot_infrared_extern_grey_get_value:()=>KE,robot_potentiometer_extern_get_value:()=>JE,robot_sonar_extern_get_value:()=>jE,robot_sonar_extern_led:()=>ZE,robot_touch_extern_get_value:()=>HE,sensor_APDS9960_extern:()=>WO,sensor_LTR308_extern:()=>KO,sensor_LTR390UV_extern:()=>qO,sensor_MAX30102_extern:()=>HO,sensor_QMC5883L_extern:()=>$O,sensor_VL530LX_extern:()=>zO,sensor_adxl345_get_acceleration:()=>YO,sensor_aht11_extern:()=>jO,sensor_bmp:()=>BO,sensor_compass_reset:()=>pE,sensor_dht11:()=>xO,sensor_ds18x20:()=>UO,sensor_hp203_extern:()=>ZO,sensor_light_level:()=>XO,sensor_lm35:()=>wO,sensor_ltr381_extern:()=>JO,sensor_mixgo_extern_button_attachInterrupt:()=>PO,sensor_mixgo_extern_button_get_presses:()=>FO,sensor_mixgo_extern_button_is_pressed:()=>DO,sensor_mixgo_extern_button_was_pressed:()=>fO,sensor_mixgo_extern_light:()=>yO,sensor_mixgo_extern_pin_near:()=>bO,sensor_mixgo_extern_sound:()=>VO,sensor_mixgoce_hot_wheel_degrees:()=>gE,sensor_mixgoce_hot_wheel_is_touched:()=>cE,sensor_mpu9250_attachGestureInterrupt:()=>vO,sensor_mpu9250_calibrate_compass:()=>sE,sensor_mpu9250_field_strength:()=>oE,sensor_mpu9250_gesture:()=>tE,sensor_mpu9250_get_acceleration:()=>eE,sensor_mpu9250_get_gyro:()=>nE,sensor_mpu9250_get_magnetic:()=>iE,sensor_mpu9250_temperature:()=>_E,sensor_sht:()=>GO,sensor_shtc3_extern:()=>QO,sensor_use_i2c_init:()=>kO,sensor_use_spi_init:()=>aE,sensor_use_uart_init:()=>BE,sensor_weather_solo_init:()=>$E,sensor_weather_solo_rain:()=>iR,sensor_weather_solo_wd:()=>tR,sensor_weather_solo_ws:()=>eR,weather_data:()=>hE,weather_have_data:()=>ME,weather_set_label:()=>OE,weather_set_label_container:()=>EE,weather_set_label_item:()=>RE,weather_uart_mixio:()=>mE});var w={};t.r(w),t.d(w,{HCSR04:()=>ER,RTC_set_date:()=>OR,RTC_set_time:()=>mR,bitbot_als_num:()=>Sc,dht11:()=>Pc,number1:()=>cR,number2:()=>gR,number3:()=>CR,number4:()=>SR,number5:()=>AR,number6:()=>LR,number7:()=>NR,onboard_RTC_get_time:()=>XR,onboard_RTC_get_timestamp:()=>xR,onboard_RTC_set_datetime:()=>bR,onboard_RTC_settime_string:()=>VR,onboard_RTC_timestamp_totuple:()=>yR,rfid_readcontent:()=>KR,rfid_readid:()=>WR,rfid_write:()=>JR,rfid_write_return:()=>qR,sensor_LTR308:()=>GR,sensor_aht11:()=>wR,sensor_bitbot_ALS:()=>Cc,sensor_button_get_presses:()=>Nc,sensor_button_is_pressed:()=>Ac,sensor_button_was_pressed:()=>Lc,sensor_distance_hrsc04:()=>MR,sensor_eulerangles:()=>QR,sensor_field_strength:()=>vc,sensor_get_acceleration:()=>zR,sensor_get_temperature:()=>kR,sensor_hp203:()=>HR,sensor_light:()=>Fc,sensor_mixbot_get_gyro:()=>gc,sensor_mixbot_patrol_calibrate:()=>Ec,sensor_mixbot_patrol_value:()=>Rc,sensor_mixbot_temperature:()=>cc,sensor_mixgo_LTR308:()=>YR,sensor_mixgo_button_attachInterrupt:()=>pR,sensor_mixgo_button_get_presses:()=>oR,sensor_mixgo_button_is_pressed:()=>sR,sensor_mixgo_button_was_pressed:()=>_R,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>pc,sensor_mixgo_cc_mmc5603_get_angle:()=>oc,sensor_mixgo_cc_mmc5603_get_magnetic:()=>_c,sensor_mixgo_light:()=>RR,sensor_mixgo_nova_LTR308:()=>vR,sensor_mixgo_nova_pin_near:()=>PR,sensor_mixgo_pin_near:()=>FR,sensor_mixgo_pin_near_double:()=>fR,sensor_mixgo_pin_near_single:()=>DR,sensor_mixgo_pin_pressed:()=>dR,sensor_mixgo_touch_slide:()=>hR,sensor_mixgocar42_button_attachInterrupt:()=>lR,sensor_mixgocar42_button_get_presses:()=>rR,sensor_mixgocar42_button_is_pressed:()=>aR,sensor_mixgocar42_button_was_pressed:()=>uR,sensor_mixgocar_battery_left:()=>Oc,sensor_mixgocar_pin_near:()=>Mc,sensor_mixgocar_pin_near_line:()=>hc,sensor_mixgocar_pin_near_state_change:()=>mc,sensor_mixgoce_pin_pressed:()=>IR,sensor_mixgoce_temperature:()=>uc,sensor_mixgome_temperature:()=>ac,sensor_mpython_pin_pressed:()=>TR,sensor_mpython_qmi8658_get_gyro:()=>rc,sensor_mpython_qmi8658_temperature:()=>lc,sensor_onboard_compass_reset:()=>sc,sensor_onboard_mpu9250_calibrate_compass:()=>ec,sensor_onboard_mpu9250_field_strength:()=>nc,sensor_onboard_mpu9250_gesture:()=>jR,sensor_onboard_mpu9250_get_acceleration:()=>ZR,sensor_onboard_mpu9250_get_gyro:()=>tc,sensor_onboard_mpu9250_get_magnetic:()=>$R,sensor_onboard_mpu9250_temperature:()=>ic,sensor_pin_near:()=>fc,sensor_pin_pressed:()=>Dc,sensor_rm_acc:()=>Tc,sensor_rm_battery_left:()=>Ic,sensor_rm_pin_near_double:()=>dc,sensor_rtc_init:()=>BR,sensor_sound:()=>UR,sensor_temperature:()=>Yc});var k={};t.r(k),t.d(k,{serial_any:()=>Uc,serial_begin:()=>Kc,serial_print:()=>yc,serial_print_byte:()=>xc,serial_print_hex:()=>bc,serial_println:()=>Vc,serial_read_from_ai:()=>eg,serial_readline:()=>wc,serial_readstr:()=>Gc,serial_readstr_until:()=>kc,serial_receive_data_event:()=>Bc,serial_send_to_ai:()=>tg,serial_softserial:()=>Wc,serial_softserial_new:()=>Hc,system_input:()=>Jc,system_print:()=>qc,system_print_container:()=>Zc,system_print_end:()=>Qc,system_print_inline:()=>zc,system_print_item:()=>$c,system_print_many:()=>jc});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>_g,Timer_init:()=>Og,base_delay:()=>cg,controls_delay:()=>sg,controls_delay_new:()=>ng,controls_millis:()=>pg,controls_uname:()=>ug,raw_block:()=>ag,reset:()=>og,system_bitbot_shutdown:()=>mg,system_machine_reset:()=>Mg,system_ticks_diff:()=>dg,system_timer:()=>lg,system_timer_init:()=>Ig,system_wdt_feed:()=>hg,system_wdt_init:()=>Tg,time_ticks_diff:()=>Rg,timer:()=>rg,timer2:()=>Eg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>Sg,WEATHER_HOUR:()=>Ag,WEATHER_NOW:()=>Cg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>Wg,actuator_extern_get_led_state:()=>Kg,actuator_extern_led_bright:()=>Hg,actuator_extern_led_brightness:()=>Jg,actuator_ms32006_dcmotor:()=>Yg,actuator_ms32006_init:()=>vg,actuator_ms32006_stepper:()=>Xg,actuator_neopixel_init:()=>qg,actuator_neopixel_rgb:()=>jg,actuator_neopixel_rgb_all:()=>zg,actuator_neopixel_write:()=>Qg,actuator_use_uart_init:()=>Zg,esp32_music_get_tempo_extern:()=>Gg,esp32_music_pitch:()=>yg,esp32_music_pitch_init:()=>xg,esp32_music_pitch_with_time:()=>Vg,esp32_music_play_list:()=>Ug,esp32_music_reset_extern:()=>wg,esp32_music_set_tempo_extern:()=>Bg,esp32_music_stop:()=>bg,mixbot_actuator_extern_get_addr:()=>MC,mixbot_actuator_extern_set_addr:()=>mC,mixbot_addr_extern:()=>nC,robot_led_extern:()=>pC,robot_led_extern_get_value:()=>aC,robot_motor_extern:()=>sC,robot_motor_extern_get_speed:()=>_C,robot_servo_extern_absolute_run:()=>dC,robot_servo_extern_get_status:()=>uC,robot_servo_extern_relative_continue:()=>hC,robot_servo_extern_relative_origin:()=>IC,robot_servo_extern_relative_run:()=>TC,robot_servo_extern_stop:()=>lC,robot_servo_extern_stop_mode:()=>rC,robot_traffic_light_extern:()=>oC,servo_get_angle:()=>Fg,servo_get_speed:()=>Pg,servo_init:()=>Lg,servo_move:()=>kg,servo_set_angle:()=>Dg,servo_set_speed:()=>fg,servo_speed_360:()=>Ng,syn6288_builtin_voice:()=>eC,syn6288_get_voice:()=>tC,syn6288_set_voice:()=>$g,syn6288_tts_play:()=>iC});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>WC,actuator_dc_motor_stop:()=>KC,actuator_get_led_bright:()=>DC,actuator_get_led_state:()=>fC,actuator_led_bright:()=>NC,actuator_led_brightness:()=>FC,actuator_mixbot_buzzer_on_off:()=>jC,actuator_mixgo_nova_mic_get:()=>iS,actuator_mixgo_nova_mic_set:()=>eS,actuator_mixgo_nova_onboard_music_pitch:()=>aS,actuator_mixgo_nova_onboard_music_stop:()=>uS,actuator_mixgo_nova_play_audio:()=>oS,actuator_mixgo_nova_play_online_audio:()=>pS,actuator_mixgo_nova_record_audio:()=>_S,actuator_mixgo_nova_voice_get:()=>sS,actuator_mixgo_nova_voice_set:()=>nS,actuator_mixgo_zero_led_color:()=>PC,actuator_onboard_neopixel_rgb:()=>bC,actuator_onboard_neopixel_rgb_all:()=>BC,actuator_onboard_neopixel_rgb_show_all_chase:()=>GC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>UC,actuator_onboard_neopixel_write:()=>VC,actuator_stepper_keep:()=>kC,actuator_stepper_stop:()=>HC,analog_keyboard_input:()=>IS,analog_keyboard_str:()=>OS,analog_mouse_input:()=>MS,bitbot_motor:()=>tS,bitbot_move:()=>ZC,bitbot_stop:()=>$C,cc_number:()=>vC,esp32_music_get_tempo:()=>EC,esp32_music_reset:()=>SC,esp32_music_set_tempo:()=>OC,esp32_onboard_music_pitch:()=>RC,esp32_onboard_music_pitch_with_time:()=>cC,esp32_onboard_music_play_list:()=>CC,esp32_onboard_music_stop:()=>gC,general_key:()=>hS,get_power_output:()=>lS,ledswitch:()=>LC,mixbot_motor:()=>QC,mixbot_motor_status:()=>JC,mixbot_move:()=>qC,mixbot_stop:()=>zC,mouse_key:()=>mS,number:()=>AC,rm_actuator_get_led_bright:()=>XC,rm_actuator_get_led_state:()=>xC,rm_actuator_led_bright:()=>YC,rm_actuator_led_brightness:()=>yC,rm_motor:()=>wC,set_all_power_output:()=>dS,set_power_output:()=>rS,special_key:()=>TS});var q={};t.r(q),t.d(q,{ai_sensor_20object:()=>jS,ai_sensor_ailocal_class:()=>GS,ai_sensor_ailocal_class_result:()=>US,ai_sensor_ailocal_train:()=>BS,ai_sensor_asr_recognize:()=>KS,ai_sensor_audio_play:()=>kS,ai_sensor_audio_record:()=>wS,ai_sensor_barcode:()=>AS,ai_sensor_circle:()=>PS,ai_sensor_classifier_faces:()=>QS,ai_sensor_color:()=>xS,ai_sensor_color_chases:()=>bS,ai_sensor_color_chases_result:()=>VS,ai_sensor_config:()=>cS,ai_sensor_face:()=>zS,ai_sensor_find_20objects:()=>ZS,ai_sensor_find_barcodes:()=>LS,ai_sensor_find_circles:()=>vS,ai_sensor_find_colors:()=>yS,ai_sensor_find_licenseplates:()=>qS,ai_sensor_find_lines:()=>FS,ai_sensor_find_qrcodes:()=>SS,ai_sensor_find_rects:()=>XS,ai_sensor_find_tags:()=>DS,ai_sensor_licenseplate:()=>JS,ai_sensor_line:()=>fS,ai_sensor_qrcode:()=>CS,ai_sensor_qrcode_lite:()=>RS,ai_sensor_rect:()=>YS,ai_sensor_rgb:()=>gS,ai_sensor_tag:()=>NS,ai_sensor_use_uart_init:()=>ES,ai_sensor_yolo_recognize:()=>HS,ai_sensor_yolo_recognize_result:()=>WS});var z={};t.r(z),t.d(z,{MICROPYTHON_AI_Speech_asr:()=>eA,MICROPYTHON_AI_Speech_unit:()=>tA,MICROPYTHON_AI_client:()=>$S});var Q={};t.r(Q),t.d(Q,{mpython_blynk_app_data:()=>IA,mpython_blynk_app_notify:()=>aA,mpython_blynk_email:()=>TA,mpython_blynk_get_timers:()=>rA,mpython_blynk_on_connected:()=>_A,mpython_blynk_on_disconnected:()=>sA,mpython_blynk_run:()=>pA,mpython_blynk_sensor_data_to_app:()=>dA,mpython_blynk_set_property:()=>hA,mpython_blynk_setup:()=>MA,mpython_blynk_stop_timers:()=>uA,mpython_blynk_sync_virtual:()=>nA,mpython_blynk_terminal_widget_vpin:()=>iA,mpython_blynktimer:()=>lA,mpython_blynktimer_run:()=>oA});var j={};t.r(j),t.d(j,{cc_g1_read_bat:()=>mA,cc_g1_read_joystick:()=>OA,cc_g1_read_key:()=>EA,cc_g1_turnoff:()=>RA});var Z={};t.r(Z),t.d(Z,{ce_go_dc_motor:()=>DA,ce_go_get_led_bright:()=>CA,ce_go_get_led_state:()=>SA,ce_go_hall_attachInterrupt:()=>fA,ce_go_hall_data:()=>PA,ce_go_hall_initialize:()=>FA,ce_go_led_bright:()=>gA,ce_go_led_brightness:()=>AA,ce_go_light_number:()=>cA,ce_go_pin_light:()=>yA,ce_go_pin_near:()=>YA,ce_go_pin_near_line:()=>vA,ce_go_pin_near_state_change:()=>XA,ce_go_stepper_keep:()=>LA,ce_go_stepper_stop:()=>NA,sensor_mixgome_eulerangles:()=>xA});var $={};t.r($),t.d($,{communicate_bluetooth_central_init:()=>mL,communicate_bluetooth_connect:()=>RL,communicate_bluetooth_disconnect:()=>cL,communicate_bluetooth_handle:()=>NL,communicate_bluetooth_is_connected:()=>CL,communicate_bluetooth_mac:()=>gL,communicate_bluetooth_peripheral_init:()=>OL,communicate_bluetooth_recv:()=>LL,communicate_bluetooth_recv_only:()=>AL,communicate_bluetooth_scan:()=>EL,communicate_bluetooth_send:()=>SL,communicate_espnow_init:()=>DL,communicate_espnow_init_new:()=>fL,communicate_i2c_available:()=>HA,communicate_i2c_init:()=>BA,communicate_i2c_master_read:()=>kA,communicate_i2c_onboard:()=>VA,communicate_i2c_read:()=>GA,communicate_i2c_scan:()=>wA,communicate_i2c_write:()=>UA,communicate_ir_recv_init:()=>pL,communicate_ir_send_init:()=>dL,communicate_ow_init:()=>eL,communicate_ow_read:()=>sL,communicate_ow_reset:()=>nL,communicate_ow_scan:()=>iL,communicate_ow_select:()=>oL,communicate_ow_write:()=>_L,communicate_spi_buffer:()=>qA,communicate_spi_init:()=>KA,communicate_spi_onboard:()=>bA,communicate_spi_read:()=>zA,communicate_spi_read_output:()=>QA,communicate_spi_readinto:()=>jA,communicate_spi_readinto_output:()=>ZA,communicate_spi_set:()=>JA,communicate_spi_write:()=>$A,communicate_spi_write_readinto:()=>tL,espnow_radio_channel:()=>xL,espnow_radio_channel_new:()=>VL,espnow_radio_on_off:()=>bL,espnow_radio_rec:()=>GL,espnow_radio_recv:()=>wL,espnow_radio_recv_certain_msg:()=>kL,espnow_radio_recv_certain_msg_new:()=>WL,espnow_radio_recv_msg:()=>UL,espnow_radio_recv_new:()=>HL,espnow_radio_send:()=>BL,espnow_radio_txpower:()=>yL,i2c_slave_onreceive:()=>WA,internal_variable:()=>aL,ir_recv_timeout:()=>lL,ir_transmit_busy:()=>ML,ir_transmit_conventional_data:()=>IL,ir_transmit_raw_code:()=>hL,ir_transmit_study_code:()=>TL,ir_whether_recv:()=>rL,lora_init:()=>KL,lora_packet:()=>JL,lora_recv:()=>zL,lora_send:()=>qL,network_espnow_info:()=>PL,network_espnow_mac:()=>FL,network_espnow_recv:()=>vL,network_espnow_recv_handle:()=>XL,network_espnow_send:()=>YL,recv_fun:()=>uL,urequests_attribute:()=>jL,urequests_get:()=>QL,urequests_method:()=>ZL});var tt={};t.r(tt),t.d(tt,{display_animate:()=>CN,display_circle:()=>SN,display_color_seclet:()=>xN,display_draw_4strings:()=>MN,display_fill:()=>gN,display_lcd_use_i2c_init:()=>UN,display_line:()=>EN,display_line_arbitrarily:()=>mN,display_matrix_extern_bright_point:()=>uN,display_matrix_extern_bright_screen:()=>lN,display_matrix_extern_clear:()=>oN,display_matrix_extern_get_pixel:()=>aN,display_matrix_extern_get_screen_pixel:()=>rN,display_matrix_extern_image_builtins:()=>dN,display_matrix_extern_scroll_string:()=>sN,display_matrix_extern_scroll_string_delay:()=>_N,display_matrix_extern_shift:()=>pN,display_matrix_extern_show_frame_string:()=>iN,display_matrix_extern_show_frame_string_delay:()=>nN,display_matrix_extern_show_image:()=>tN,display_matrix_extern_show_image_or_string_delay:()=>eN,display_matrix_use_i2c_init:()=>$L,display_oled_drawPixel:()=>NN,display_oled_showBitmap:()=>LN,display_oled_use_i2c_init:()=>KN,display_onoff:()=>RN,display_rect:()=>ON,display_tm1650_power:()=>fN,display_tm1650_set_brightness:()=>vN,display_tm1650_show_dot:()=>PN,display_tm1650_show_num:()=>FN,display_tm_use_i2c_init:()=>DN,display_triangle:()=>AN,display_use_i2c_init:()=>hN,extern_oled_bright_point:()=>sD,extern_oled_clear:()=>eD,extern_oled_get_pixel:()=>nD,extern_oled_hvline:()=>oD,extern_oled_line:()=>pD,extern_oled_scroll_string:()=>$N,extern_oled_scroll_string_delay:()=>tD,extern_oled_shape_rect:()=>_D,extern_oled_shift:()=>iD,extern_oled_show_frame_string:()=>jN,extern_oled_show_frame_string_delay:()=>ZN,extern_oled_show_image:()=>JN,extern_oled_show_image_or_string_delay:()=>QN,extern_oled_show_image_xy:()=>qN,extern_oled_show_string:()=>zN,image_shift:()=>cN,lcd_backlight:()=>HN,lcd_clear:()=>WN,lcd_print_string:()=>kN,lcd_show_image_or_string_delay:()=>wN,matrix_extern_image_arithmetic:()=>IN,matrix_extern_image_invert:()=>TN,tft_fill:()=>BN,tft_line_arbitrarily:()=>GN,tft_scroll_string_delay:()=>bN,tft_show_frame_string_delay:()=>VN,tft_show_image_or_string_delay:()=>yN,tft_show_image_xy:()=>XN,tft_use_spi_init:()=>YN});var et={};t.r(et),t.d(et,{bitbot_display_image_create:()=>WD,display_bright_point:()=>gD,display_bright_screen:()=>SD,display_clear:()=>mD,display_get_pixel:()=>cD,display_get_screen_pixel:()=>CD,display_image_builtins:()=>TD,display_image_builtins_all:()=>hD,display_image_create:()=>MD,display_scroll_string:()=>dD,display_scroll_string_delay:()=>ID,display_shift:()=>RD,display_show_frame_string:()=>rD,display_show_frame_string_delay:()=>lD,display_show_image:()=>aD,display_show_image_or_string_delay:()=>uD,image_arithmetic:()=>OD,image_invert:()=>ED,mixbot_display_bright_screen:()=>kD,mixbot_display_get_ambientbright:()=>wD,mixbot_display_get_screen_pixel:()=>UD,mixbot_display_image_create:()=>GD,mixbot_display_rotate:()=>HD,mixgo_display_image_create_new:()=>DD,mixgome_display_font:()=>ND,mixgome_display_image_create:()=>AD,mixgomini_display_image_create:()=>LD,mpython_display_hvline:()=>bD,mpython_display_line:()=>BD,mpython_display_shape_rect:()=>VD,mpython_pbm_image:()=>fD,onboard_oled_bright_point:()=>yD,onboard_oled_scroll_string_delay:()=>xD,onboard_oled_show_frame_string_delay:()=>XD,onboard_oled_show_image:()=>FD,onboard_oled_show_image_or_string_delay:()=>YD,onboard_oled_show_image_xy:()=>PD,onboard_oled_show_string:()=>vD,onboard_tft_bright_point:()=>of,onboard_tft_bright_screen:()=>af,onboard_tft_clear:()=>nf,onboard_tft_clock_clear:()=>Tf,onboard_tft_clock_draw:()=>If,onboard_tft_clock_get_rtctime:()=>lf,onboard_tft_clock_init:()=>rf,onboard_tft_clock_set_time:()=>df,onboard_tft_display_hvline:()=>tf,onboard_tft_display_line:()=>ef,onboard_tft_display_shape_circle:()=>hf,onboard_tft_display_shape_rect:()=>$D,onboard_tft_fill:()=>uf,onboard_tft_get_pixel:()=>_f,onboard_tft_get_screen_pixel:()=>pf,onboard_tft_scroll_string:()=>jD,onboard_tft_scroll_string_delay:()=>ZD,onboard_tft_shift:()=>sf,onboard_tft_show_frame_string:()=>zD,onboard_tft_show_frame_string_delay:()=>QD,onboard_tft_show_image:()=>KD,onboard_tft_show_image_or_string_delay:()=>qD,onboard_tft_show_image_xy:()=>JD});var it={};t.r(it),t.d(it,{factory_block:()=>Cf,factory_block_return:()=>Sf,factory_block_return_with_textarea:()=>Lf,factory_block_with_textarea:()=>Af,factory_callMethod_noreturn:()=>cf,factory_callMethod_return:()=>gf,factory_declare:()=>Rf,factory_from_import:()=>Mf,factory_function_noreturn:()=>Of,factory_function_return:()=>Ef,factory_import:()=>mf,folding_block:()=>Nf});var nt={};t.r(nt),t.d(nt,{inout_analog_atten:()=>wf,inout_analog_read:()=>xf,inout_analog_read_init:()=>Uf,inout_analog_write:()=>vf,inout_analog_write_init:()=>Gf,inout_analog_write_set:()=>Yf,inout_digital_init:()=>bf,inout_digital_read:()=>Ff,inout_digital_write:()=>ff,inout_highlow:()=>Df,inout_pin_attachInterrupt:()=>Vf,inout_pin_pressed:()=>yf,inout_pin_pressed_init:()=>kf,inout_pwm_analog_write:()=>Pf,inout_pwm_analog_write_init:()=>Bf,inout_pwm_analog_write_set_freq:()=>Xf});var st={};t.r(st),t.d(st,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>aF,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>oF,IOT_EMQX_PING:()=>uF,IOT_FORMATTING:()=>sF,IOT_FORMAT_STRING:()=>_F,IOT_MIXIO_NTP:()=>rF,IOT_MIXIO_PUBLISH:()=>jf,IOT_MIXIO_SUBSCRIBE:()=>Zf,iot_client_onboard:()=>lF,iot_http_client:()=>dF,iot_http_data:()=>IF,iot_mixio_check:()=>eF,iot_mixio_connect:()=>Qf,iot_mixio_connect_only:()=>tF,iot_mixio_disconnect:()=>$f,iot_mixio_format_msg:()=>nF,iot_mixio_format_topic:()=>iF,iot_mixly_key:()=>pF,iot_mqtt_client:()=>TF,iot_mqtt_data:()=>hF,iot_onenet_check:()=>qf,iot_onenet_connect:()=>Wf,iot_onenet_disconnect:()=>Kf,iot_onenet_publish:()=>zf,iot_onenet_publish_dict:()=>Jf,iot_wifi_connect:()=>Hf});var _t={};t.r(_t),t.d(_t,{network_ap_connect:()=>SF,network_connect:()=>mF,network_get_connect:()=>EF,network_get_wifi:()=>CF,network_init:()=>MF,network_is_active:()=>gF,network_open:()=>cF,network_scan:()=>AF,network_server:()=>LF,network_socket_accept:()=>PF,network_socket_bind:()=>DF,network_socket_close:()=>yF,network_socket_connect:()=>fF,network_socket_init:()=>NF,network_socket_listen:()=>FF,network_socket_receive:()=>vF,network_socket_receive_from:()=>XF,network_socket_send:()=>YF,network_socket_send_to:()=>xF,network_stop:()=>RF,network_wifi_connect:()=>OF,ntptime_address:()=>UF,ntptime_time:()=>GF,requests_attribute:()=>bF,requests_get:()=>VF,requests_method:()=>BF,urequests_connect_url:()=>HF,urequests_response:()=>WF,urequests_wifi_connect:()=>wF,urequests_wifi_url:()=>kF});var ot={};t.r(ot),t.d(ot,{HCSR04:()=>XP,PS2_Button:()=>VP,PS2_Buttons:()=>bP,PS2_Buttons_new:()=>KP,PS2_State:()=>BP,PS2_init:()=>xP,PS2_init_new:()=>HP,PS2_stk:()=>GP,PS2_stk_new:()=>JP,PS2_vibration:()=>yP,PS2_vibration_new:()=>WP,RTC_get_time:()=>wP,RTC_set_date:()=>$F,RTC_set_datetime:()=>UP,RTC_set_time:()=>ZF,esp32_s2_weather_init:()=>FP,esp32_s2_weather_rain:()=>vP,esp32_s2_weather_wd:()=>PP,esp32_s2_weather_ws:()=>YP,extern_rfid_read:()=>OP,extern_rfid_readcontent:()=>RP,extern_rfid_readid:()=>EP,extern_rfid_status:()=>CP,extern_rfid_write:()=>cP,extern_rfid_write_return:()=>gP,gnss_get_data:()=>QP,gnss_have_data:()=>jP,mixbot_sensor_extern_get_addr:()=>ov,mixbot_sensor_extern_set_addr:()=>pv,pm25_get_data:()=>zP,robot_button_extern_get_value:()=>ZP,robot_color_extern_get_value:()=>nv,robot_infrared_extern_get_value:()=>tv,robot_infrared_extern_grey_get_value:()=>ev,robot_potentiometer_extern_get_value:()=>iv,robot_sonar_extern_get_value:()=>sv,robot_sonar_extern_led:()=>_v,robot_touch_extern_get_value:()=>$P,sensor_APDS9960_extern:()=>aP,sensor_LTR308_extern:()=>uP,sensor_LTR390UV_extern:()=>dP,sensor_MAX30102_extern:()=>pP,sensor_QMC5883L_extern:()=>IP,sensor_VL530LX_extern:()=>MP,sensor_aht11_extern:()=>hP,sensor_bmp:()=>sP,sensor_dht11:()=>kP,sensor_distance_hrsc04:()=>jF,sensor_hp203_extern:()=>rP,sensor_ltr381_extern:()=>lP,sensor_mixgo_extern_button_attachInterrupt:()=>zF,sensor_mixgo_extern_button_get_presses:()=>qF,sensor_mixgo_extern_button_is_pressed:()=>KF,sensor_mixgo_extern_button_was_pressed:()=>JF,sensor_mixgo_extern_light:()=>tP,sensor_mixgo_extern_pin_near:()=>iP,sensor_mixgo_extern_sound:()=>eP,sensor_mixgoce_hot_wheel_degrees:()=>fP,sensor_mixgoce_hot_wheel_is_touched:()=>DP,sensor_mpu9250_attachGestureInterrupt:()=>QF,sensor_rtc_init:()=>nP,sensor_sht:()=>_P,sensor_shtc3_extern:()=>TP,sensor_use_i2c_init:()=>oP,sensor_use_spi_init:()=>mP,sensor_use_uart_init:()=>qP,sensor_weather_solo_init:()=>av,sensor_weather_solo_rain:()=>lv,sensor_weather_solo_wd:()=>uv,sensor_weather_solo_ws:()=>rv,weather_data:()=>SP,weather_have_data:()=>AP,weather_set_label:()=>NP,weather_uart_mixio:()=>LP});var pt={};t.r(pt),t.d(pt,{HCSR04:()=>Rv,bitbot_als_num:()=>bY,dht11:()=>KY,number1:()=>cv,number2:()=>gv,number3:()=>Cv,number4:()=>Sv,number5:()=>Av,number6:()=>Lv,number7:()=>Nv,onboard_RTC_get_time:()=>MY,onboard_RTC_get_timestamp:()=>mY,onboard_RTC_set_datetime:()=>TY,onboard_RTC_settime_string:()=>hY,onboard_RTC_timestamp_totuple:()=>OY,rfid_readcontent:()=>wv,rfid_readid:()=>Uv,rfid_write:()=>kv,rfid_write_return:()=>Hv,sensor_LTR308:()=>yv,sensor_adxl345_get_acceleration:()=>$v,sensor_aht11:()=>Bv,sensor_bitbot_ALS:()=>VY,sensor_button_get_presses:()=>UY,sensor_button_is_pressed:()=>BY,sensor_button_was_pressed:()=>GY,sensor_compass_reset:()=>_Y,sensor_ds18x20:()=>Xv,sensor_eulerangles:()=>Kv,sensor_get_acceleration:()=>Wv,sensor_get_temperature:()=>Gv,sensor_hp203:()=>bv,sensor_light:()=>WY,sensor_lm35:()=>xv,sensor_mixbot_get_gyro:()=>yY,sensor_mixbot_patrol_calibrate:()=>YY,sensor_mixbot_patrol_value:()=>XY,sensor_mixbot_temperature:()=>xY,sensor_mixgo_LTR308:()=>vv,sensor_mixgo_button_attachInterrupt:()=>hv,sensor_mixgo_button_get_presses:()=>Tv,sensor_mixgo_button_is_pressed:()=>dv,sensor_mixgo_button_was_pressed:()=>Iv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>cY,sensor_mixgo_cc_mmc5603_get_angle:()=>RY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>EY,sensor_mixgo_light:()=>HY,sensor_mixgo_nova_LTR308:()=>Yv,sensor_mixgo_nova_pin_near:()=>Pv,sensor_mixgo_pin_near:()=>Fv,sensor_mixgo_pin_near_double:()=>fv,sensor_mixgo_pin_near_single:()=>Dv,sensor_mixgo_pin_pressed:()=>jv,sensor_mixgo_touch_slide:()=>Qv,sensor_mixgocar42_button_attachInterrupt:()=>Ev,sensor_mixgocar42_button_get_presses:()=>Ov,sensor_mixgocar42_button_is_pressed:()=>Mv,sensor_mixgocar42_button_was_pressed:()=>mv,sensor_mixgocar_battery_left:()=>vY,sensor_mixgocar_pin_near:()=>FY,sensor_mixgocar_pin_near_line:()=>fY,sensor_mixgocar_pin_near_state_change:()=>PY,sensor_mixgoce_pin_pressed:()=>zv,sensor_mixgoce_temperature:()=>CY,sensor_mixgome_temperature:()=>gY,sensor_mpu9250_calibrate_compass:()=>iY,sensor_mpu9250_field_strength:()=>sY,sensor_mpu9250_gesture:()=>Jv,sensor_mpu9250_get_acceleration:()=>qv,sensor_mpu9250_get_gyro:()=>eY,sensor_mpu9250_get_magnetic:()=>tY,sensor_mpu9250_temperature:()=>nY,sensor_mpython_pin_pressed:()=>Zv,sensor_mpython_qmi8658_get_gyro:()=>SY,sensor_mpython_qmi8658_temperature:()=>AY,sensor_onboard_compass_reset:()=>IY,sensor_onboard_mpu9250_calibrate_compass:()=>rY,sensor_onboard_mpu9250_field_strength:()=>dY,sensor_onboard_mpu9250_gesture:()=>oY,sensor_onboard_mpu9250_get_acceleration:()=>pY,sensor_onboard_mpu9250_get_gyro:()=>uY,sensor_onboard_mpu9250_get_magnetic:()=>aY,sensor_onboard_mpu9250_temperature:()=>lY,sensor_pin_near:()=>kY,sensor_pin_pressed:()=>wY,sensor_rm_acc:()=>DY,sensor_rm_battery_left:()=>NY,sensor_rm_pin_near_double:()=>LY,sensor_sound:()=>Vv});var at={};t.r(at),t.d(at,{serial_any:()=>jY,serial_print:()=>JY,serial_print_byte:()=>qY,serial_print_hex:()=>QY,serial_println:()=>zY,serial_read_from_ai:()=>aX,serial_readline:()=>$Y,serial_readstr:()=>ZY,serial_send_to_ai:()=>pX,serial_softserial:()=>tX,serial_softserial_new:()=>eX,system_input:()=>iX,system_print:()=>nX,system_print_end:()=>_X,system_print_inline:()=>sX,system_print_many:()=>oX});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>RX,Timer_init:()=>xX,base_delay:()=>bX,controls_delay:()=>AX,controls_delay_new:()=>LX,controls_end_program:()=>gX,controls_millis:()=>cX,controls_uname:()=>SX,reset:()=>CX,system_bitbot_shutdown:()=>XX,system_device_name:()=>OX,system_device_serial_number:()=>EX,system_event_bus_source:()=>MX,system_event_bus_value:()=>mX,system_machine_reset:()=>YX,system_on_event:()=>IX,system_raise_event:()=>dX,system_reset:()=>rX,system_run_in_background:()=>uX,system_ticks_diff:()=>fX,system_timer:()=>DX,system_timer_init:()=>FX,system_timestamp:()=>TX,system_value:()=>hX,system_wait:()=>lX,system_wdt_feed:()=>vX,system_wdt_init:()=>PX,time_ticks_diff:()=>VX,timer:()=>NX,timer2:()=>yX});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>GX,WEATHER_HOUR:()=>UX,WEATHER_NOW:()=>BX});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>lx,inout_analog_atten:()=>$X,inout_analog_read:()=>ZX,inout_analog_read_init:()=>_x,inout_analog_write:()=>zX,inout_analog_write_init:()=>sx,inout_analog_write_set:()=>QX,inout_analog_write_set_freq:()=>ax,inout_digital_init:()=>ix,inout_digital_read:()=>JX,inout_digital_write:()=>KX,inout_highlow:()=>WX,inout_pinMode:()=>px,inout_pin_attachInterrupt:()=>ex,inout_pin_pressed:()=>tx,inout_pin_pressed_init:()=>ox,inout_pwm_analog_write:()=>qX,inout_pwm_analog_write_init:()=>nx,inout_pwm_analog_write_set_freq:()=>jX,pin_pressed:()=>rx,pin_pressed_init:()=>ux});var dt={};t.r(dt),t.d(dt,{mini_g2_aht11:()=>Ix,mini_g2_hp203:()=>Tx,mini_g2_rfid_readcontent:()=>mx,mini_g2_rfid_readid:()=>Mx,mini_g2_rfid_status:()=>Rx,mini_g2_rfid_write:()=>Ox,mini_g2_rfid_write_outcome:()=>Ex,mini_g2_varistor:()=>hx});var It={};t.r(It),t.d(It,{me_go_dc_motor:()=>fx,me_go_get_led_bright:()=>Sx,me_go_get_led_state:()=>Ax,me_go_hall_attachInterrupt:()=>Fx,me_go_hall_data:()=>vx,me_go_hall_initialize:()=>Px,me_go_led_bright:()=>Cx,me_go_led_brightness:()=>Lx,me_go_light_number:()=>gx,me_go_pin_light:()=>Vx,me_go_pin_near:()=>Xx,me_go_pin_near_line:()=>Yx,me_go_pin_near_state_change:()=>xx,me_go_stepper_keep:()=>Nx,me_go_stepper_stop:()=>Dx,sensor_mixgome_eulerangles:()=>yx});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>Kx,analog_output:()=>qx,espnow_channel:()=>kx,haskylens_model:()=>Hx,i2c_A_pin:()=>zx,i2c_B_pin:()=>Qx,pins_analog:()=>ey,pins_analog_pin:()=>iy,pins_axis:()=>Ey,pins_brightness:()=>Ry,pins_builtinimg:()=>dy,pins_builtinimg_extern:()=>Iy,pins_button:()=>_y,pins_buttonB:()=>oy,pins_dac:()=>ny,pins_dac_pin:()=>sy,pins_digital:()=>Bx,pins_digital_dot:()=>Dy,pins_digital_pin:()=>Gx,pins_exlcdh:()=>my,pins_exlcdv:()=>Oy,pins_imglist:()=>Ty,pins_input_pin:()=>Ux,pins_one_more:()=>Ny,pins_output_pin:()=>wx,pins_playlist:()=>hy,pins_playlist_extern:()=>My,pins_pwm:()=>py,pins_pwm_pin:()=>ay,pins_radio_datarate:()=>Ly,pins_radio_power:()=>Ay,pins_serial:()=>ly,pins_tone_notes:()=>Sy,pins_touch:()=>ry,pins_touch_pin:()=>uy,pins_tts_bgmusic:()=>Cy,pins_tts_builtin_music:()=>gy,pins_tts_voice:()=>cy,pwm_input:()=>Wx,pwm_output:()=>Jx,spi_A_pin:()=>jx,spi_B_pin:()=>Zx,spi_C_pin:()=>$x,spi_D_pin:()=>ty});var ht={};t.r(ht),t.d(ht,{inout_analog_atten:()=>ky,inout_analog_read:()=>yy,inout_analog_read_init:()=>wy,inout_analog_write:()=>Yy,inout_analog_write_init:()=>Uy,inout_analog_write_set:()=>Xy,inout_digital_init:()=>By,inout_digital_read:()=>Py,inout_digital_write:()=>Fy,inout_highlow:()=>fy,inout_pin_attachInterrupt:()=>by,inout_pin_pressed:()=>Vy,inout_pin_pressed_init:()=>Hy,inout_pwm_analog_write:()=>vy,inout_pwm_analog_write_init:()=>Gy,inout_pwm_analog_write_set_freq:()=>xy});var Mt={};t.r(Mt),t.d(Mt,{mini_g2_aht11:()=>Wy,mini_g2_hp203:()=>Ky,mini_g2_rfid_readcontent:()=>zy,mini_g2_rfid_readid:()=>qy,mini_g2_rfid_status:()=>Zy,mini_g2_rfid_write:()=>Qy,mini_g2_rfid_write_outcome:()=>jy,mini_g2_varistor:()=>Jy});var mt={};t.r(mt),t.d(mt,{me_go_dc_motor:()=>oV,me_go_get_led_bright:()=>eV,me_go_get_led_state:()=>iV,me_go_hall_attachInterrupt:()=>pV,me_go_hall_data:()=>uV,me_go_hall_initialize:()=>aV,me_go_led_bright:()=>tV,me_go_led_brightness:()=>nV,me_go_light_number:()=>$y,me_go_pin_light:()=>TV,me_go_pin_near:()=>lV,me_go_pin_near_line:()=>rV,me_go_pin_near_state_change:()=>dV,me_go_stepper_keep:()=>sV,me_go_stepper_stop:()=>_V,sensor_mixgome_eulerangles:()=>IV});var Ot={};t.r(Ot),t.d(Ot,{analog_input:()=>SV,analog_output:()=>LV,espnow_channel:()=>gV,haskylens_model:()=>CV,i2c_A_pin:()=>NV,i2c_B_pin:()=>DV,pins_analog:()=>XV,pins_analog_pin:()=>YV,pins_axis:()=>qV,pins_brightness:()=>jV,pins_builtinimg:()=>kV,pins_builtinimg_extern:()=>HV,pins_button:()=>MV,pins_buttonB:()=>mV,pins_dac:()=>bV,pins_dac_pin:()=>VV,pins_digital:()=>hV,pins_digital_dot:()=>_b,pins_digital_pin:()=>OV,pins_exlcdh:()=>zV,pins_exlcdv:()=>QV,pins_imglist:()=>WV,pins_input_pin:()=>EV,pins_interrupt:()=>UV,pins_one_more:()=>sb,pins_output_pin:()=>RV,pins_playlist:()=>KV,pins_playlist_extern:()=>JV,pins_pwm:()=>yV,pins_pwm_input:()=>cV,pins_pwm_pin:()=>xV,pins_radio_datarate:()=>nb,pins_radio_power:()=>ib,pins_serial:()=>wV,pins_tone_notes:()=>eb,pins_touch:()=>GV,pins_touch_pin:()=>BV,pins_tts_bgmusic:()=>tb,pins_tts_builtin_music:()=>$V,pins_tts_voice:()=>ZV,pwm_output:()=>AV,spi_A_pin:()=>fV,spi_B_pin:()=>FV,spi_C_pin:()=>PV,spi_D_pin:()=>vV});const Et=Blockly,Rt=Mixly,ct={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(o+=n)):i=o}else i="i";return i}},gt=ct; +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Ft,controls_typeLists:()=>Pt,variables_change:()=>Dt,variables_get:()=>Lt,variables_global:()=>ft,variables_set:()=>Nt});var i={};t.r(i),t.d(i,{base_setup:()=>Xt,controls_delay:()=>xt,controls_end_program:()=>yt,controls_except:()=>zt,controls_finally:()=>Qt,controls_flow_statements:()=>wt,controls_for:()=>kt,controls_forEach:()=>Bt,controls_for_range:()=>Ht,controls_if:()=>Vt,controls_if_else:()=>Jt,controls_if_elseif:()=>Kt,controls_if_if:()=>Wt,controls_lambda:()=>Zt,controls_main:()=>Yt,controls_pass:()=>$t,controls_range:()=>bt,controls_repeat_ext:()=>jt,controls_thread:()=>te,controls_try:()=>qt,controls_try_finally:()=>Ut,controls_whileUntil:()=>Gt,do_while:()=>ee,garbage_collection:()=>ie,get_mem_alloc:()=>ne,get_mem_free:()=>se,get_unique_identifier:()=>_e});var n={};t.r(n),t.d(n,{base_map:()=>Le,math_arithmetic:()=>re,math_bit:()=>de,math_constant:()=>ae,math_constant_mp:()=>ue,math_constrain:()=>Ee,math_dec:()=>Te,math_indexer_number:()=>ce,math_map:()=>Re,math_max_min:()=>Me,math_number:()=>pe,math_number_base_conversion:()=>me,math_random:()=>Oe,math_random_seed:()=>ge,math_round:()=>Ce,math_selfcalcu:()=>le,math_to_int:()=>he,math_trig:()=>Ie,text_to_number:()=>Se,text_to_number_skulpt:()=>Ae});var s={};t.r(s),t.d(s,{ascii_to_char:()=>ve,char_to_ascii:()=>Ye,number_to_text:()=>Xe,os_system:()=>_i,text:()=>De,text_capital:()=>ke,text_center:()=>He,text_char:()=>Fe,text_char_at:()=>Ve,text_char_at2:()=>ye,text_char_at3:()=>ei,text_compareTo:()=>ti,text_compare_to:()=>we,text_create_with_container:()=>je,text_create_with_item:()=>Ze,text_encode:()=>ni,text_equals_starts_ends:()=>Ue,text_eval:()=>si,text_find:()=>We,text_format:()=>Qe,text_format_noreturn:()=>ii,text_join:()=>Pe,text_join_seq:()=>Ke,text_length:()=>xe,text_random_char:()=>be,text_replace:()=>Je,text_split:()=>qe,text_strip:()=>ze,text_substring:()=>Ge,text_substring2:()=>Be,text_substring3:()=>$e,text_textarea:()=>fe});var _={};t.r(_),t.d(_,{list_many_input:()=>Di,list_tolist:()=>xi,list_tolist2:()=>ki,list_trig:()=>Ai,lists_2d_get_col_row_data:()=>ri,lists_2d_get_data_with_col_row:()=>ui,lists_append_extend:()=>Mi,lists_change_to:()=>Ni,lists_change_to_general:()=>Fi,lists_clear:()=>ci,lists_create_with:()=>li,lists_create_with2:()=>yi,lists_create_with_container:()=>Ii,lists_create_with_item:()=>Ti,lists_create_with_noreturn:()=>fi,lists_create_with_text:()=>di,lists_create_with_text2:()=>Vi,lists_del_general:()=>Pi,lists_find:()=>Si,lists_getIndex3:()=>bi,lists_getSublist3:()=>Bi,lists_get_index:()=>pi,lists_get_random_item:()=>mi,lists_get_random_sublist:()=>Oi,lists_get_sublist:()=>ai,lists_insert_value:()=>Ei,lists_insert_value2:()=>Ui,lists_pop:()=>Ci,lists_remove_at:()=>gi,lists_remove_at2:()=>wi,lists_reverse:()=>Ri,lists_setIndex3:()=>Gi,lists_set_index:()=>hi,lists_sort:()=>Li,lists_zip:()=>vi,lists_zip_container:()=>Yi,lists_zip_item:()=>Xi});var o={};t.r(o),t.d(o,{dicts_add_change_del:()=>on,dicts_add_or_change:()=>ji,dicts_clear:()=>tn,dicts_create_with:()=>Wi,dicts_create_with_container:()=>Ki,dicts_create_with_item:()=>Ji,dicts_create_with_noreturn:()=>un,dicts_deldict:()=>_n,dicts_delete:()=>Zi,dicts_get:()=>zi,dicts_get_default:()=>Qi,dicts_items:()=>en,dicts_keys:()=>qi,dicts_length:()=>sn,dicts_pop:()=>pn,dicts_setdefault:()=>an,dicts_to_json:()=>ln,dicts_todict:()=>rn,dicts_update:()=>$i,dicts_values:()=>nn,json_to_dicts:()=>dn});var p={};t.r(p),t.d(p,{logic_boolean:()=>On,logic_compare:()=>Tn,logic_compare_continous:()=>hn,logic_is:()=>gn,logic_is_in:()=>cn,logic_negate:()=>mn,logic_null:()=>En,logic_operation:()=>Mn,logic_tobool:()=>Cn,logic_true_or_false:()=>Rn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>Kn,sdcard_use_spi_init:()=>Wn,storage_can_write_ornot:()=>vn,storage_change_dir:()=>kn,storage_close_file:()=>Xn,storage_delete_file:()=>yn,storage_file_seek:()=>Bn,storage_file_tell:()=>bn,storage_file_write:()=>Dn,storage_fileopen:()=>An,storage_fileopen_new:()=>Ln,storage_fileopen_new_encoding:()=>Nn,storage_get_a_line:()=>Pn,storage_get_contents:()=>Fn,storage_get_contents_without_para:()=>fn,storage_get_current_dir:()=>Gn,storage_get_file_size:()=>Vn,storage_get_filename:()=>Yn,storage_is_file:()=>Hn,storage_list_all_files:()=>xn,storage_make_dir:()=>Un,storage_open_file_with_os:()=>Sn,storage_rename:()=>wn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>$n,procedures_callreturn:()=>ts,procedures_defnoreturn:()=>zn,procedures_defreturn:()=>Qn,procedures_ifreturn:()=>es,procedures_mutatorarg:()=>Zn,procedures_mutatorcontainer:()=>jn,procedures_return:()=>is});var r={};t.r(r),t.d(r,{tuple_change_to:()=>Ts,tuple_create_with:()=>ss,tuple_create_with_container:()=>_s,tuple_create_with_item:()=>os,tuple_create_with_noreturn:()=>Os,tuple_create_with_text2:()=>ps,tuple_create_with_text_return:()=>as,tuple_del:()=>ls,tuple_find:()=>hs,tuple_getIndex:()=>us,tuple_getSublist:()=>ms,tuple_get_random_item:()=>Rs,tuple_get_sublist:()=>Es,tuple_join:()=>ds,tuple_length:()=>rs,tuple_max:()=>Is,tuple_totuple:()=>cs,tuple_trig:()=>Ms});var l={};t.r(l),t.d(l,{set_add_discard:()=>Ps,set_clear:()=>Ds,set_create_with:()=>Cs,set_create_with_container:()=>Ss,set_create_with_item:()=>As,set_create_with_text_return:()=>Xs,set_length:()=>Ls,set_operate:()=>fs,set_operate_update:()=>Fs,set_pop:()=>Ns,set_sub:()=>vs,set_toset:()=>xs,set_update:()=>Ys});var d={};t.r(d),t.d(d,{html_content:()=>Gs,html_content_more:()=>Us,html_document:()=>Vs,html_form:()=>ks,html_head_body:()=>Bs,html_style:()=>ws,html_style_color:()=>Ws,html_style_content:()=>Hs,html_text:()=>Ks,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>o_,function_call:()=>n_,function_call_container:()=>s_,function_call_item:()=>__,raw_block:()=>zs,raw_empty:()=>js,raw_expression:()=>Qs,raw_table:()=>qs,text_comment:()=>Zs,text_print_multiple:()=>t_,text_print_multiple_container:()=>e_,text_print_multiple_item:()=>i_,type_check:()=>$s});var T={};t.r(T),t.d(T,{controls_type:()=>l_,controls_typeLists:()=>d_,variables_change:()=>u_,variables_get:()=>p_,variables_global:()=>r_,variables_set:()=>a_});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>g_,base_setup:()=>T_,controls_delay:()=>c_,controls_flow_statements:()=>R_,controls_for:()=>m_,controls_forEach:()=>N_,controls_for_range:()=>O_,controls_if:()=>h_,controls_interrupts:()=>A_,controls_lambda:()=>f_,controls_main:()=>I_,controls_millis:()=>C_,controls_nointerrupts:()=>L_,controls_pass:()=>P_,controls_range:()=>D_,controls_repeat:()=>B_,controls_repeat_ext:()=>X_,controls_thread:()=>v_,controls_try_finally:()=>M_,controls_whileUntil:()=>E_,do_while:()=>Y_,garbage_collection:()=>x_,get_mem_alloc:()=>y_,get_mem_free:()=>V_,get_unique_identifier:()=>b_,reset:()=>S_,time_sleep:()=>F_});var M={};t.r(M),t.d(M,{base_map:()=>oo,math_arithmetic:()=>H_,math_bit:()=>k_,math_constant:()=>U_,math_constant_mp:()=>w_,math_constrain:()=>$_,math_dec:()=>q_,math_indexer_number:()=>io,math_map:()=>Z_,math_max_min:()=>Q_,math_number:()=>G_,math_number_base_conversion:()=>to,math_random:()=>j_,math_random_seed:()=>eo,math_round:()=>no,math_selfcalcu:()=>W_,math_single:()=>K_,math_to_int:()=>z_,math_trig:()=>J_,text_to_number:()=>so,text_to_number_skulpt:()=>_o});var m={};t.r(m),t.d(m,{ascii_to_char:()=>lo,char_to_ascii:()=>Io,number_to_text:()=>To,os_system:()=>Vo,text:()=>po,text_capital:()=>Co,text_center:()=>So,text_char:()=>uo,text_char_at:()=>mo,text_char_at2:()=>Mo,text_char_at3:()=>Xo,text_compareTo:()=>Yo,text_compare_to:()=>Ro,text_encode:()=>xo,text_equals_starts_ends:()=>Eo,text_eval:()=>yo,text_find:()=>Ao,text_format:()=>Fo,text_format_noreturn:()=>Po,text_join:()=>ro,text_join_seq:()=>Lo,text_length:()=>ho,text_random_char:()=>Oo,text_replace:()=>No,text_split:()=>Do,text_strip:()=>fo,text_substring:()=>go,text_substring2:()=>co,text_substring3:()=>vo,text_textarea:()=>ao});var O={};t.r(O),t.d(O,{list_many_input:()=>np,list_tolist:()=>hp,list_tolist2:()=>Mp,list_trig:()=>tp,lists_2d_get_col_row_data:()=>Go,lists_2d_get_data_with_col_row:()=>Bo,lists_append_extend:()=>Wo,lists_change_to:()=>ip,lists_change_to_general:()=>_p,lists_clear:()=>Qo,lists_create_with:()=>Uo,lists_create_with2:()=>pp,lists_create_with_noreturn:()=>sp,lists_create_with_text:()=>wo,lists_create_with_text2:()=>ap,lists_del_general:()=>op,lists_find:()=>jo,lists_getIndex3:()=>up,lists_getSublist3:()=>rp,lists_get_index:()=>ko,lists_get_random_item:()=>Ko,lists_get_random_sublist:()=>Jo,lists_get_sublist:()=>bo,lists_insert_value:()=>qo,lists_insert_value2:()=>dp,lists_pop:()=>$o,lists_remove_at:()=>Zo,lists_remove_at2:()=>Ip,lists_reverse:()=>zo,lists_setIndex3:()=>lp,lists_set_index:()=>Ho,lists_sort:()=>ep,lists_zip:()=>Tp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>fp,dicts_add_or_change:()=>cp,dicts_clear:()=>Sp,dicts_create_with:()=>mp,dicts_create_with_noreturn:()=>vp,dicts_deldict:()=>Dp,dicts_delete:()=>gp,dicts_get:()=>Ep,dicts_get_default:()=>Rp,dicts_items:()=>Ap,dicts_keys:()=>Op,dicts_length:()=>Np,dicts_pop:()=>Fp,dicts_setdefault:()=>Pp,dicts_to_json:()=>Xp,dicts_todict:()=>Yp,dicts_update:()=>Cp,dicts_values:()=>Lp,json_to_dicts:()=>xp});var R={};t.r(R),t.d(R,{logic_boolean:()=>Gp,logic_compare:()=>yp,logic_compare_continous:()=>Vp,logic_is:()=>Hp,logic_is_in:()=>kp,logic_negate:()=>Bp,logic_null:()=>Up,logic_operation:()=>bp,logic_tobool:()=>Wp,logic_true_or_false:()=>wp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>Ta,sdcard_use_spi_init:()=>Ia,storage_can_write_ornot:()=>ta,storage_change_dir:()=>aa,storage_close_file:()=>ia,storage_delete_file:()=>sa,storage_file_seek:()=>pa,storage_file_tell:()=>oa,storage_file_write:()=>Qp,storage_fileopen:()=>Jp,storage_fileopen_new:()=>qp,storage_fileopen_new_encoding:()=>zp,storage_get_a_line:()=>$p,storage_get_contents:()=>Zp,storage_get_contents_without_para:()=>jp,storage_get_current_dir:()=>ua,storage_get_file_size:()=>_a,storage_get_filename:()=>ea,storage_is_file:()=>da,storage_list_all_files:()=>na,storage_make_dir:()=>ra,storage_open_file_with_os:()=>Kp,storage_rename:()=>la});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Oa,procedures_callreturn:()=>ma,procedures_defnoreturn:()=>Ma,procedures_defreturn:()=>ha,procedures_ifreturn:()=>Ea,procedures_return:()=>Ra});var C={};t.r(C),t.d(C,{tuple_change_to:()=>fa,tuple_create_with:()=>ca,tuple_create_with_noreturn:()=>Ya,tuple_create_with_text2:()=>ga,tuple_create_with_text_return:()=>Ca,tuple_del:()=>La,tuple_find:()=>Fa,tuple_getIndex:()=>Sa,tuple_getSublist:()=>va,tuple_get_random_item:()=>xa,tuple_get_sublist:()=>Xa,tuple_join:()=>Na,tuple_length:()=>Aa,tuple_max:()=>Da,tuple_totuple:()=>ya,tuple_trig:()=>Pa});var S={};t.r(S),t.d(S,{set_add_discard:()=>ka,set_clear:()=>Ga,set_create_with:()=>Va,set_create_with_text_return:()=>Ka,set_length:()=>ba,set_operate:()=>Ua,set_operate_update:()=>wa,set_pop:()=>Ba,set_sub:()=>Ha,set_toset:()=>Ja,set_update:()=>Wa});var A={};t.r(A),t.d(A,{html_content:()=>ja,html_content_more:()=>Za,html_document:()=>qa,html_form:()=>tu,html_head_body:()=>Qa,html_style:()=>$a,html_style_content:()=>eu,html_text:()=>iu,html_title:()=>za});var L={};t.r(L),t.d(L,{attribute_access:()=>uu,function_call:()=>au,raw_block:()=>nu,raw_empty:()=>_u,raw_expression:()=>su,raw_table:()=>ou,type_check:()=>pu});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>cu,actuator_extern_get_led_state:()=>gu,actuator_extern_led_bright:()=>Ru,actuator_extern_led_brightness:()=>Cu,actuator_ms32006_dcmotor:()=>vu,actuator_ms32006_init:()=>Pu,actuator_ms32006_stepper:()=>Yu,actuator_neopixel_init:()=>Xu,actuator_neopixel_rgb:()=>xu,actuator_neopixel_rgb_all:()=>yu,actuator_neopixel_write:()=>Vu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>mu,esp32_music_pitch:()=>Iu,esp32_music_pitch_init:()=>du,esp32_music_pitch_with_time:()=>Tu,esp32_music_play_list:()=>hu,esp32_music_reset_extern:()=>Ou,esp32_music_set_tempo_extern:()=>Mu,esp32_music_stop:()=>Eu,mixbot_actuator_extern_get_addr:()=>ir,mixbot_actuator_extern_set_addr:()=>nr,mixbot_addr_extern:()=>ku,robot_led_extern:()=>Ju,robot_led_extern_get_value:()=>qu,robot_motor_extern:()=>Hu,robot_motor_extern_get_speed:()=>Wu,robot_servo_extern_absolute_run:()=>Zu,robot_servo_extern_get_status:()=>zu,robot_servo_extern_relative_continue:()=>er,robot_servo_extern_relative_origin:()=>$u,robot_servo_extern_relative_run:()=>tr,robot_servo_extern_stop:()=>ju,robot_servo_extern_stop_mode:()=>Qu,robot_traffic_light_extern:()=>Ku,servo_get_angle:()=>fu,servo_get_speed:()=>Fu,servo_init:()=>Su,servo_move:()=>Au,servo_set_angle:()=>Nu,servo_set_speed:()=>Du,servo_speed_360:()=>Lu,syn6288_builtin_voice:()=>Uu,syn6288_get_voice:()=>Gu,syn6288_set_voice:()=>Bu,syn6288_tts_play:()=>wu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>xr,actuator_dc_motor_stop:()=>yr,actuator_get_led_bright:()=>ar,actuator_get_led_state:()=>ur,actuator_led_bright:()=>pr,actuator_led_brightness:()=>rr,actuator_mixbot_buzzer_on_off:()=>Ur,actuator_mixgo_nova_mic_get:()=>Kr,actuator_mixgo_nova_mic_set:()=>Wr,actuator_mixgo_nova_onboard_music_pitch:()=>Zr,actuator_mixgo_nova_onboard_music_stop:()=>$r,actuator_mixgo_nova_play_audio:()=>Qr,actuator_mixgo_nova_play_online_audio:()=>jr,actuator_mixgo_nova_record_audio:()=>zr,actuator_mixgo_nova_voice_get:()=>qr,actuator_mixgo_nova_voice_set:()=>Jr,actuator_mixgo_zero_led_color:()=>lr,actuator_onboard_neopixel_rgb:()=>mr,actuator_onboard_neopixel_rgb_all:()=>Or,actuator_onboard_neopixel_rgb_show_all_chase:()=>Rr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>Er,actuator_onboard_neopixel_write:()=>cr,actuator_rm_onboard_neopixel_rgb:()=>gr,actuator_rm_onboard_neopixel_rgb_all:()=>Cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Sr,actuator_stepper_keep:()=>Yr,actuator_stepper_stop:()=>Xr,analog_keyboard_input:()=>nl,analog_keyboard_str:()=>ll,analog_mouse_input:()=>ul,bitbot_motor:()=>Hr,bitbot_move:()=>wr,bitbot_stop:()=>kr,cc_number:()=>Mr,esp32_music_get_tempo:()=>Lr,esp32_music_reset:()=>Nr,esp32_music_set_tempo:()=>Ar,esp32_onboard_music_pitch:()=>Dr,esp32_onboard_music_pitch_with_time:()=>fr,esp32_onboard_music_play_list:()=>Pr,esp32_onboard_music_stop:()=>Fr,general_key:()=>_l,general_key_tuple:()=>ol,generalkey_container:()=>pl,generalkey_create_with_item:()=>al,get_power_output:()=>el,ledswitch:()=>or,mixbot_motor:()=>Gr,mixbot_motor_status:()=>Vr,mixbot_move:()=>br,mixbot_stop:()=>Br,mouse_key:()=>rl,number:()=>_r,rm_actuator_get_led_bright:()=>Ir,rm_actuator_get_led_state:()=>Tr,rm_actuator_led_bright:()=>dr,rm_actuator_led_brightness:()=>hr,rm_motor:()=>vr,set_all_power_output:()=>il,set_power_output:()=>tl,special_key:()=>sl});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>Wl,ai_sensor_ailocal_class:()=>Xl,ai_sensor_ailocal_class_result:()=>xl,ai_sensor_ailocal_train:()=>Yl,ai_sensor_asr_recognize:()=>Gl,ai_sensor_audio_play:()=>Vl,ai_sensor_audio_record:()=>yl,ai_sensor_barcode:()=>El,ai_sensor_circle:()=>Al,ai_sensor_classifier_faces:()=>Hl,ai_sensor_color:()=>fl,ai_sensor_color_chases:()=>vl,ai_sensor_color_chases_result:()=>Pl,ai_sensor_config:()=>ml,ai_sensor_face:()=>kl,ai_sensor_find_20objects:()=>Kl,ai_sensor_find_barcodes:()=>Rl,ai_sensor_find_circles:()=>Ll,ai_sensor_find_colors:()=>Fl,ai_sensor_find_licenseplates:()=>wl,ai_sensor_find_lines:()=>Sl,ai_sensor_find_qrcodes:()=>Ml,ai_sensor_find_rects:()=>Dl,ai_sensor_find_tags:()=>gl,ai_sensor_licenseplate:()=>Ul,ai_sensor_line:()=>Cl,ai_sensor_qrcode:()=>Tl,ai_sensor_qrcode_lite:()=>hl,ai_sensor_rect:()=>Nl,ai_sensor_rgb:()=>Ol,ai_sensor_tag:()=>cl,ai_sensor_use_uart_init:()=>Il,ai_sensor_yolo_recognize:()=>bl,ai_sensor_yolo_recognize_result:()=>Bl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>zl,MICROPYTHON_AI_Speech_unit:()=>ql,MICROPYTHON_AI_client:()=>Jl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>rd,mpython_blynk_app_notify:()=>nd,mpython_blynk_email:()=>od,mpython_blynk_get_timers:()=>pd,mpython_blynk_on_connected:()=>td,mpython_blynk_on_disconnected:()=>$l,mpython_blynk_run:()=>id,mpython_blynk_sensor_data_to_app:()=>ud,mpython_blynk_set_property:()=>_d,mpython_blynk_setup:()=>ld,mpython_blynk_stop_timers:()=>sd,mpython_blynk_sync_virtual:()=>Zl,mpython_blynk_terminal_widget_vpin:()=>jl,mpython_blynktimer:()=>ad,mpython_blynktimer_run:()=>ed});var v={};t.r(v),t.d(v,{cc_g1_init:()=>dd,cc_g1_read_bat:()=>Id,cc_g1_read_joystick:()=>Td,cc_g1_read_key:()=>hd,cc_g1_turnoff:()=>Md});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>Ad,ce_go_get_led_bright:()=>Rd,ce_go_get_led_state:()=>cd,ce_go_hall_attachInterrupt:()=>Ld,ce_go_hall_data:()=>Dd,ce_go_hall_initialize:()=>Nd,ce_go_led_bright:()=>Ed,ce_go_led_brightness:()=>gd,ce_go_light_number:()=>Od,ce_go_pin_light:()=>Yd,ce_go_pin_near:()=>Fd,ce_go_pin_near_line:()=>fd,ce_go_pin_near_state_change:()=>Pd,ce_go_stepper_keep:()=>Cd,ce_go_stepper_stop:()=>Sd,sensor_mixgome_eulerangles:()=>vd});var X={};t.r(X),t.d(X,{communicate_bluetooth_central_init:()=>hI,communicate_bluetooth_connect:()=>EI,communicate_bluetooth_disconnect:()=>RI,communicate_bluetooth_handle:()=>AI,communicate_bluetooth_is_connected:()=>gI,communicate_bluetooth_mac:()=>OI,communicate_bluetooth_peripheral_init:()=>MI,communicate_bluetooth_recv:()=>CI,communicate_bluetooth_recv_only:()=>SI,communicate_bluetooth_scan:()=>mI,communicate_bluetooth_send:()=>cI,communicate_espnow_init:()=>LI,communicate_espnow_init_new:()=>NI,communicate_i2c_available:()=>jd,communicate_i2c_init:()=>Vd,communicate_i2c_master_read:()=>Qd,communicate_i2c_onboard:()=>xd,communicate_i2c_read:()=>bd,communicate_i2c_scan:()=>Gd,communicate_i2c_write:()=>Bd,communicate_ir_recv_init:()=>_I,communicate_ir_send_init:()=>rI,communicate_ow_init:()=>$d,communicate_ow_read:()=>eI,communicate_ow_reset:()=>sI,communicate_ow_scan:()=>tI,communicate_ow_select:()=>nI,communicate_ow_write:()=>iI,communicate_spi_buffer:()=>kd,communicate_spi_init:()=>Ud,communicate_spi_onboard:()=>yd,communicate_spi_read:()=>Hd,communicate_spi_read_output:()=>Wd,communicate_spi_readinto:()=>Kd,communicate_spi_readinto_output:()=>Jd,communicate_spi_set:()=>wd,communicate_spi_write:()=>qd,communicate_spi_write_readinto:()=>zd,espnow_radio_channel:()=>YI,espnow_radio_channel_new:()=>xI,espnow_radio_on_off:()=>yI,espnow_radio_rec:()=>bI,espnow_radio_recv:()=>GI,espnow_radio_recv_certain_msg:()=>UI,espnow_radio_recv_certain_msg_new:()=>kI,espnow_radio_recv_msg:()=>BI,espnow_radio_recv_new:()=>wI,espnow_radio_send:()=>VI,espnow_radio_txpower:()=>XI,i2c_available:()=>lT,i2c_init:()=>jI,i2c_master_reader2:()=>rT,i2c_read:()=>ZI,i2c_scan:()=>tT,i2c_slave_onreceive:()=>Zd,i2c_write:()=>$I,internal_variable:()=>oI,ir_recv_timeout:()=>uI,ir_transmit_busy:()=>TI,ir_transmit_conventional_data:()=>lI,ir_transmit_raw_code:()=>II,ir_transmit_study_code:()=>dI,ir_whether_recv:()=>aI,lora_init:()=>HI,lora_packet:()=>WI,lora_recv:()=>JI,lora_send:()=>KI,network_espnow_info:()=>fI,network_espnow_mac:()=>DI,network_espnow_recv:()=>FI,network_espnow_recv_handle:()=>vI,network_espnow_send:()=>PI,recv_fun:()=>pI,spi_buffer:()=>nT,spi_init:()=>eT,spi_read:()=>sT,spi_read_output:()=>_T,spi_readinto:()=>oT,spi_readinto_output:()=>pT,spi_set:()=>iT,spi_write:()=>aT,spi_write_readinto:()=>uT,urequests_attribute:()=>zI,urequests_get:()=>qI,urequests_method:()=>QI});var x={};t.r(x),t.d(x,{display_animate:()=>UT,display_blink_rate:()=>VT,display_circle:()=>wT,display_color_seclet:()=>th,display_draw_4strings:()=>PT,display_fill:()=>GT,display_get_screen_image:()=>yT,display_help:()=>HT,display_image_size:()=>vT,display_lcd_use_i2c_init:()=>oh,display_line:()=>XT,display_line_arbitrarily:()=>xT,display_matrix_extern_bright_point:()=>CT,display_matrix_extern_bright_screen:()=>AT,display_matrix_extern_clear:()=>LT,display_matrix_extern_get_pixel:()=>gT,display_matrix_extern_get_screen_pixel:()=>ST,display_matrix_extern_image_builtins:()=>NT,display_matrix_extern_scroll_string:()=>mT,display_matrix_extern_scroll_string_delay:()=>OT,display_matrix_extern_shift:()=>cT,display_matrix_extern_show_frame_string:()=>ET,display_matrix_extern_show_frame_string_delay:()=>RT,display_matrix_extern_show_image:()=>hT,display_matrix_extern_show_image_or_string_delay:()=>MT,display_matrix_use_i2c_init:()=>TT,display_oled_drawPixel:()=>KT,display_oled_showBitmap:()=>WT,display_oled_use_i2c_init:()=>lh,display_onoff:()=>BT,display_rect:()=>YT,display_rgb_color:()=>bT,display_tm1650_power:()=>qT,display_tm1650_set_brightness:()=>jT,display_tm1650_show_dot:()=>QT,display_tm1650_show_num:()=>zT,display_tm_use_i2c_init:()=>JT,display_triangle:()=>kT,display_use_i2c_init:()=>FT,extern_oled_bright_point:()=>gh,extern_oled_clear:()=>Ch,extern_oled_get_pixel:()=>ch,extern_oled_hvline:()=>Ah,extern_oled_line:()=>Lh,extern_oled_scroll_string:()=>Mh,extern_oled_scroll_string_delay:()=>mh,extern_oled_shape_rect:()=>Sh,extern_oled_shift:()=>Rh,extern_oled_show_frame_string:()=>Oh,extern_oled_show_frame_string_delay:()=>Eh,extern_oled_show_image:()=>dh,extern_oled_show_image_or_string_delay:()=>hh,extern_oled_show_image_xy:()=>Ih,extern_oled_show_string:()=>Th,lcd_backlight:()=>uh,lcd_clear:()=>rh,lcd_print_string:()=>ah,lcd_show_image_or_string_delay:()=>ph,matrix_extern_image_arithmetic:()=>DT,matrix_extern_image_invert:()=>fT,tft_fill:()=>sh,tft_line_arbitrarily:()=>_h,tft_scroll_string_delay:()=>ih,tft_show_frame_string_delay:()=>nh,tft_show_image_or_string_delay:()=>eh,tft_show_image_xy:()=>$T,tft_use_spi_init:()=>ZT});var y={};t.r(y),t.d(y,{bitbot_display_image_create:()=>lM,display_bright_point:()=>Uh,display_bright_screen:()=>kh,display_clear:()=>Hh,display_get_pixel:()=>Gh,display_get_screen_pixel:()=>wh,display_image_builtins:()=>xh,display_image_builtins_all:()=>yh,display_image_create:()=>Xh,display_scroll_string:()=>Fh,display_scroll_string_delay:()=>Ph,display_shift:()=>Bh,display_show_frame_string:()=>vh,display_show_frame_string_delay:()=>Yh,display_show_image:()=>Dh,display_show_image_or_string_delay:()=>fh,image_arithmetic:()=>Vh,image_invert:()=>bh,mixbot_display_bright_screen:()=>uM,mixbot_display_get_ambientbright:()=>aM,mixbot_display_get_screen_pixel:()=>pM,mixbot_display_image_create:()=>oM,mixbot_display_rotate:()=>rM,mixgo_display_image_create_new:()=>Jh,mixgome_display_font:()=>qh,mixgome_display_image_create:()=>Wh,mixgomini_display_image_create:()=>Kh,mpython_display_hvline:()=>nM,mpython_display_line:()=>sM,mpython_display_shape_rect:()=>iM,mpython_pbm_image:()=>_M,onboard_oled_bright_point:()=>eM,onboard_oled_scroll_string_delay:()=>$h,onboard_oled_show_frame_string_delay:()=>tM,onboard_oled_show_image:()=>zh,onboard_oled_show_image_or_string_delay:()=>Zh,onboard_oled_show_image_xy:()=>Qh,onboard_oled_show_string:()=>jh,onboard_tft_bright_point:()=>SM,onboard_tft_bright_screen:()=>NM,onboard_tft_clear:()=>AM,onboard_tft_clock_clear:()=>YM,onboard_tft_clock_draw:()=>vM,onboard_tft_clock_get_rtctime:()=>FM,onboard_tft_clock_init:()=>fM,onboard_tft_clock_set_time:()=>PM,onboard_tft_display_hvline:()=>RM,onboard_tft_display_line:()=>cM,onboard_tft_display_shape_circle:()=>XM,onboard_tft_display_shape_rect:()=>EM,onboard_tft_fill:()=>DM,onboard_tft_get_pixel:()=>CM,onboard_tft_get_screen_pixel:()=>LM,onboard_tft_scroll_string:()=>hM,onboard_tft_scroll_string_delay:()=>MM,onboard_tft_shift:()=>gM,onboard_tft_show_frame_string:()=>mM,onboard_tft_show_frame_string_delay:()=>OM,onboard_tft_show_image:()=>dM,onboard_tft_show_image_or_string_delay:()=>TM,onboard_tft_show_image_xy:()=>IM});var V={};t.r(V),t.d(V,{factory_block:()=>WM,factory_block_return:()=>KM,factory_block_return_with_textarea:()=>qM,factory_block_with_textarea:()=>JM,factory_callMethod_noreturn:()=>kM,factory_callMethod_return:()=>HM,factory_create_with_container:()=>BM,factory_create_with_item:()=>GM,factory_declare:()=>wM,factory_from_import:()=>yM,factory_function_noreturn:()=>bM,factory_function_return:()=>UM,factory_import:()=>VM,folding_block:()=>zM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>mm,inout_analog_atten:()=>_m,inout_analog_read:()=>sm,inout_analog_read_init:()=>lm,inout_analog_write:()=>em,inout_analog_write_init:()=>rm,inout_analog_write_set:()=>im,inout_analog_write_set_freq:()=>Tm,inout_digital_init:()=>am,inout_digital_read:()=>$M,inout_digital_write:()=>ZM,inout_highlow:()=>jM,inout_pinMode:()=>Im,inout_pin_attachInterrupt:()=>pm,inout_pin_pressed:()=>om,inout_pin_pressed_init:()=>dm,inout_pwm_analog_write:()=>tm,inout_pwm_analog_write_init:()=>um,inout_pwm_analog_write_set_freq:()=>nm,pin_pressed:()=>Mm,pin_pressed_init:()=>hm});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>Um,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Gm,IOT_EMQX_PING:()=>bm,IOT_FORMATTING:()=>ym,IOT_FORMAT_STRING:()=>Vm,IOT_MIXIO_NTP:()=>Bm,IOT_MIXIO_PUBLISH:()=>fm,IOT_MIXIO_SUBSCRIBE:()=>Fm,iot_checkonenet:()=>jm,iot_client_onboard:()=>km,iot_create_with_item:()=>Nm,iot_http_client:()=>Hm,iot_http_data:()=>Wm,iot_mixio_check:()=>Ym,iot_mixio_connect:()=>Dm,iot_mixio_connect_only:()=>vm,iot_mixio_disconnect:()=>Pm,iot_mixio_format_msg:()=>xm,iot_mixio_format_topic:()=>Xm,iot_mixly_key:()=>wm,iot_mqtt_client:()=>Km,iot_mqtt_data:()=>Jm,iot_onenet_check:()=>gm,iot_onenet_connect:()=>Rm,iot_onenet_disconnect:()=>cm,iot_onenet_publish:()=>Sm,iot_onenet_publish_dict:()=>Cm,iot_onenetconnect:()=>zm,iot_onenetdisconnect:()=>Qm,iot_publish:()=>Zm,iot_publish_container:()=>Am,iot_publish_item:()=>Lm,iot_wifi_connect:()=>Em,iot_wificonnect:()=>qm});var G={};t.r(G),t.d(G,{network_ap_connect:()=>IO,network_connect:()=>sO,network_get_connect:()=>rO,network_get_wifi:()=>dO,network_init:()=>tO,network_is_active:()=>iO,network_open:()=>eO,network_scan:()=>nO,network_server:()=>TO,network_socket_accept:()=>EO,network_socket_bind:()=>MO,network_socket_close:()=>SO,network_socket_connect:()=>mO,network_socket_init:()=>hO,network_socket_listen:()=>OO,network_socket_receive:()=>RO,network_socket_receive_from:()=>gO,network_socket_send:()=>cO,network_socket_send_to:()=>CO,network_stop:()=>lO,network_wifi_connect:()=>_O,ntptime_address:()=>fO,ntptime_time:()=>DO,requests_attribute:()=>LO,requests_get:()=>AO,requests_method:()=>NO,urequests_connect_url:()=>aO,urequests_response:()=>uO,urequests_wifi_connect:()=>oO,urequests_wifi_url:()=>pO});var U={};t.r(U),t.d(U,{HCSR04:()=>FE,PS2_Button:()=>XE,PS2_Buttons:()=>yE,PS2_Buttons_new:()=>GE,PS2_State:()=>xE,PS2_init:()=>PE,PS2_init_new:()=>bE,PS2_stk:()=>VE,PS2_stk_new:()=>UE,PS2_vibration:()=>YE,PS2_vibration_new:()=>BE,esp32_s2_weather_init:()=>LE,esp32_s2_weather_rain:()=>DE,esp32_s2_weather_wd:()=>NE,esp32_s2_weather_ws:()=>fE,extern_rfid_read:()=>dE,extern_rfid_readcontent:()=>TE,extern_rfid_readid:()=>IE,extern_rfid_status:()=>mE,extern_rfid_write:()=>hE,extern_rfid_write_return:()=>ME,gnss_get_data:()=>WE,gnss_have_data:()=>HE,mixbot_sensor_extern_get_addr:()=>ZE,mixbot_sensor_extern_set_addr:()=>$E,pm25_get_data:()=>kE,robot_button_extern_get_value:()=>KE,robot_color_extern_get_value:()=>jE,robot_infrared_extern_get_value:()=>qE,robot_infrared_extern_grey_get_value:()=>zE,robot_potentiometer_extern_get_value:()=>QE,robot_sonar_extern_get_value:()=>tR,robot_sonar_extern_led:()=>eR,robot_touch_extern_get_value:()=>JE,sensor_APDS9960_extern:()=>qO,sensor_LTR308_extern:()=>zO,sensor_LTR390UV_extern:()=>jO,sensor_MAX30102_extern:()=>JO,sensor_QMC5883L_extern:()=>iE,sensor_VL530LX_extern:()=>ZO,sensor_adxl345_get_acceleration:()=>yO,sensor_aht11_extern:()=>tE,sensor_bmp:()=>wO,sensor_compass_reset:()=>rE,sensor_dht11:()=>bO,sensor_ds18x20:()=>HO,sensor_hp203_extern:()=>eE,sensor_light_level:()=>VO,sensor_lm35:()=>WO,sensor_ltr381_extern:()=>QO,sensor_mixgo_extern_button_attachInterrupt:()=>XO,sensor_mixgo_extern_button_get_presses:()=>YO,sensor_mixgo_extern_button_is_pressed:()=>PO,sensor_mixgo_extern_button_was_pressed:()=>vO,sensor_mixgo_extern_light:()=>BO,sensor_mixgo_extern_pin_near:()=>UO,sensor_mixgo_extern_sound:()=>GO,sensor_mixgoce_hot_wheel_degrees:()=>AE,sensor_mixgoce_hot_wheel_is_touched:()=>SE,sensor_mpu9250_attachGestureInterrupt:()=>xO,sensor_mpu9250_calibrate_compass:()=>pE,sensor_mpu9250_field_strength:()=>uE,sensor_mpu9250_gesture:()=>nE,sensor_mpu9250_get_acceleration:()=>sE,sensor_mpu9250_get_gyro:()=>oE,sensor_mpu9250_get_magnetic:()=>_E,sensor_mpu9250_temperature:()=>aE,sensor_sht:()=>kO,sensor_shtc3_extern:()=>$O,sensor_use_i2c_init:()=>KO,sensor_use_spi_init:()=>lE,sensor_use_uart_init:()=>wE,sensor_weather_solo_init:()=>iR,sensor_weather_solo_rain:()=>_R,sensor_weather_solo_wd:()=>nR,sensor_weather_solo_ws:()=>sR,weather_data:()=>OE,weather_have_data:()=>EE,weather_set_label:()=>cE,weather_set_label_container:()=>gE,weather_set_label_item:()=>CE,weather_uart_mixio:()=>RE});var w={};t.r(w),t.d(w,{HCSR04:()=>gR,RTC_set_date:()=>cR,RTC_set_time:()=>RR,bitbot_als_num:()=>Nc,dht11:()=>Xc,number1:()=>SR,number2:()=>AR,number3:()=>LR,number4:()=>NR,number5:()=>DR,number6:()=>fR,number7:()=>FR,onboard_RTC_get_time:()=>VR,onboard_RTC_get_timestamp:()=>bR,onboard_RTC_set_datetime:()=>UR,onboard_RTC_settime_string:()=>GR,onboard_RTC_timestamp_totuple:()=>BR,rfid_readcontent:()=>zR,rfid_readid:()=>qR,rfid_write:()=>QR,rfid_write_return:()=>jR,sensor_LTR308:()=>kR,sensor_aht11:()=>WR,sensor_bitbot_ALS:()=>Lc,sensor_button_get_presses:()=>Fc,sensor_button_is_pressed:()=>Dc,sensor_button_was_pressed:()=>fc,sensor_distance_hrsc04:()=>ER,sensor_eulerangles:()=>$R,sensor_field_strength:()=>xc,sensor_get_acceleration:()=>ZR,sensor_get_temperature:()=>KR,sensor_hp203:()=>JR,sensor_light:()=>Yc,sensor_mixbot_get_gyro:()=>Ac,sensor_mixbot_patrol_calibrate:()=>gc,sensor_mixbot_patrol_value:()=>Cc,sensor_mixbot_temperature:()=>Sc,sensor_mixgo_LTR308:()=>yR,sensor_mixgo_button_attachInterrupt:()=>rR,sensor_mixgo_button_get_presses:()=>uR,sensor_mixgo_button_is_pressed:()=>pR,sensor_mixgo_button_was_pressed:()=>aR,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>rc,sensor_mixgo_cc_mmc5603_get_angle:()=>uc,sensor_mixgo_cc_mmc5603_get_magnetic:()=>ac,sensor_mixgo_light:()=>CR,sensor_mixgo_nova_LTR308:()=>xR,sensor_mixgo_nova_pin_near:()=>XR,sensor_mixgo_pin_near:()=>YR,sensor_mixgo_pin_near_double:()=>vR,sensor_mixgo_pin_near_single:()=>PR,sensor_mixgo_pin_pressed:()=>hR,sensor_mixgo_touch_slide:()=>OR,sensor_mixgocar42_button_attachInterrupt:()=>TR,sensor_mixgocar42_button_get_presses:()=>IR,sensor_mixgocar42_button_is_pressed:()=>lR,sensor_mixgocar42_button_was_pressed:()=>dR,sensor_mixgocar_battery_left:()=>cc,sensor_mixgocar_pin_near:()=>Ec,sensor_mixgocar_pin_near_line:()=>Oc,sensor_mixgocar_pin_near_state_change:()=>Rc,sensor_mixgoce_pin_pressed:()=>MR,sensor_mixgoce_temperature:()=>dc,sensor_mixgome_temperature:()=>lc,sensor_mpython_pin_pressed:()=>mR,sensor_mpython_qmi8658_get_gyro:()=>Ic,sensor_mpython_qmi8658_temperature:()=>Tc,sensor_onboard_compass_reset:()=>pc,sensor_onboard_mpu9250_calibrate_compass:()=>sc,sensor_onboard_mpu9250_field_strength:()=>oc,sensor_onboard_mpu9250_gesture:()=>tc,sensor_onboard_mpu9250_get_acceleration:()=>ec,sensor_onboard_mpu9250_get_gyro:()=>nc,sensor_onboard_mpu9250_get_magnetic:()=>ic,sensor_onboard_mpu9250_temperature:()=>_c,sensor_pin_near:()=>vc,sensor_pin_pressed:()=>Pc,sensor_rm_acc:()=>mc,sensor_rm_battery_left:()=>Mc,sensor_rm_pin_near_double:()=>hc,sensor_rtc_init:()=>wR,sensor_sound:()=>HR,sensor_temperature:()=>yc});var k={};t.r(k),t.d(k,{serial_any:()=>Hc,serial_begin:()=>zc,serial_print:()=>Bc,serial_print_byte:()=>bc,serial_print_hex:()=>Uc,serial_println:()=>Gc,serial_read_from_ai:()=>sg,serial_readline:()=>Wc,serial_readstr:()=>kc,serial_readstr_until:()=>Kc,serial_receive_data_event:()=>wc,serial_send_to_ai:()=>ng,serial_softserial:()=>qc,serial_softserial_new:()=>Jc,system_input:()=>Qc,system_print:()=>jc,system_print_container:()=>eg,system_print_end:()=>$c,system_print_inline:()=>Zc,system_print_item:()=>ig,system_print_many:()=>tg});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>ag,Timer_init:()=>cg,base_delay:()=>Sg,controls_delay:()=>pg,controls_delay_new:()=>og,controls_millis:()=>rg,controls_uname:()=>dg,raw_block:()=>lg,reset:()=>ug,system_bitbot_shutdown:()=>Rg,system_machine_reset:()=>Eg,system_ticks_diff:()=>hg,system_timer:()=>Tg,system_timer_init:()=>Mg,system_wdt_feed:()=>Og,system_wdt_init:()=>mg,time_ticks_diff:()=>Cg,timer:()=>Ig,timer2:()=>gg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>Ng,WEATHER_HOUR:()=>Dg,WEATHER_NOW:()=>Lg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>qg,actuator_extern_get_led_state:()=>zg,actuator_extern_led_bright:()=>Jg,actuator_extern_led_brightness:()=>Qg,actuator_ms32006_dcmotor:()=>yg,actuator_ms32006_init:()=>xg,actuator_ms32006_stepper:()=>Vg,actuator_neopixel_init:()=>jg,actuator_neopixel_rgb:()=>tC,actuator_neopixel_rgb_all:()=>Zg,actuator_neopixel_write:()=>$g,actuator_use_uart_init:()=>eC,esp32_music_get_tempo_extern:()=>kg,esp32_music_pitch:()=>Bg,esp32_music_pitch_init:()=>bg,esp32_music_pitch_with_time:()=>Gg,esp32_music_play_list:()=>Hg,esp32_music_reset_extern:()=>Wg,esp32_music_set_tempo_extern:()=>wg,esp32_music_stop:()=>Ug,mixbot_actuator_extern_get_addr:()=>EC,mixbot_actuator_extern_set_addr:()=>RC,mixbot_addr_extern:()=>oC,robot_led_extern:()=>rC,robot_led_extern_get_value:()=>lC,robot_motor_extern:()=>pC,robot_motor_extern_get_speed:()=>aC,robot_servo_extern_absolute_run:()=>hC,robot_servo_extern_get_status:()=>dC,robot_servo_extern_relative_continue:()=>OC,robot_servo_extern_relative_origin:()=>MC,robot_servo_extern_relative_run:()=>mC,robot_servo_extern_stop:()=>TC,robot_servo_extern_stop_mode:()=>IC,robot_traffic_light_extern:()=>uC,servo_get_angle:()=>Yg,servo_get_speed:()=>Xg,servo_init:()=>fg,servo_move:()=>Kg,servo_set_angle:()=>Pg,servo_set_speed:()=>vg,servo_speed_360:()=>Fg,syn6288_builtin_voice:()=>sC,syn6288_get_voice:()=>nC,syn6288_set_voice:()=>iC,syn6288_tts_play:()=>_C});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>qC,actuator_dc_motor_stop:()=>zC,actuator_get_led_bright:()=>PC,actuator_get_led_state:()=>vC,actuator_led_bright:()=>FC,actuator_led_brightness:()=>YC,actuator_mixbot_buzzer_on_off:()=>tS,actuator_mixgo_nova_mic_get:()=>_S,actuator_mixgo_nova_mic_set:()=>sS,actuator_mixgo_nova_onboard_music_pitch:()=>lS,actuator_mixgo_nova_onboard_music_stop:()=>dS,actuator_mixgo_nova_play_audio:()=>uS,actuator_mixgo_nova_play_online_audio:()=>rS,actuator_mixgo_nova_record_audio:()=>aS,actuator_mixgo_nova_voice_get:()=>pS,actuator_mixgo_nova_voice_set:()=>oS,actuator_mixgo_zero_led_color:()=>XC,actuator_onboard_neopixel_rgb:()=>UC,actuator_onboard_neopixel_rgb_all:()=>wC,actuator_onboard_neopixel_rgb_show_all_chase:()=>kC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>HC,actuator_onboard_neopixel_write:()=>GC,actuator_stepper_keep:()=>KC,actuator_stepper_stop:()=>JC,analog_keyboard_input:()=>MS,analog_keyboard_str:()=>cS,analog_mouse_input:()=>ES,bitbot_motor:()=>nS,bitbot_move:()=>eS,bitbot_stop:()=>iS,cc_number:()=>xC,esp32_music_get_tempo:()=>gC,esp32_music_reset:()=>NC,esp32_music_set_tempo:()=>cC,esp32_onboard_music_pitch:()=>CC,esp32_onboard_music_pitch_with_time:()=>SC,esp32_onboard_music_play_list:()=>LC,esp32_onboard_music_stop:()=>AC,general_key:()=>OS,general_key_tuple:()=>gS,get_power_output:()=>TS,ledswitch:()=>fC,mixbot_motor:()=>$C,mixbot_motor_status:()=>QC,mixbot_move:()=>jC,mixbot_stop:()=>ZC,mouse_key:()=>RS,number:()=>DC,rm_actuator_get_led_bright:()=>VC,rm_actuator_get_led_state:()=>bC,rm_actuator_led_bright:()=>yC,rm_actuator_led_brightness:()=>BC,rm_motor:()=>WC,set_all_power_output:()=>hS,set_power_output:()=>IS,special_key:()=>mS});var q={};t.r(q),t.d(q,{ai_sensor_20object:()=>eA,ai_sensor_ailocal_class:()=>HS,ai_sensor_ailocal_class_result:()=>WS,ai_sensor_ailocal_train:()=>kS,ai_sensor_asr_recognize:()=>QS,ai_sensor_audio_play:()=>JS,ai_sensor_audio_record:()=>KS,ai_sensor_barcode:()=>fS,ai_sensor_circle:()=>xS,ai_sensor_classifier_faces:()=>tA,ai_sensor_color:()=>BS,ai_sensor_color_chases:()=>wS,ai_sensor_color_chases_result:()=>US,ai_sensor_config:()=>AS,ai_sensor_face:()=>$S,ai_sensor_find_20objects:()=>iA,ai_sensor_find_barcodes:()=>FS,ai_sensor_find_circles:()=>yS,ai_sensor_find_colors:()=>GS,ai_sensor_find_licenseplates:()=>ZS,ai_sensor_find_lines:()=>XS,ai_sensor_find_qrcodes:()=>DS,ai_sensor_find_rects:()=>bS,ai_sensor_find_tags:()=>vS,ai_sensor_licenseplate:()=>jS,ai_sensor_line:()=>YS,ai_sensor_qrcode:()=>NS,ai_sensor_qrcode_lite:()=>SS,ai_sensor_rect:()=>VS,ai_sensor_rgb:()=>LS,ai_sensor_tag:()=>PS,ai_sensor_use_uart_init:()=>CS,ai_sensor_yolo_recognize:()=>qS,ai_sensor_yolo_recognize_result:()=>zS});var z={};t.r(z),t.d(z,{MICROPYTHON_AI_Speech_asr:()=>_A,MICROPYTHON_AI_Speech_unit:()=>sA,MICROPYTHON_AI_client:()=>nA});var Q={};t.r(Q),t.d(Q,{mpython_blynk_app_data:()=>mA,mpython_blynk_app_notify:()=>dA,mpython_blynk_email:()=>OA,mpython_blynk_get_timers:()=>TA,mpython_blynk_on_connected:()=>uA,mpython_blynk_on_disconnected:()=>aA,mpython_blynk_run:()=>lA,mpython_blynk_sensor_data_to_app:()=>MA,mpython_blynk_set_property:()=>EA,mpython_blynk_setup:()=>RA,mpython_blynk_stop_timers:()=>IA,mpython_blynk_sync_virtual:()=>pA,mpython_blynk_terminal_widget_vpin:()=>oA,mpython_blynktimer:()=>hA,mpython_blynktimer_run:()=>rA});var j={};t.r(j),t.d(j,{cc_g1_read_bat:()=>cA,cc_g1_read_joystick:()=>gA,cc_g1_read_key:()=>CA,cc_g1_turnoff:()=>SA});var Z={};t.r(Z),t.d(Z,{ce_go_dc_motor:()=>vA,ce_go_get_led_bright:()=>NA,ce_go_get_led_state:()=>DA,ce_go_hall_attachInterrupt:()=>YA,ce_go_hall_data:()=>xA,ce_go_hall_initialize:()=>XA,ce_go_led_bright:()=>LA,ce_go_led_brightness:()=>fA,ce_go_light_number:()=>AA,ce_go_pin_light:()=>GA,ce_go_pin_near:()=>VA,ce_go_pin_near_line:()=>yA,ce_go_pin_near_state_change:()=>bA,ce_go_stepper_keep:()=>FA,ce_go_stepper_stop:()=>PA,sensor_mixgome_eulerangles:()=>BA});var $={};t.r($),t.d($,{communicate_bluetooth_central_init:()=>cL,communicate_bluetooth_connect:()=>SL,communicate_bluetooth_disconnect:()=>AL,communicate_bluetooth_handle:()=>PL,communicate_bluetooth_is_connected:()=>NL,communicate_bluetooth_mac:()=>LL,communicate_bluetooth_peripheral_init:()=>gL,communicate_bluetooth_recv:()=>FL,communicate_bluetooth_recv_only:()=>fL,communicate_bluetooth_scan:()=>CL,communicate_bluetooth_send:()=>DL,communicate_espnow_init:()=>vL,communicate_espnow_init_new:()=>YL,communicate_i2c_available:()=>qA,communicate_i2c_init:()=>kA,communicate_i2c_master_read:()=>JA,communicate_i2c_onboard:()=>UA,communicate_i2c_read:()=>HA,communicate_i2c_scan:()=>KA,communicate_i2c_write:()=>WA,communicate_ir_recv_init:()=>lL,communicate_ir_send_init:()=>ML,communicate_ow_init:()=>_L,communicate_ow_read:()=>aL,communicate_ow_reset:()=>pL,communicate_ow_scan:()=>oL,communicate_ow_select:()=>rL,communicate_ow_write:()=>uL,communicate_spi_buffer:()=>ZA,communicate_spi_init:()=>QA,communicate_spi_onboard:()=>wA,communicate_spi_read:()=>$A,communicate_spi_read_output:()=>tL,communicate_spi_readinto:()=>eL,communicate_spi_readinto_output:()=>iL,communicate_spi_set:()=>jA,communicate_spi_write:()=>nL,communicate_spi_write_readinto:()=>sL,espnow_radio_channel:()=>BL,espnow_radio_channel_new:()=>UL,espnow_radio_on_off:()=>wL,espnow_radio_rec:()=>HL,espnow_radio_recv:()=>KL,espnow_radio_recv_certain_msg:()=>JL,espnow_radio_recv_certain_msg_new:()=>zL,espnow_radio_recv_msg:()=>WL,espnow_radio_recv_new:()=>qL,espnow_radio_send:()=>kL,espnow_radio_txpower:()=>GL,i2c_slave_onreceive:()=>zA,internal_variable:()=>dL,ir_recv_timeout:()=>hL,ir_transmit_busy:()=>RL,ir_transmit_conventional_data:()=>mL,ir_transmit_raw_code:()=>EL,ir_transmit_study_code:()=>OL,ir_whether_recv:()=>TL,lora_init:()=>QL,lora_packet:()=>jL,lora_recv:()=>$L,lora_send:()=>ZL,network_espnow_info:()=>xL,network_espnow_mac:()=>XL,network_espnow_recv:()=>yL,network_espnow_recv_handle:()=>bL,network_espnow_send:()=>VL,recv_fun:()=>IL,urequests_attribute:()=>eN,urequests_get:()=>tN,urequests_method:()=>iN});var tt={};t.r(tt),t.d(tt,{display_animate:()=>NN,display_circle:()=>DN,display_color_seclet:()=>BN,display_draw_4strings:()=>RN,display_fill:()=>LN,display_lcd_use_i2c_init:()=>WN,display_line:()=>CN,display_line_arbitrarily:()=>cN,display_matrix_extern_bright_point:()=>IN,display_matrix_extern_bright_screen:()=>hN,display_matrix_extern_clear:()=>rN,display_matrix_extern_get_pixel:()=>dN,display_matrix_extern_get_screen_pixel:()=>TN,display_matrix_extern_image_builtins:()=>MN,display_matrix_extern_scroll_string:()=>aN,display_matrix_extern_scroll_string_delay:()=>uN,display_matrix_extern_shift:()=>lN,display_matrix_extern_show_frame_string:()=>oN,display_matrix_extern_show_frame_string_delay:()=>pN,display_matrix_extern_show_image:()=>sN,display_matrix_extern_show_image_or_string_delay:()=>_N,display_matrix_use_i2c_init:()=>nN,display_oled_drawPixel:()=>PN,display_oled_showBitmap:()=>FN,display_oled_use_i2c_init:()=>QN,display_onoff:()=>SN,display_rect:()=>gN,display_tm1650_power:()=>YN,display_tm1650_set_brightness:()=>yN,display_tm1650_show_dot:()=>xN,display_tm1650_show_num:()=>XN,display_tm_use_i2c_init:()=>vN,display_triangle:()=>fN,display_use_i2c_init:()=>EN,extern_oled_bright_point:()=>aD,extern_oled_clear:()=>_D,extern_oled_get_pixel:()=>pD,extern_oled_hvline:()=>rD,extern_oled_line:()=>lD,extern_oled_scroll_string:()=>nD,extern_oled_scroll_string_delay:()=>sD,extern_oled_shape_rect:()=>uD,extern_oled_shift:()=>oD,extern_oled_show_frame_string:()=>eD,extern_oled_show_frame_string_delay:()=>iD,extern_oled_show_image:()=>jN,extern_oled_show_image_or_string_delay:()=>tD,extern_oled_show_image_xy:()=>ZN,extern_oled_show_string:()=>$N,image_shift:()=>AN,lcd_backlight:()=>qN,lcd_clear:()=>zN,lcd_print_string:()=>JN,lcd_show_image_or_string_delay:()=>KN,matrix_extern_image_arithmetic:()=>mN,matrix_extern_image_invert:()=>ON,tft_fill:()=>kN,tft_line_arbitrarily:()=>HN,tft_scroll_string_delay:()=>wN,tft_show_frame_string_delay:()=>UN,tft_show_image_or_string_delay:()=>GN,tft_show_image_xy:()=>bN,tft_use_spi_init:()=>VN});var et={};t.r(et),t.d(et,{bitbot_display_image_create:()=>zD,display_bright_point:()=>LD,display_bright_screen:()=>DD,display_clear:()=>cD,display_get_pixel:()=>AD,display_get_screen_pixel:()=>ND,display_image_builtins:()=>OD,display_image_builtins_all:()=>ED,display_image_create:()=>RD,display_scroll_string:()=>MD,display_scroll_string_delay:()=>mD,display_shift:()=>SD,display_show_frame_string:()=>TD,display_show_frame_string_delay:()=>hD,display_show_image:()=>dD,display_show_image_or_string_delay:()=>ID,image_arithmetic:()=>gD,image_invert:()=>CD,mixbot_display_bright_screen:()=>JD,mixbot_display_get_ambientbright:()=>KD,mixbot_display_get_screen_pixel:()=>WD,mixbot_display_image_create:()=>HD,mixbot_display_rotate:()=>qD,mixgo_display_image_create_new:()=>vD,mixgome_display_font:()=>PD,mixgome_display_image_create:()=>fD,mixgomini_display_image_create:()=>FD,mpython_display_hvline:()=>wD,mpython_display_line:()=>kD,mpython_display_shape_rect:()=>UD,mpython_pbm_image:()=>YD,onboard_oled_bright_point:()=>GD,onboard_oled_scroll_string_delay:()=>BD,onboard_oled_show_frame_string_delay:()=>bD,onboard_oled_show_image:()=>XD,onboard_oled_show_image_or_string_delay:()=>VD,onboard_oled_show_image_xy:()=>xD,onboard_oled_show_string:()=>yD,onboard_tft_bright_point:()=>rf,onboard_tft_bright_screen:()=>df,onboard_tft_clear:()=>pf,onboard_tft_clock_clear:()=>Of,onboard_tft_clock_draw:()=>mf,onboard_tft_clock_get_rtctime:()=>hf,onboard_tft_clock_init:()=>Tf,onboard_tft_clock_set_time:()=>Mf,onboard_tft_display_hvline:()=>_f,onboard_tft_display_line:()=>of,onboard_tft_display_shape_circle:()=>Ef,onboard_tft_display_shape_rect:()=>sf,onboard_tft_fill:()=>If,onboard_tft_get_pixel:()=>uf,onboard_tft_get_screen_pixel:()=>lf,onboard_tft_scroll_string:()=>ef,onboard_tft_scroll_string_delay:()=>nf,onboard_tft_shift:()=>af,onboard_tft_show_frame_string:()=>$D,onboard_tft_show_frame_string_delay:()=>tf,onboard_tft_show_image:()=>QD,onboard_tft_show_image_or_string_delay:()=>ZD,onboard_tft_show_image_xy:()=>jD});var it={};t.r(it),t.d(it,{factory_block:()=>Nf,factory_block_return:()=>Df,factory_block_return_with_textarea:()=>Ff,factory_block_with_textarea:()=>ff,factory_callMethod_noreturn:()=>Af,factory_callMethod_return:()=>Lf,factory_declare:()=>Sf,factory_from_import:()=>Rf,factory_function_noreturn:()=>gf,factory_function_return:()=>Cf,factory_import:()=>cf,folding_block:()=>Pf});var nt={};t.r(nt),t.d(nt,{inout_analog_atten:()=>Kf,inout_analog_read:()=>Bf,inout_analog_read_init:()=>Wf,inout_analog_write:()=>yf,inout_analog_write_init:()=>Hf,inout_analog_write_set:()=>Vf,inout_digital_init:()=>wf,inout_digital_read:()=>Xf,inout_digital_write:()=>Yf,inout_highlow:()=>vf,inout_pin_attachInterrupt:()=>Uf,inout_pin_pressed:()=>Gf,inout_pin_pressed_init:()=>Jf,inout_pwm_analog_write:()=>xf,inout_pwm_analog_write_init:()=>kf,inout_pwm_analog_write_set_freq:()=>bf});var st={};t.r(st),t.d(st,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>dF,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>rF,IOT_EMQX_PING:()=>IF,IOT_FORMATTING:()=>aF,IOT_FORMAT_STRING:()=>uF,IOT_MIXIO_NTP:()=>TF,IOT_MIXIO_PUBLISH:()=>eF,IOT_MIXIO_SUBSCRIBE:()=>iF,iot_client_onboard:()=>hF,iot_http_client:()=>MF,iot_http_data:()=>mF,iot_mixio_check:()=>_F,iot_mixio_connect:()=>tF,iot_mixio_connect_only:()=>sF,iot_mixio_disconnect:()=>nF,iot_mixio_format_msg:()=>pF,iot_mixio_format_topic:()=>oF,iot_mixly_key:()=>lF,iot_mqtt_client:()=>OF,iot_mqtt_data:()=>EF,iot_onenet_check:()=>Zf,iot_onenet_connect:()=>zf,iot_onenet_disconnect:()=>Qf,iot_onenet_publish:()=>$f,iot_onenet_publish_dict:()=>jf,iot_wifi_connect:()=>qf});var _t={};t.r(_t),t.d(_t,{network_ap_connect:()=>DF,network_connect:()=>cF,network_get_connect:()=>CF,network_get_wifi:()=>NF,network_init:()=>RF,network_is_active:()=>LF,network_open:()=>AF,network_scan:()=>fF,network_server:()=>FF,network_socket_accept:()=>xF,network_socket_bind:()=>vF,network_socket_close:()=>GF,network_socket_connect:()=>YF,network_socket_init:()=>PF,network_socket_listen:()=>XF,network_socket_receive:()=>yF,network_socket_receive_from:()=>bF,network_socket_send:()=>VF,network_socket_send_to:()=>BF,network_stop:()=>SF,network_wifi_connect:()=>gF,ntptime_address:()=>WF,ntptime_time:()=>HF,requests_attribute:()=>wF,requests_get:()=>UF,requests_method:()=>kF,urequests_connect_url:()=>qF,urequests_response:()=>zF,urequests_wifi_connect:()=>KF,urequests_wifi_url:()=>JF});var ot={};t.r(ot),t.d(ot,{HCSR04:()=>bP,PS2_Button:()=>UP,PS2_Buttons:()=>wP,PS2_Buttons_new:()=>QP,PS2_State:()=>kP,PS2_init:()=>BP,PS2_init_new:()=>qP,PS2_stk:()=>HP,PS2_stk_new:()=>jP,PS2_vibration:()=>GP,PS2_vibration_new:()=>zP,RTC_get_time:()=>KP,RTC_set_date:()=>nP,RTC_set_datetime:()=>WP,RTC_set_time:()=>iP,esp32_s2_weather_init:()=>XP,esp32_s2_weather_rain:()=>yP,esp32_s2_weather_wd:()=>xP,esp32_s2_weather_ws:()=>VP,extern_rfid_read:()=>gP,extern_rfid_readcontent:()=>SP,extern_rfid_readid:()=>CP,extern_rfid_status:()=>NP,extern_rfid_write:()=>AP,extern_rfid_write_return:()=>LP,gnss_get_data:()=>tv,gnss_have_data:()=>ev,mixbot_sensor_extern_get_addr:()=>rv,mixbot_sensor_extern_set_addr:()=>lv,pm25_get_data:()=>$P,robot_button_extern_get_value:()=>iv,robot_color_extern_get_value:()=>pv,robot_infrared_extern_get_value:()=>sv,robot_infrared_extern_grey_get_value:()=>_v,robot_potentiometer_extern_get_value:()=>ov,robot_sonar_extern_get_value:()=>av,robot_sonar_extern_led:()=>uv,robot_touch_extern_get_value:()=>nv,sensor_APDS9960_extern:()=>dP,sensor_LTR308_extern:()=>IP,sensor_LTR390UV_extern:()=>MP,sensor_MAX30102_extern:()=>lP,sensor_QMC5883L_extern:()=>mP,sensor_VL530LX_extern:()=>RP,sensor_aht11_extern:()=>EP,sensor_bmp:()=>aP,sensor_dht11:()=>JP,sensor_distance_hrsc04:()=>eP,sensor_hp203_extern:()=>TP,sensor_ltr381_extern:()=>hP,sensor_mixgo_extern_button_attachInterrupt:()=>$F,sensor_mixgo_extern_button_get_presses:()=>ZF,sensor_mixgo_extern_button_is_pressed:()=>QF,sensor_mixgo_extern_button_was_pressed:()=>jF,sensor_mixgo_extern_light:()=>sP,sensor_mixgo_extern_pin_near:()=>oP,sensor_mixgo_extern_sound:()=>_P,sensor_mixgoce_hot_wheel_degrees:()=>YP,sensor_mixgoce_hot_wheel_is_touched:()=>vP,sensor_mpu9250_attachGestureInterrupt:()=>tP,sensor_rtc_init:()=>pP,sensor_sht:()=>uP,sensor_shtc3_extern:()=>OP,sensor_use_i2c_init:()=>rP,sensor_use_spi_init:()=>cP,sensor_use_uart_init:()=>ZP,sensor_weather_solo_init:()=>dv,sensor_weather_solo_rain:()=>hv,sensor_weather_solo_wd:()=>Iv,sensor_weather_solo_ws:()=>Tv,weather_data:()=>DP,weather_have_data:()=>fP,weather_set_label:()=>PP,weather_uart_mixio:()=>FP});var pt={};t.r(pt),t.d(pt,{HCSR04:()=>Sv,bitbot_als_num:()=>wY,dht11:()=>QY,number1:()=>Av,number2:()=>Lv,number3:()=>Nv,number4:()=>Dv,number5:()=>fv,number6:()=>Fv,number7:()=>Pv,onboard_RTC_get_time:()=>RY,onboard_RTC_get_timestamp:()=>cY,onboard_RTC_set_datetime:()=>OY,onboard_RTC_settime_string:()=>EY,onboard_RTC_timestamp_totuple:()=>gY,rfid_readcontent:()=>Kv,rfid_readid:()=>Wv,rfid_write:()=>Jv,rfid_write_return:()=>qv,sensor_LTR308:()=>Gv,sensor_adxl345_get_acceleration:()=>nY,sensor_aht11:()=>kv,sensor_bitbot_ALS:()=>UY,sensor_button_get_presses:()=>WY,sensor_button_is_pressed:()=>kY,sensor_button_was_pressed:()=>HY,sensor_compass_reset:()=>uY,sensor_ds18x20:()=>bv,sensor_eulerangles:()=>Qv,sensor_get_acceleration:()=>zv,sensor_get_temperature:()=>Hv,sensor_hp203:()=>wv,sensor_light:()=>zY,sensor_lm35:()=>Bv,sensor_mixbot_get_gyro:()=>GY,sensor_mixbot_patrol_calibrate:()=>VY,sensor_mixbot_patrol_value:()=>bY,sensor_mixbot_temperature:()=>BY,sensor_mixgo_LTR308:()=>yv,sensor_mixgo_button_attachInterrupt:()=>Ev,sensor_mixgo_button_get_presses:()=>Ov,sensor_mixgo_button_is_pressed:()=>Mv,sensor_mixgo_button_was_pressed:()=>mv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>AY,sensor_mixgo_cc_mmc5603_get_angle:()=>SY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>CY,sensor_mixgo_light:()=>qY,sensor_mixgo_nova_LTR308:()=>Vv,sensor_mixgo_nova_pin_near:()=>xv,sensor_mixgo_pin_near:()=>Xv,sensor_mixgo_pin_near_double:()=>Yv,sensor_mixgo_pin_near_single:()=>vv,sensor_mixgo_pin_pressed:()=>eY,sensor_mixgo_touch_slide:()=>tY,sensor_mixgocar42_button_attachInterrupt:()=>Cv,sensor_mixgocar42_button_get_presses:()=>gv,sensor_mixgocar42_button_is_pressed:()=>Rv,sensor_mixgocar42_button_was_pressed:()=>cv,sensor_mixgocar_battery_left:()=>yY,sensor_mixgocar_pin_near:()=>XY,sensor_mixgocar_pin_near_line:()=>YY,sensor_mixgocar_pin_near_state_change:()=>xY,sensor_mixgoce_pin_pressed:()=>$v,sensor_mixgoce_temperature:()=>NY,sensor_mixgome_temperature:()=>LY,sensor_mpu9250_calibrate_compass:()=>oY,sensor_mpu9250_field_strength:()=>aY,sensor_mpu9250_gesture:()=>jv,sensor_mpu9250_get_acceleration:()=>Zv,sensor_mpu9250_get_gyro:()=>_Y,sensor_mpu9250_get_magnetic:()=>sY,sensor_mpu9250_temperature:()=>pY,sensor_mpython_pin_pressed:()=>iY,sensor_mpython_qmi8658_get_gyro:()=>DY,sensor_mpython_qmi8658_temperature:()=>fY,sensor_onboard_compass_reset:()=>mY,sensor_onboard_mpu9250_calibrate_compass:()=>TY,sensor_onboard_mpu9250_field_strength:()=>MY,sensor_onboard_mpu9250_gesture:()=>rY,sensor_onboard_mpu9250_get_acceleration:()=>lY,sensor_onboard_mpu9250_get_gyro:()=>IY,sensor_onboard_mpu9250_get_magnetic:()=>dY,sensor_onboard_mpu9250_temperature:()=>hY,sensor_pin_near:()=>JY,sensor_pin_pressed:()=>KY,sensor_rm_acc:()=>vY,sensor_rm_battery_left:()=>PY,sensor_rm_pin_near_double:()=>FY,sensor_sound:()=>Uv});var at={};t.r(at),t.d(at,{serial_any:()=>eX,serial_print:()=>jY,serial_print_byte:()=>ZY,serial_print_hex:()=>tX,serial_println:()=>$Y,serial_read_from_ai:()=>dX,serial_readline:()=>nX,serial_readstr:()=>iX,serial_send_to_ai:()=>lX,serial_softserial:()=>sX,serial_softserial_new:()=>_X,system_input:()=>oX,system_print:()=>pX,system_print_end:()=>uX,system_print_inline:()=>aX,system_print_many:()=>rX});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>SX,Timer_init:()=>BX,base_delay:()=>wX,controls_delay:()=>fX,controls_delay_new:()=>FX,controls_end_program:()=>LX,controls_millis:()=>AX,controls_uname:()=>DX,reset:()=>NX,system_bitbot_shutdown:()=>bX,system_device_name:()=>gX,system_device_serial_number:()=>CX,system_event_bus_source:()=>RX,system_event_bus_value:()=>cX,system_machine_reset:()=>VX,system_on_event:()=>mX,system_raise_event:()=>MX,system_reset:()=>TX,system_run_in_background:()=>IX,system_ticks_diff:()=>YX,system_timer:()=>vX,system_timer_init:()=>XX,system_timestamp:()=>OX,system_value:()=>EX,system_wait:()=>hX,system_wdt_feed:()=>yX,system_wdt_init:()=>xX,time_ticks_diff:()=>UX,timer:()=>PX,timer2:()=>GX});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>HX,WEATHER_HOUR:()=>WX,WEATHER_NOW:()=>kX});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>hx,inout_analog_atten:()=>nx,inout_analog_read:()=>ix,inout_analog_read_init:()=>ux,inout_analog_write:()=>$X,inout_analog_write_init:()=>ax,inout_analog_write_set:()=>tx,inout_analog_write_set_freq:()=>dx,inout_digital_init:()=>ox,inout_digital_read:()=>jX,inout_digital_write:()=>QX,inout_highlow:()=>zX,inout_pinMode:()=>lx,inout_pin_attachInterrupt:()=>_x,inout_pin_pressed:()=>sx,inout_pin_pressed_init:()=>rx,inout_pwm_analog_write:()=>ZX,inout_pwm_analog_write_init:()=>px,inout_pwm_analog_write_set_freq:()=>ex,pin_pressed:()=>Tx,pin_pressed_init:()=>Ix});var dt={};t.r(dt),t.d(dt,{mini_g2_aht11:()=>mx,mini_g2_hp203:()=>Ox,mini_g2_rfid_readcontent:()=>cx,mini_g2_rfid_readid:()=>Rx,mini_g2_rfid_status:()=>Sx,mini_g2_rfid_write:()=>gx,mini_g2_rfid_write_outcome:()=>Cx,mini_g2_varistor:()=>Ex});var It={};t.r(It),t.d(It,{me_go_dc_motor:()=>Yx,me_go_get_led_bright:()=>Dx,me_go_get_led_state:()=>fx,me_go_hall_attachInterrupt:()=>Xx,me_go_hall_data:()=>yx,me_go_hall_initialize:()=>xx,me_go_led_bright:()=>Nx,me_go_led_brightness:()=>Fx,me_go_light_number:()=>Lx,me_go_pin_light:()=>Ux,me_go_pin_near:()=>bx,me_go_pin_near_line:()=>Vx,me_go_pin_near_state_change:()=>Bx,me_go_stepper_keep:()=>Px,me_go_stepper_stop:()=>vx,sensor_mixgome_eulerangles:()=>Gx});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>Qx,analog_output:()=>Zx,espnow_channel:()=>Jx,haskylens_model:()=>qx,i2c_A_pin:()=>$x,i2c_B_pin:()=>ty,pins_analog:()=>_y,pins_analog_pin:()=>oy,pins_axis:()=>Cy,pins_brightness:()=>Sy,pins_builtinimg:()=>My,pins_builtinimg_extern:()=>my,pins_button:()=>uy,pins_buttonB:()=>ry,pins_dac:()=>py,pins_dac_pin:()=>ay,pins_digital:()=>kx,pins_digital_dot:()=>vy,pins_digital_pin:()=>Hx,pins_exlcdh:()=>cy,pins_exlcdv:()=>gy,pins_imglist:()=>Oy,pins_input_pin:()=>Wx,pins_one_more:()=>Py,pins_output_pin:()=>Kx,pins_playlist:()=>Ey,pins_playlist_extern:()=>Ry,pins_pwm:()=>ly,pins_pwm_pin:()=>dy,pins_radio_datarate:()=>Fy,pins_radio_power:()=>fy,pins_serial:()=>hy,pins_tone_notes:()=>Dy,pins_touch:()=>Ty,pins_touch_pin:()=>Iy,pins_tts_bgmusic:()=>Ny,pins_tts_builtin_music:()=>Ly,pins_tts_voice:()=>Ay,pwm_input:()=>zx,pwm_output:()=>jx,spi_A_pin:()=>ey,spi_B_pin:()=>iy,spi_C_pin:()=>ny,spi_D_pin:()=>sy});var ht={};t.r(ht),t.d(ht,{inout_analog_atten:()=>Jy,inout_analog_read:()=>Gy,inout_analog_read_init:()=>Ky,inout_analog_write:()=>Vy,inout_analog_write_init:()=>Wy,inout_analog_write_set:()=>by,inout_digital_init:()=>ky,inout_digital_read:()=>xy,inout_digital_write:()=>Xy,inout_highlow:()=>Yy,inout_pin_attachInterrupt:()=>wy,inout_pin_pressed:()=>Uy,inout_pin_pressed_init:()=>qy,inout_pwm_analog_write:()=>yy,inout_pwm_analog_write_init:()=>Hy,inout_pwm_analog_write_set_freq:()=>By});var Mt={};t.r(Mt),t.d(Mt,{mini_g2_aht11:()=>zy,mini_g2_hp203:()=>Qy,mini_g2_rfid_readcontent:()=>$y,mini_g2_rfid_readid:()=>Zy,mini_g2_rfid_status:()=>iV,mini_g2_rfid_write:()=>tV,mini_g2_rfid_write_outcome:()=>eV,mini_g2_varistor:()=>jy});var mt={};t.r(mt),t.d(mt,{me_go_dc_motor:()=>rV,me_go_get_led_bright:()=>_V,me_go_get_led_state:()=>oV,me_go_hall_attachInterrupt:()=>lV,me_go_hall_data:()=>IV,me_go_hall_initialize:()=>dV,me_go_led_bright:()=>sV,me_go_led_brightness:()=>pV,me_go_light_number:()=>nV,me_go_pin_light:()=>OV,me_go_pin_near:()=>hV,me_go_pin_near_line:()=>TV,me_go_pin_near_state_change:()=>MV,me_go_stepper_keep:()=>aV,me_go_stepper_stop:()=>uV,sensor_mixgome_eulerangles:()=>mV});var Ot={};t.r(Ot),t.d(Ot,{analog_input:()=>DV,analog_output:()=>FV,espnow_channel:()=>LV,haskylens_model:()=>NV,i2c_A_pin:()=>PV,i2c_B_pin:()=>vV,pins_analog:()=>bV,pins_analog_pin:()=>VV,pins_axis:()=>ZV,pins_brightness:()=>eb,pins_builtinimg:()=>JV,pins_builtinimg_extern:()=>qV,pins_button:()=>RV,pins_buttonB:()=>cV,pins_dac:()=>wV,pins_dac_pin:()=>UV,pins_digital:()=>EV,pins_digital_dot:()=>ub,pins_digital_pin:()=>gV,pins_exlcdh:()=>$V,pins_exlcdv:()=>tb,pins_imglist:()=>zV,pins_input_pin:()=>CV,pins_interrupt:()=>WV,pins_one_more:()=>ab,pins_output_pin:()=>SV,pins_playlist:()=>QV,pins_playlist_extern:()=>jV,pins_pwm:()=>GV,pins_pwm_input:()=>AV,pins_pwm_pin:()=>BV,pins_radio_datarate:()=>pb,pins_radio_power:()=>ob,pins_serial:()=>KV,pins_tone_notes:()=>_b,pins_touch:()=>HV,pins_touch_pin:()=>kV,pins_tts_bgmusic:()=>sb,pins_tts_builtin_music:()=>nb,pins_tts_voice:()=>ib,pwm_output:()=>fV,spi_A_pin:()=>YV,spi_B_pin:()=>XV,spi_C_pin:()=>xV,spi_D_pin:()=>yV});const Et=Blockly,Rt=Mixly,ct={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(o+=n)):i=o}else i="i";return i}},gt=ct; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class Ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(Et.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(Et.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var _=t.newBlock("controls_if_else");_.initSvg(),i.connect(_.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],_=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,_=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,_)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),_=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(_.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(Et.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(Et.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(vt),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PYTHON_RANGE).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Bt={init:function(){this.setColour(vt),this.appendValueInput("LIST").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(Et.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Gt={init:function(){this.setColour(vt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new Et.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(Et.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Ut={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new Et.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var _=t.newBlock("controls_finally");_.initSvg(),i.connect(_.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],_=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,_=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,_)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),_=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(_.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},wt={init:function(){this.setColour(vt);var t=new Et.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},kt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new Et.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return Et.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ht={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new Et.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return Et.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Gt.OPERATORS=[[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],wt.OPERATORS=[[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Wt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Jt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(Et.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},qt={init:function(){this.setColour(vt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},zt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Qt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},jt={init:function(){this.jsonInit({message0:Et.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:vt,tooltip:Et.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:Et.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Zt={init:function(){this.setColour(vt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_STAT),this.setOutput(!0)}},$t={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},te={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},ee={init:function(){this.appendDummyInput().appendField(Et.Msg.CONTROLS_REPEAT_TITLE_REPEAT+Et.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(Et.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new Et.FieldDropdown([[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(vt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},ie={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ne={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},se={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},_e={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_GET_UNIQUE_IDEN)}},oe=230;Et.FieldTextInput.math_number_validator=function(t){return String(t)},Et.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const pe={init:function(){this.setColour(oe),this.appendDummyInput().appendField(new Et.FieldTextInput("0",Et.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MATH_NUMBER_TOOLTIP)}},ae={init:function(){this.setColour(oe);this.appendDummyInput("").appendField(Et.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new Et.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},ue={init:function(){this.setColour(oe);this.appendDummyInput("").appendField(Et.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new Et.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},re={init:function(){this.setColour(oe),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:Et.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:Et.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:Et.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},le={init:function(){this.setColour(oe),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:Et.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:Et.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:Et.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},de={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new Et.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},Ie={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new Et.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:Et.Msg.MATH_TRIG_TOOLTIP_SIN,COS:Et.Msg.MATH_TRIG_TOOLTIP_COS,TAN:Et.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:Et.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:Et.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:Et.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:Et.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},Te={init:function(){var t=[[Et.Msg.MATH_BIN,"bin"],[Et.Msg.MATH_OCT,"oct"],[Et.Msg.MATH_HEX,"hex"]];this.setColour(oe),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new Et.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:Et.Msg.MATH_DEC_TOOLTIP_BIN,oct:Et.Msg.MATH_DEC_TOOLTIP_OCT,hex:Et.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},he={init:function(){var t=[[Et.Msg.LANG_MATH_TO_ROUND,"round"],[Et.Msg.LANG_MATH_TO_CEIL,"ceil"],[Et.Msg.LANG_MATH_TO_FLOOR,"floor"],[Et.Msg.MATH_ABS,"fabs"],[Et.Msg.MATH_SQRT,"sqrt"]];this.setColour(oe),this.appendValueInput("A").setCheck(Number).appendField(new Et.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:Et.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:Et.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:Et.Msg.MATH_SINGLE_TOOLTIP_SQ,round:Et.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:Et.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:Et.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Me={init:function(){var t=[[Et.Msg.MIXLY_MAX,"max"],[Et.Msg.MIXLY_MIN,"min"]];this.setColour(oe),this.appendValueInput("A").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(Et.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:Et.Msg.MIXLY_TOOLTIP_MATH_MAX,min:Et.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},me={init:function(){var t=[[Et.Msg.MATH_TWO,"two"],[Et.Msg.MATH_EIGHT,"eight"],[Et.Msg.MATH_TEN,"ten"],[Et.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(oe),this.appendDummyInput("").appendField(Et.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new Et.FieldDropdown(t),"OP").appendField(Et.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MATH_ZHW).appendField(new Et.FieldDropdown(t),"OP2").appendField(Et.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:Et.Msg.MATH_Before_two,eight:Et.Msg.MATH_Before_eight,ten:Et.Msg.MATH_Before_ten,sixteen:Et.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:Et.Msg.MATH_Behind_two,eight:Et.Msg.MATH_Behind_eight,ten:Et.Msg.MATH_Behind_ten,sixteen:Et.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Oe={init:function(){var t=[[Et.Msg.LANG_MATH_INT,"int"],[Et.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(oe),this.setOutput(!0,Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_RANDOM).appendField(new Et.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:Et.Msg.LANG_MATH_INT,float:Et.Msg.LANG_MATH_FLOAT_RANDOM};return Et.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},Ee={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(Et.Msg.MATH_CONSTRAIN_TOOLTIP)}},Re={init:function(){this.setColour(oe),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(Et.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(Et.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_MATH_MAP)}},ce={init:function(){this.setColour(oe),this.appendDummyInput().appendField(new Et.FieldTextInput("0",Et.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(Et.Msg.MATH_NUMBER_TOOLTIP)}},ge={init:function(){this.setColour(oe),this.appendValueInput("NUM").setCheck(Number).appendField(Et.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ce={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MATH_ROUND).appendField(Et.Msg.TEXT_KEEP),this.appendDummyInput().appendField(Et.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(Et.Msg.MATH_ROUND_NEW_TOOLTIP)}},Se={init:function(){var t=[[Et.Msg.MIXLY_TO_INT,"int"],[Et.Msg.MIXLY_TO_FLOAT,"float"],[Et.Msg.MIXLY_TO_BITES,"b"]];this.setColour(oe),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:Et.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:Et.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:Et.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ae={init:function(){var t=[[Et.Msg.MIXLY_TO_INT,"int"],[Et.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(oe),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:Et.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:Et.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Le=Re,Ne=160,De={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(Et.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new Et.FieldImage(e,12,12,'"')}},fe={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(Et.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new Et.FieldImage(e,12,12,'"')}};Et.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Fe={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldTextInput("",Et.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(Et.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new Et.FieldImage(e,7,12,'"')}},Pe={init:function(){this.setColour(Ne),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(Et.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ve={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Ye={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(String).appendField(Et.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Xe={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},xe={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},ye={init:function(){this.WHERE_OPTIONS=[[Et.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[Et.Msg.TEXT_GET_INDEX_RANDOM+1+Et.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.LISTS_GET_INDEX_GET,"MODE"),Et.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(Et.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+Et.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",Et.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:Et.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:Et.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:Et.Msg.TEXT_GET_INDEX_RANDOM};return Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+Et.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==Et.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),Et.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(Et.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new Et.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),Et.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ve={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(Et.Msg.LISTS_GET_INDEX_GET+" "+Et.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(Et.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+Et.Msg.LISTS_GET_INDEX_FROM_START+"n"+Et.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(Et.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(Et.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Be={init:function(){this.WHERE_OPTIONS_1=[[Et.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[Et.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[Et.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[Et.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(Et.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==Et.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==Et.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),Et.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(Et.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new Et.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ge={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(Et.Msg.LISTS_GET_INDEX_GET+" "+Et.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(Et.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(Et.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(Et.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Ue={init:function(){var t=[[Et.Msg.MIXLY_EQUALS,"==="],[Et.Msg.MIXLY_STARTSWITH,"startswith"],[Et.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ne),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new Et.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},we={init:function(){this.setColour(Ne),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(Et.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_COMPARETO_HELP)}},ke={init:function(){var t=[[Et.Msg.TEXT_UPPER,"upper"],[Et.Msg.TEXT_TITLE,"title"],[Et.Msg.TEXT_CAPITALIZE,"capitalize"],[Et.Msg.TEXT_SWAPCASE,"swapcase"],[Et.Msg.TEXT_LOWER,"lower"]];this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:Et.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:Et.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:Et.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:Et.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:Et.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},He={init:function(){var t=[[Et.Msg.TEXT_LJUST,"ljust"],[Et.Msg.TEXT_CENTER,"center"],[Et.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ne),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(Et.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(Et.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},We={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(Et.Msg.MIXLY_MID+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(Et.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},Ke={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},Je={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(Et.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(Et.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},qe={init:function(){this.setColour(Ne),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(Et.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(Et.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},ze={init:function(){var t=[[Et.Msg.TEXT_TRIM_BOTH,"strip"],[Et.Msg.TEXT_TRIM_LEFT,"lstrip"],[Et.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ne),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(Et.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(Et.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:Et.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:Et.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:Et.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Qe={init:function(){this.setColour(Ne),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new Et.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new Et.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ki={init:function(){this.setColour(Hi),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Ji={init:function(){this.setColour(Hi),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},qi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_KEYS),this.setTooltip(Et.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},zi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(Et.Msg.DICTS_GET_TOOLTIP)}},Qi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(Et.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(Et.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},ji={init:function(){this.setColour(Hi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(Et.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Zi={init:function(){this.setColour(Hi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_DELETE_TOOLTIP)}},$i={init:function(){this.setColour(Hi),this.appendValueInput("DICT2").setCheck("Dict").appendField(Et.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(Et.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MID),this.setTooltip(Et.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_CLEAR),this.setTooltip(Et.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},en={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_ITEMS),this.setTooltip(Et.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},nn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_VALUES),this.setTooltip(Et.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},sn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_LENGTH),this.setTooltip(Et.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},_n={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_DELDICT),this.setTooltip(Et.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},on={init:function(){this.MODE=[[Et.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[Et.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(Et.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=Et.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=Et.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==Et.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new Et.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},pn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.setTooltip(Et.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},an={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(Et.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_SETDEFAULT_TOOLTIP)}},un={init:function(){this.setColour(Hi),this.appendDummyInput("").appendField(new Et.FieldLabel(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new Et.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},rn={init:function(){this.setColour(Hi),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},ln={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TO_JSON),this.setTooltip(Et.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},dn={init:function(){this.setColour(Hi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(Et.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},In=210,Tn={init:function(){var t=Et.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:Et.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:Et.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:Et.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:Et.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:Et.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:Et.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},hn={init:function(){var t=Et.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=Et.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new Et.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Mn={init:function(){var t=[[Et.Msg.LOGIC_OPERATION_AND,"AND"],[Et.Msg.LOGIC_OPERATION_OR,"OR"],[Et.Msg.LOGIC_OPERATION_NOR,"NOR"],[Et.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:Et.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:Et.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:Et.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:Et.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},mn={init:function(){this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(Et.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(Et.Msg.LOGIC_NEGATE_TOOLTIP)}},On={init:function(){var t=[[Et.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[Et.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new Et.FieldDropdown(t),"BOOL"),this.setTooltip(Et.Msg.LOGIC_BOOLEAN_TOOLTIP)}},En={init:function(){this.setColour(In),this.setOutput(!0),this.appendDummyInput().appendField(Et.Msg.LOGIC_NULL),this.setTooltip(Et.Msg.LOGIC_NULL_TOOLTIP)}},Rn={init:function(){this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").appendField(Et.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(Et.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},cn={init:function(){var t=[[Et.Msg.TEXT_APPEND_TO,"in"],[Et.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new Et.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(Et.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.IN)}},gn={init:function(){var t=[[Et.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[Et.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},Cn={init:function(){this.setColour(In),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Sn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(Et.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG,o=Et.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s+o}))}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(Et.Msg.MIXPY_TEXT_ENCODE).appendField(new Et.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG,o=Et.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s+o}))}},Dn={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(Et.Msg.MICROBIT_PYTHON_TYPE)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.HTML_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Vn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Gn={init:function(){this.setColour(0),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Un={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+Et.Msg.MIXLY_ESP32_SET+{mkdir:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(Et.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},kn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Hn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.HTML_FILE,"isfile"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Wn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(Et.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Kn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(Et.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Jn={};Jn.NAME_TYPE=Et.PROCEDURE_CATEGORY_NAME,Jn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(Et.Msg.MIXLY_AIP_ATTR).setAlign(Et.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},ks={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_FORM_CONTENT).appendField(new Et.FieldDropdown([[Et.Msg.HTML_TEXT,"text"],[Et.Msg.HTML_EMAIL,"email"],[Et.Msg.HTML_NUMBER,"number"],[Et.Msg.HTML_PASSWORD,"password"],[Et.Msg.HTML_CHECKBOX,"checkbox"],[Et.Msg.HTML_RADIOBUTTON,"radiobutton"],[Et.Msg.HTML_BUTTON,"button"],[Et.Msg.HTML_COLOUR,"colour"],[Et.Msg.HTML_DATE,"date"],[Et.Msg.HTML_LOCALTIME,"local time"],[Et.Msg.HTML_FILE,"file"],[Et.Msg.HTML_HIDDEN,"hidden"],[Et.Msg.HTML_IMAGE,"image"],[Et.Msg.HTML_MONTH,"month"],[Et.Msg.HTML_RANGE,"range"],[Et.Msg.HTML_RESET,"reset"],[Et.Msg.HTML_SEARCH,"search"],[Et.Msg.HTML_SUBMIT,"submit"],[Et.Msg.HTML_TELEPHONENUMBER,"telephone number"],[Et.Msg.HTML_TIME,"time"],[Et.Msg.HTML_URL,"url"],[Et.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(Et.Msg.HTML_NAME).appendField(new Et.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(Et.Msg.HTML_VALUE).appendField(new Et.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(Et.Msg.MIXLY_AIP_ATTR).setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(ys),this.appendDummyInput().appendField(new Et.FieldTextInput("property"),"KEY").appendField(":").appendField(new Et.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws={init:function(){this.setColour(ys),this.appendDummyInput().appendField(new Et.FieldTextInput("property"),"KEY").appendField(":").appendField(new Et.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ks={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_TEXT).appendField(new Et.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Js=160,qs={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new Et.FieldTable(""),"TEXT")}},zs={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new Et.FieldMultilineInput(""),"TEXT")}},Qs={init:function(){this.setColour(Js),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new Et.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},js={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Zs={init:function(){this.setColour(Js),this.appendDummyInput().appendTitle("Comment:").appendTitle(new Et.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},$s={init:function(){this.setColour(Js),this.appendValueInput("VALUE").appendField(Et.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},t_={init:function(){this.setColour(Js),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new Et.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(Et.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=Et.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},Et.isNumber(n)&&Et.isNumber(s)&&Et.isNumber(_))n=parseFloat(n),s=parseFloat(s),_=Math.abs(parseFloat(_)),0==n%1&&0==s%1&&0==_%1?(n<=s?(s++,t=0==n&&1==_?s:n+", "+s,1!=_&&(t+=", "+_)):t=n+", "+--s+", -"+_,t="range("+t+")"):(t=n",GTE:">="};const bp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",_=e.valueToCode(this,"B",n)||"False";if("AND"==i)var o=s+" and "+_;else if("OR"==i)o=s+" or "+_;else if("NOR"==i)o="not("+s+"^"+_+")";else o=s+"^"+_;return[o,n]},Bp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Gp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Up=function(t,e){return["None",e.ORDER_ATOMIC]},wp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},kp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Hp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Wp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Kp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Jp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},qp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},zp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Qp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},jp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Zp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},$p=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ta=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},ea=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},ia=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},na=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},sa=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},_a=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},oa=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},pa=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},aa=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ua=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},ra=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},la=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},da=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},Ia=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},Ta=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},ha=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),Et.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var _=[],o=0;o\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},za=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Za=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},$a=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},tu=function(t,e){return'"},eu=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},iu=function(){return this.getFieldValue("TEXT")+"\n"},nu=function(t){return t.getFieldValue("TEXT")+"\n"},su=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},_u=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},ou=function(){return""},pu=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},au=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),_=0;_0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+_.join("")+o.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+o.join("\n")},ru.scrubNakedValue=function(t){return t+"\n"},ru.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},ru.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},ru.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(_=t.getCommentText())&&(_=Et.utils.string.wrap(_,ru.COMMENT_WRAP-3),n+=ru.prefixLines(_+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const lu="#74A55B",du={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_RGB_PIN_COUNT)}},Iu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Tu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},hu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Mu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(Et.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(Et.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},mu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ou={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_RESET)}},Eu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ru={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},cu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},gu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Cu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Su={init:function(){this.setColour(lu),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Au={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(lu),this.appendValueInput("VAR").appendField("360°"+Et.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SETTING+Et.Msg.blockpy_turtle_rotate+Et.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Nu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("180°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_MOVE)}},Du={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("360°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},fu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("180°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Fu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("360°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Pu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new Et.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(Et.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},vu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"ms32006.MOT_CW"],[Et.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[Et.Msg.MOTOR_N,"ms32006.MOT_N"],[Et.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Yu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new Et.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"ms32006.MOT_CW"],[Et.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Xu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_RGB_PIN_COUNT)}},xu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},yu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Vu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new Et.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+Et.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},Bu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Gu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Uu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(Et.Msg.MIXLY_PROGRAM_BLOCK).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},wu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(Et.Msg.MIXLY_PROGRAM_BLOCK).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},ku={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},Hu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Wu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_TRAFFIC_LIGHT).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LISTS_SET_INDEX_SET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_WHITE,"W"],[Et.Msg.COLOUR_RGB_RED,"R"],[Et.Msg.COLOUR_RGB_YELLOW,"Y"],[Et.Msg.COLOUR_RGB_GREEN,"G"],[Et.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_WHITE,"W"],[Et.Msg.COLOUR_RGB_RED,"R"],[Et.Msg.COLOUR_RGB_YELLOW,"Y"],[Et.Msg.COLOUR_RGB_GREEN,"G"],[Et.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},zu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[Et.Msg.MIXLY_SPEED,"[1]"],[Et.Msg.MATH_SINGLE_OP_ABSOLUTE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[Et.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[Et.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[Et.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ju={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MATH_SINGLE_OP_ABSOLUTE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"0"],[Et.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[Et.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField("("+Et.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},er={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField("("+Et.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"0"],[Et.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MOTOR,"ext_motor"],[Et.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[Et.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[Et.Msg.COLOUR_RGB_RED+"LED","R_LED"],[Et.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[Et.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[Et.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[Et.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},nr={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MOTOR,"ext_motor"],[Et.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[Et.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[Et.Msg.COLOUR_RGB_RED+"LED","R_LED"],[Et.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[Et.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[Et.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[Et.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sr="#6C9858",_r={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},or={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_ON,"1"],[Et.Msg.MIXLY_ESP32_OFF,"0"],[Et.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},pr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},ar={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},ur={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},rr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},lr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(Et.Msg.MIXLY_LCD_SETCOLOR).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LIGHT_OFF,"0"],[Et.Msg.MIXLY_LIGHT_RED,"1"],[Et.Msg.MIXLY_LIGHT_GREEN,"2"],[Et.Msg.MIXLY_LIGHT_BLUE,"3"],[Et.Msg.MIXLY_LIGHT_YELLOW,"4"],[Et.Msg.MIXLY_LIGHT_CYAN,"5"],[Et.Msg.MIXLY_LIGHT_PURPLE,"6"],[Et.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},dr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Ir={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Tr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},hr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Mr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},mr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Or={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Er={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Rr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.PYTHON_RANGE_STEP).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_WRI)}},gr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Cr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Sr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.PYTHON_RANGE_STEP).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Ar={init:function(){this.setColour(sr),this.appendValueInput("TICKS").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(Et.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(Et.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Lr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Nr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_RESET)}},Dr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},fr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Fr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pr={init:function(){this.setColour(sr),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},vr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(sr),this.appendDummyInput().appendField("MixGo Car").appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField("MixGo Car").appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},xr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_STOP).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[Et.Msg.MIXLY_SPEED,"SPEED"],[Et.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.MIXLY_MOTOR).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"1"],[Et.Msg.TEXT_TRIM_RIGHT,"2"],[Et.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[Et.Msg.MIXLY_SPEED,"SPEED"],[Et.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Ur={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(Et.Msg.MIXLY_MOTOR).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"0"],[Et.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wr={init:function(){this.setColour(sr),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(sr),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_MIXBOT_BUZZER+Et.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},qr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_MIXBOT_BUZZER+Et.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},zr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_RECORD_AUDIO).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(Et.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_PLAY_AUDIO).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},jr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Zr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},$r={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tl={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.LISTS_SET_INDEX_SET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},el={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT+Et.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},il={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.LISTS_SET_INDEX_SET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.MIXLY_ALL+Et.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(Et.ALIGN_RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT+Et.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},nl={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(Et.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(Et.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(Et.Msg.MIXLY_RELEASE).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT)}},sl={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPECIAL_KEY0,"0"],[Et.Msg.MIXLY_SPECIAL_KEY1,"1"],[Et.Msg.MIXLY_SPECIAL_KEY2,"2"],[Et.Msg.MIXLY_SPECIAL_KEY1,"4"],[Et.Msg.MIXLY_SPECIAL_KEY8,"8"],[Et.Msg.MIXLY_SPECIAL_KEY16,"16"],[Et.Msg.MIXLY_SPECIAL_KEY32,"32"],[Et.Msg.MIXLY_SPECIAL_KEY64,"64"],[Et.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},_l={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},ol={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.ANALOG+Et.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(Et.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(Et.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(Et.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(Et.Msg.MIXLY_RELEASE).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT)}},pl={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPECIAL_KEY0,"0"],[Et.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[Et.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[Et.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},al={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(Et.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(Et.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},ul="#90A244",rl={init:function(){this.setColour(ul),this.appendDummyInput("").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new Et.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+Et.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ll={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_QR_CODE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.OLED_STRING,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},dl={init:function(){this.setColour(ul),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_QR_CODE+Et.Msg.MIXPY_OBJECT,"qrcode"],[Et.Msg.MIXLY_BAR_CODE+Et.Msg.MIXPY_OBJECT,"barcode"],[Et.Msg.MIXLY_TAG+Et.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},Il={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},Tl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().appendField(Et.Msg.SOFT_RESET+Et.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},hl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(Et.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},Ml={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_BAR_CODE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.OLED_STRING,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},ml={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},Ol={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TAG+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.OLED_STRING,"info1"],[Et.Msg.blockpy_turtle_rotate+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},El={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},Rl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_LINE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LINE_ANGLE,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},cl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(Et.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},gl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_CIRCLE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_CIRCLE_AREA,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Cl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(Et.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Sl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_RECT+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_CIRCLE_AREA,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},Al={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Ll={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["RGB"+Et.Msg.HTML_COLOUR,"[0]"],["LAB"+Et.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},Nl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Dl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_COLOR_CHASE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_CIRCLE_AREA,"info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},fl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+Et.Msg.MIXLY_COLOR_LAB).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(Et.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Fl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_OBJECT_LIST).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+Et.Msg.MIXLY_MODEL_NAME).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(Et.Msg.MIXLY_TRAIN_TIME).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(Et.Msg.MIXLY_AipNlp_Topic_Title).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},Pl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_OBJECT_LIST).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_MODEL_NAME).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(Et.Msg.MIXLY_AipNlp_Topic_Title).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},vl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_LOCAL_CLASS+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["ID","info1"],[Et.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},Yl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXPY_AI_AUDIO_TIME).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},Xl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_MP3_VOL).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_ANCHOR).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_MODEL_PATH).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(Et.Msg.MIXLY_AipNlp_Topic_Title).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},yl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_YOLO_RECOGNIZE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["ID","info1"],[Et.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"],[Et.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+Et.Msg.MIXLY_POSITION_XY,"xc"],[Et.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+Et.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},Vl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(Et.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(Et.Msg.MIXLY_ESP32_THRESHOLD).setAlign(Et.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},bl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_LICENSEPLATE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["ID","info1"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},Bl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},Gl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_FACE+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["ID","info1"],[Et.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Ul={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},wl={init:function(){this.setColour(ul),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_20OBJECTS+Et.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([["ID","info1"],[Et.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[Et.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+Et.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+Et.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+Et.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+Et.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},kl={init:function(){this.setColour(ul),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},Hl={init:function(){this.setColour(205),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_AipSpeech_asr,"ASR"],[Et.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_Client).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Wl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_AI_UNIT).appendField(Et.Msg.MIXLY_Client).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(Et.Msg.OLED_STRING).setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},Kl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_AipSpeech_asr).appendField(Et.Msg.MIXLY_Client).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(Et.Msg.MIXPY_AI_AUDIO_TIME).setAlign(Et.inputs.Align.RIGHT),this.appendDummyInput("").appendField(Et.Msg.MIXLY_LANGUAGE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[Et.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[Et.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},Jl="#2FAD7A",ql={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Ql={init:function(){this.jsonInit({inputsInline:!0,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(Et.CONTROLS_REPEAT_INPUT_DO)}},jl={init:function(){this.jsonInit({inputsInline:!0,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(Et.CONTROLS_REPEAT_INPUT_DO)}},Zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},$l={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},td={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},ed={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},id={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},nd={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},sd={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},_d={init:function(){this.jsonInit({message0:Et.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[Et.Msg.MIXLY_PYTHON_PERIODIC,"False"],[Et.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(Et.CONTROLS_REPEAT_INPUT_DO)}},od={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},pd={init:function(){this.jsonInit({inputsInline:!0,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(Et.CONTROLS_REPEAT_INPUT_DO)}},ad={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:Jl,helpUrl:Et.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:Et.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:Et.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},ud={init:function(){this.setColour(40),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+" CC_G1"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},rd={init:function(){this.setColour(40),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_BATTERY),this.setOutput(!0,Number),this.setInputsInline(!0)}},ld={init:function(){this.setColour(40),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_JOYSTICK).appendField(new Et.FieldDropdown([["x","[0]"],["y","[1]"],["(x,y)",""]]),"VAR"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0)}},dd={init:function(){this.setColour(40),this.appendDummyInput().appendField(Et.Msg.MIXLY_BUTTON).appendField(new Et.FieldDropdown([["A","0"],["B","1"],["C","2"],["D","3"],["POWER","4"],["SELECT","5"]]),"VAR"),this.appendDummyInput("").appendField(Et.Msg.WHETHER_IS_PRESSED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Id={init:function(){this.setColour(40),this.appendDummyInput("").appendField(Et.Msg.MIXLY_HANDLE_SHUTDOWN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Td=100,hd={init:function(){this.setColour(Td),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[2]"],[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[2]"],[Et.Msg.ME_GO_LIGHT_HEADLIGHT,"WLED"]]),"op"),this.setOutput(!0)}},Md={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},md={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Od={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ed={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Rd={init:function(){this.setColour(Td),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cd={init:function(){this.setColour(Td),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},gd={init:function(){this.setColour(Td),this.appendDummyInput().appendField("ME GO").appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"0"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"1"],[Et.Msg.ME_GO_MOTOR_EXTERN,"2"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.ROTATION_FORWARD,"CW"],[Et.Msg.ROTATION_BACKWARD,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cd={init:function(){this.setColour(Td),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_INTERRUPT).appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Sd={init:function(){this.setColour(Td),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["turns,distance","all"]]),"args"),this.appendValueInput("num").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Ad={init:function(){this.setColour(Td),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["speed","speed"]]),"args"),this.setOutput(!0),this.setInputsInline(!0)}},Ld={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},Nd={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT,"[0]"],[Et.Msg.MIXGO_RIGHT_FRONT,"[1]"],[Et.Msg.MIXGO_LEFT_BACK,"[3]"],[Et.Msg.MIXGO_RIGHT_BACK,"[2]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},Dd={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ME_GO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[Et.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[Et.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"],[Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_ONLY,"LS"],[Et.Msg.ME_GO_SENSOR_MODE_OFF,"CL"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fd={init:function(){this.setColour(Td),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.ME_GO_PITCH,"[0]"],[Et.Msg.ME_GO_ROLL,"[1]"],[Et.Msg.ME_GO_PITCH+", "+Et.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Fd={init:function(){this.setColour(Td),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR}))}},Pd=140,vd={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},Yd={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},Xd={init:function(){this.setColour(Pd),this.appendValueInput("SUB").appendField("I2C "+Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_I2C_INIT)}},xd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},yd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},Vd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_I2C_SCAN1+Et.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_I2C_SCAN)}},bd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(Et.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},Bd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_SET)}},Gd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_SET+Et.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},Ud={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(Et.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+Et.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_READ)}},wd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(Et.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(Et.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+Et.Msg.LANG_MATH_BYTE+" "+Et.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},kd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(Et.Msg.MIXLY_SERIAL_READ+Et.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_READINTO)}},Hd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(Et.Msg.MIXLY_SERIAL_READ+Et.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},Wd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_WRITE)}},Kd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(Et.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},Jd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},qd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_READ+Et.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},zd={init:function(){this.setColour(Pd),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Qd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+Et.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(Et.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_INIT)}},jd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_SCAN)}},Zd={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_READ)}},$d={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_WRITE).appendField(new Et.FieldDropdown([[Et.Msg.LANG_MATH_STRING,"write"],[Et.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_WRITE)}},tI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(Et.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_SELECT)}},eI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_OW_RESET)}},iI={init:function(){this.setColour(Pd),this.appendValueInput("PIN").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_IR_INPUT1,"8"],[Et.Msg.MIXLY_IR_INPUT2,"16"],[Et.Msg.MIXLY_IR_INPUT3,"0"],[Et.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(Et.Msg.CONTROLS_REPEAT_INPUT_DO+Et.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_IR_CMD_CODE,"0"],[Et.Msg.MIXLY_IR_ADDR_CODE,"1"],[Et.Msg.MIXLY_IR_RAW_CODE,"2"],[Et.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},sI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXlY_RECV_FUN).appendField(new Et.FieldDropdown([[Et.Msg.MILY_PAUSE,"True"],[Et.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_I={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(Et.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},oI={init:function(){this.setColour(Pd),this.appendValueInput("time").appendField(Et.Msg.MIXlY_RECV_FUN).appendField(Et.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(Et.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},pI={init:function(){this.setColour(Pd),this.appendValueInput("PIN").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.MIXLY_IR_SEND).appendField(Et.Msg.MIXLY_PIN),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_IR_SEND_samsung1,"False"],[Et.Msg.MIXLY_IR_SEND_samsung2,"True"],[Et.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(Et.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},aI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(Et.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(Et.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(Et.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},uI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_IR_PULSE).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},rI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(Et.Msg.MIXLY_IR_RAW_CODE).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},lI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},dI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField(Et.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MSG.catEthernet_init+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+Et.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},II={init:function(){this.setColour(Pd),this.appendValueInput("VAR").appendField(Et.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MSG.catEthernet_init+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+Et.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},TI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_ONEWIRE_SCAN+Et.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},hI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},MI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_TEXT_JOIN+Et.Msg.MSG.catBLE).appendField(new Et.FieldDropdown([[Et.Msg.HTML_NAME,"name"],[Et.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},mI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},OI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MSG.catBLE+Et.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(Et.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},EI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MSG.catBLE+Et.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},RI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(Et.Msg.CONTROLS_REPEAT_INPUT_DO+Et.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},gI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(Et.Msg.CONTROLS_REPEAT_INPUT_DO+Et.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},CI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+Et.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(Et.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TX_POWER).appendField(new Et.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},SI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+Et.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(Et.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},AI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},LI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},NI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new Et.FieldDropdown([["("+Et.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+Et.Msg.OLED_STRING+")",""],[Et.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[Et.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},DI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},fI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(Et.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},FI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},PI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_MP_ESPNOW_RADIO+Et.Msg.MIXLY_TX_POWER).appendField(new Et.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},YI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},XI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},xI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},yI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},VI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},bI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new Et.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},BI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},GI={init:function(){this.setColour(Pd),this.appendDummyInput().appendField(Et.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new Et.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},UI={init:function(){this.setColour(Pd),this.appendValueInput("SUB").appendField("Lora"+Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(Et.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(Et.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(Et.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(Et.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(Et.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new Et.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_LORA_INIT_TOOLTIP)}},wI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_PACKAGE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[Et.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},kI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(Et.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},HI={init:function(){this.setColour(Pd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},WI={init:function(){this.setColour(Pd),this.appendValueInput("DOMAIN").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS_GET).appendField(new Et.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},KI={init:function(){this.appendValueInput("VAL");var t=[[Et.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Pd),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:Et.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:Et.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:Et.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},JI={init:function(){this.appendValueInput("VAR").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Pd),this.appendDummyInput("").appendField(Et.Msg.blockpy_CONDUCT).appendField(new Et.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},qI=Xd,zI=xd,QI=yd,jI=Vd,ZI=bd,$I=Bd,tT=Gd,eT=Ud,iT=wd,nT=kd,sT=Hd,_T=Wd,oT=Kd,pT=Jd,aT=qd,uT=120;({init:function(){this.setColour(uT),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(Et.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new Et.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}}).OPERATORS=[[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(uT);var t=new Et.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const rT="5BA5A5",lT={init:function(){this.setColour(rT),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},dT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},IT={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},TT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},MT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},mT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},OT={init:function(){var t=[[Et.Msg.MIXLY_UP,"shift_up"],[Et.Msg.MIXLY_DOWN,"shift_down"],[Et.Msg.MIXLY_LEFT,"shift_left"],[Et.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET2).appendField(new Et.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(Et.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=Et.Msg.DISPLAY_IMAGE_LET,n=Et.Msg.DISPLAY_IMAGE_LET2,s=Et.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT}[t]+s}))}},ET={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},RT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},cT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},gT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},CT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},ST={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new Et.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},AT={init:function(){var t=[[Et.Msg.MICROBIT_DISPLAY_UNION,"add"],[Et.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(Et.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":Et.Msg.MIXLY_MICROBIT_image_add,"-":Et.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},LT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(rT),this.appendValueInput("A").setCheck("esp32_image").appendField(Et.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},NT={init:function(){this.setColour(rT),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},DT={init:function(){this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.OLEDDISPLAY+Et.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(rT),this.setTooltip(Et.Msg.MIXLY_DF_LCD+Et.Msg.OLEDDISPLAY+Et.Msg.MIXLY_MICROBIT_TYPE_STRING)}},fT={init:function(){var t=[[Et.Msg.MIXLY_HEIGHT,"height"],[Et.Msg.MIXLY_WIDTH,"width"]];this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+Et.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+Et.Msg.MIXLY_MICROBIT_IMAGE+{height:Et.Msg.MIXLY_HEIGHT,width:Et.Msg.MIXLY_WIDTH}[t]}))}},FT={init:function(){var t=[[Et.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[Et.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RECT).appendField(new Et.FieldDropdown(t),"OP"),this.jsonInit({message0:Et.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_OLED_RECT)}},PT={init:function(){this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_DISPLAY_DRAW).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_DISPLAY_RLINE,"hline"],[Et.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:Et.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_OLED_LINE)}},vT={init:function(){this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.jsonInit({message0:Et.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_OLED_LINE_ARBIT)}},YT={init:function(){this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(Et.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},XT={init:function(){this.setColour(rT),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},xT={init:function(){this.setColour(rT),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(Et.Msg.LISTS_SET_INDEX_SET+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B)}},yT={init:function(){this.setColour(rT),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_ON,"ON"],[Et.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},VT={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[Et.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:Et.Msg.MIXLY_LCD_STAT_CLEAR,1:Et.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return Et.Msg.MIXLY_DF_LCD+i[e]}))}},bT={init:function(){this.setColour(rT),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new Et.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},BT={init:function(){var t=[[Et.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[Et.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new Et.FieldDropdown(t),"OP"),this.jsonInit({message0:Et.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},GT={init:function(){var t=[[Et.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[Et.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_DISPLAY_DRAW+Et.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new Et.FieldDropdown(t),"OP"),this.jsonInit({message0:Et.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_DISPLAY_DRAW+Et.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},UT={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(Et.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},wT={init:function(){this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(Et.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(Et.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(Et.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(Et.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(Et.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.OLED_SHOW_BMP_TOOLTIP)}},kT={init:function(){this.setColour(rT),this.appendValueInput("VAR").appendField(Et.Msg.OLED),this.appendDummyInput("").appendField(Et.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(Et.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(Et.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.OLED_DRAW_PIXE_TOOLTIP)}},HT={init:function(){this.setColour(rT),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return Et.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[e]}))}},WT={init:function(){this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_4DIGITDISPLAY).appendField(new Et.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ON,"on"],[Et.Msg.MIXLY_OFF,"off"],[Et.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},KT={init:function(){this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_4DIGITDISPLAY).appendField(new Et.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},JT={init:function(){this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_4DIGITDISPLAY).appendField(new Et.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(Et.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+Et.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},qT={init:function(){this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_4DIGITDISPLAY).appendField(new Et.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},zT={init:function(){this.setColour(rT),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+Et.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(Et.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(Et.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.blockpy_turtle_rotate).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_NO,"0"],[Et.Msg.ANTI_CLOCKWISE+"90°","1"],[Et.Msg.ANTI_CLOCKWISE+"180°","2"],[Et.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},QT={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catTFT),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},jT={init:function(){this.setColour(rT);let t=new Et.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(Et.inputs.Align.RIGHT).appendField(t,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},ZT={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},$T={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},th={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},eh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catTFT),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[Et.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:Et.Msg.MIXLY_LCD_STAT_CLEAR,1:Et.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return Et.Msg.MIXLY_DF_LCD+i[e]}))}},ih={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:Et.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_OLED_LINE_ARBIT)}},nh={init:function(){this.setColour(rT),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(Et.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return Et.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},sh={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.array2_rows),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},_h={init:function(){this.setColour(rT),this.appendValueInput("SUB").appendField(Et.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_SERIAL_PRINT+Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catLCD),this.appendDummyInput().appendField(Et.Msg.TFT_Brightness).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[Et.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={1:Et.Msg.MIXLY_MICROBIT_Turn_on_display,0:Et.Msg.MIXLY_MICROBIT_Turn_off_display};return Et.Msg.MSG.catLCD+Et.Msg.TFT_Brightness+i[e]}))}},ph={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catLCD),this.setColour(rT),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},ah={init:function(){this.setColour(rT),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(Et.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return Et.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},uh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},rh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},lh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(Et.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},dh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Ih={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Th={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},hh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Mh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},mh={init:function(){var t=[[Et.Msg.MIXLY_UP,"shift_up"],[Et.Msg.MIXLY_DOWN,"shift_down"],[Et.Msg.MIXLY_LEFT,"shift_left"],[Et.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET2).appendField(new Et.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(Et.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=Et.Msg.DISPLAY_IMAGE_LET,n=Et.Msg.DISPLAY_IMAGE_LET2,s=Et.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT}[t]+s}))}},Oh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},Eh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Rh={init:function(){this.setColour(rT),this.appendValueInput("SUB").setCheck("var").appendField(Et.Msg.MSG.catOLED),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},ch={init:function(){this.jsonInit({colour:rT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[Et.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[Et.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[Et.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[Et.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:Et.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},gh={init:function(){this.jsonInit({colour:rT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[Et.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[Et.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[Et.Msg.mpython_vertical,"0"],[Et.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:Et.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},Ch={init:function(){this.jsonInit({colour:rT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[Et.Msg.mpython_display_hline_1,"1"],[Et.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.mpython_display_line_TOOLTIP,message0:Et.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},Sh="#569A98",Ah={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==Rt.Boards.getSelectedBoardKey()&&this.setTooltip(Et.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},Lh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Dh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ph={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<32;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},vh={init:function(){this.jsonInit({colour:Sh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:Et.Msg.MIXLY_MICROBIT_Built_in_image1,message0:Et.Msg.MIXLY_MICROBIT_Built_in_image})}},Yh={init:function(){this.jsonInit({colour:Sh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:Et.Msg.MIXLY_MICROBIT_Built_in_image1,message0:Et.Msg.MIXLY_MICROBIT_Built_in_image})}},Xh={init:function(){var t=[[Et.Msg.MICROBIT_DISPLAY_UNION,"add"],[Et.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(Sh),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(Et.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":Et.Msg.MIXLY_MICROBIT_image_add,"-":Et.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},xh={init:function(){this.setColour(Sh),this.appendValueInput("A").setCheck("esp32_image").appendField(Et.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},yh={init:function(){var t=[[Et.Msg.MIXLY_UP,"shift_up"],[Et.Msg.MIXLY_DOWN,"shift_down"],[Et.Msg.MIXLY_LEFT,"shift_left"],[Et.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(Sh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET2).appendField(new Et.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(Et.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=Et.Msg.DISPLAY_IMAGE_LET,n=Et.Msg.DISPLAY_IMAGE_LET2,s=Et.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:Et.Msg.MIXLY_UP,shift_down:Et.Msg.MIXLY_DOWN,shift_left:Et.Msg.MIXLY_LEFT,shift_right:Et.Msg.MIXLY_RIGHT}[t]+s}))}},Vh={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},bh={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Bh={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Gh={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},Uh={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},wh={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<8;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},kh={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},Hh={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<16;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0,"esp32_image"),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},Wh={init:function(){var t=[["4x5"+Et.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+Et.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+Et.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.OLED_SET_FONT).appendField(new Et.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Kh={init:function(){this.setColour(Sh),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},Jh={init:function(){this.setColour(Sh),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},qh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(Et.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},zh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Qh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},jh={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zh={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},$h={init:function(){this.jsonInit({colour:Sh,args0:[{name:"state",options:[[Et.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[Et.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[Et.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[Et.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:Et.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},tM={init:function(){this.jsonInit({colour:Sh,args0:[{name:"state",options:[[Et.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[Et.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[Et.Msg.mpython_vertical,"0"],[Et.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:Et.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},eM={init:function(){this.jsonInit({colour:Sh,args0:[{name:"state",options:[[Et.Msg.mpython_display_hline_1,"1"],[Et.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.mpython_display_line_TOOLTIP,message0:Et.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},iM={init:function(){this.jsonInit({colour:Sh,args0:[{type:"field_label",name:"size_image",text:Et.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},nM={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<5;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},sM={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},_M={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},oM={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},pM={init:function(){var t=[[Et.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[Et.Msg.CLOCKWISE+"90"+Et.Msg.blockpy_setheading_degree,"1"],[Et.Msg.CLOCKWISE+"180"+Et.Msg.blockpy_setheading_degree,"2"],[Et.Msg.CLOCKWISE+"270"+Et.Msg.blockpy_setheading_degree,"3"]];this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new Et.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},aM={init:function(){this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new Et.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(Sh),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Create_image1)}},uM={init:function(){this.setColour(Sh),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},rM={init:function(){this.setColour(Sh),this.appendValueInput("data").appendField(Et.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.OLED_BITMAP_OR_STRING)}},lM={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(Et.Msg.TEXT_CENTER).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},dM={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IM={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(Et.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},TM={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hM={init:function(){this.setColour(Sh),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},MM={init:function(){this.jsonInit({colour:Sh,args0:[{name:"shape",options:[[Et.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[Et.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:Et.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},mM={init:function(){this.jsonInit({colour:Sh,args0:[{name:"dir_h_v",options:[[Et.Msg.mpython_vertical,"0"],[Et.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:Et.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},OM={init:function(){this.jsonInit({colour:Sh,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,tooltip:Et.Msg.mpython_display_line_TOOLTIP,message0:Et.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},EM={init:function(){var t=[[Et.Msg.MIXLY_UP,"shift_up"],[Et.Msg.MIXLY_DOWN,"shift_down"],[Et.Msg.MIXLY_LEFT,"shift_left"],[Et.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(Sh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_LET2).appendField(new Et.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(Et.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=Et.Msg.DISPLAY_IMAGE_LET,n=Et.Msg.DISPLAY_IMAGE_LET2,s=Et.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT}[t]+s}))}},RM={init:function(){this.setColour(Sh),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(Et.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},cM={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_LCD_SETCOLOR).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},gM={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Clear_display)}},CM={init:function(){this.setColour(Sh),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},SM={init:function(){this.setColour(Sh),this.appendValueInput("x").setCheck(Number).appendField(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},AM={init:function(){this.setColour(Sh),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},LM={init:function(){this.setColour(Sh),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(Et.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(Et.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},NM={init:function(){this.setColour(Sh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DM={init:function(){this.setColour(Sh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(Et.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(Et.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(Et.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fM={init:function(){this.setColour(Sh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},FM={init:function(){this.setColour(Sh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},PM={init:function(){this.jsonInit({colour:Sh,args0:[{name:"shape",options:[[Et.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[Et.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:Et.Msg.mpython_HELPURL,message0:Et.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},vM="#777777",YM={init:function(){this.setColour(vM),this.appendDummyInput("").appendField("from ").appendField(new Et.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new Et.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},XM={init:function(){this.setColour(vM),this.appendDummyInput("").appendField("import ").appendField(new Et.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},xM={init:function(){this.setColour(vM),this.appendDummyInput("").appendField(new Et.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new Et.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;ee?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},gm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Cm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Sm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Am={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(Et.Msg.MIXLY_WIFI_USERNAME).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(Et.Msg.MIXLY_IOT_PASSWORD).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(Et.Msg.MIXLY_EMQX_PROJECT).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Lm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(Et.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(Et.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Nm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(Et.Msg.MIXLY_EMQX_SUBSCRIBE+Et.Msg.MIXLY_MICROBIT_MSG).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(Et.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},Dm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Fm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(Et.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},vm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},Ym={init:function(){this.setColour(hm),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},Xm={init:function(){this.setColour(hm),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},xm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},ym={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO").appendField(Et.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(Et.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Vm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+Et.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bm={init:function(){this.setColour(hm),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Bm={init:function(){this.VISITOR_ID=Rt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(hm),this.appendDummyInput("").appendField(new Et.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Gm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MixIO").appendField(Et.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},Um={init:function(){this.setColour(hm),this.appendDummyInput().appendField("HTTP"+Et.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(Et.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(Et.Msg.MIXLY_REQUESTS_GET).appendField(Et.Msg.MIXLY_GET_CURRENT_TIME).appendField(Et.Msg.MIXLY_OPEN_DEBUG).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},wm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("HTTP"+Et.Msg.MIXLY_Client).appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_REQUESTS_LEN,"client_len"],[Et.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[Et.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},km={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MQTT"+Et.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(Et.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(Et.Msg.MIXLY_INIT_SUBSCRIBE).appendField(Et.Msg.MQTT_Topic).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(Et.Msg.MIXLY_OPEN_DEBUG).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hm={init:function(){this.setColour(hm),this.appendDummyInput().appendField("MQTT"+Et.Msg.MIXLY_Client).appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_REQUESTS_LEN,"client_len"],[Et.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[Et.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Wm=Mm,Km=mm,Jm=Om,qm=Em,zm=cm,Qm=225,jm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(Et.Msg.MIXLY_NETWORK_MODE).appendField(new Et.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},Zm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[Et.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=Et.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:Et.Msg.MIXLY_NETWORK_WIFI_OPEN,False:Et.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},$m={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},tO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:Et.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},eO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(Et.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(Et.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},iO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_CONNECT+Et.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},nO={init:function(){this.setColour(Qm),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(Et.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(Et.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},sO={init:function(){this.setColour(Qm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},_O={init:function(){this.setColour(Qm),this.appendValueInput("url").appendField(Et.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},oO={init:function(){this.setColour(Qm),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},pO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[Et.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[Et.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:Et.Msg.MIXLY_ESP32_NETWORK_IP,1:Et.Msg.MIXLY_ESP32_NETWORK_MASK,2:Et.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},aO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},uO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[Et.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},rO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(Et.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(Et.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},lO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},dO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new Et.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},IO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},TO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},hO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},MO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},mO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},OO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},EO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},RO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},cO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},gO={init:function(){this.setColour(Qm),this.appendValueInput("DOMAIN").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS_GET).appendField(new Et.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},CO={init:function(){this.appendValueInput("VAL");var t=[[Et.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Qm),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:Et.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:Et.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:Et.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},SO={init:function(){this.appendValueInput("VAR").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Qm),this.appendDummyInput("").appendField(Et.Msg.blockpy_CONDUCT).appendField(new Et.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:Et.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:Et.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},AO={init:function(){this.setColour(Qm),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(Et.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},LO={init:function(){this.setColour(Qm),this.appendDummyInput("").appendField(new Et.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},NO="#A58C5B",DO={init:function(){this.setColour(NO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SENOR_IS_PRESSED)}},fO={init:function(){this.setColour(NO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SENOR_WAS_PRESSED)}},FO={init:function(){this.setColour(NO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_BUTTON+Et.Msg.MIXLY_GET_PRESSES)}},PO={init:function(){this.setColour(NO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[Et.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[Et.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},vO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_shake,"shake"],[Et.Msg.MIXLY_UP,"up"],[Et.Msg.MIXLY_DOWN,"down"],[Et.Msg.MIXLY_LEFT,"left"],[Et.Msg.MIXLY_RIGHT,"right"],[Et.Msg.MIXLY_MICROBIT_face_up,"face up"],[Et.Msg.MIXLY_MICROBIT_face_down,"face down"],[Et.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=Et.Msg.MIXLY_MICROBIT_JS_CURRENT,n=Et.Msg.MSG.catSensor,s=Et.Msg.MIXLY_MICROBIT_JS_STATE,_=Et.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:Et.Msg.MIXLY_MICROBIT_shake,up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT,"face up":Et.Msg.MIXLY_MICROBIT_face_up,"face down":Et.Msg.MIXLY_MICROBIT_face_down,freefall:Et.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+_}))}},YO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},XO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},xO={init:function(){var t=[[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(NO),this.appendValueInput("PIN",Number).appendField(new Et.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new Et.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},yO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},VO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},bO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"left"],[Et.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(Et.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=Et.Msg.MIXLY_ESP32_NEAR;return i+{left:Et.Msg.TEXT_TRIM_LEFT,right:Et.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},BO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[Et.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":Et.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":Et.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},GO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[Et.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},UO={init:function(){this.setColour(NO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},wO={init:function(){this.setColour(NO),this.appendDummyInput("").appendField("LM35"+Et.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_LM35)}},kO={init:function(){this.setColour(NO),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},HO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[Et.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[Et.Msg.MIXLY_ESP32_MAX30102_IR+","+Et.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},WO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[Et.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[Et.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},KO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},JO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.HTML_COLOUR+Et.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET+Et.Msg.HTML_COLOUR,"[2]"],[Et.Msg.MIXLY_GET+Et.Msg.MIXLY_IR_STRENGTH,"[1]"],[Et.Msg.MIXLY_GET+Et.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},qO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET_ENV_LIGHT,"E"],[Et.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},zO={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},QO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},jO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},ZO={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_Altitude+Et.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETPRESSURE,"pressure()"],[Et.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[Et.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},$O={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MIXGOPE_FIELD+Et.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[Et.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},tE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_shake,"shake"],[Et.Msg.MIXLY_UP,"up"],[Et.Msg.MIXLY_DOWN,"down"],[Et.Msg.MIXLY_LEFT,"left"],[Et.Msg.MIXLY_RIGHT,"right"],[Et.Msg.MIXLY_MICROBIT_face_up,"face up"],[Et.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=Et.Msg.MIXLY_MICROBIT_JS_CURRENT,n=Et.Msg.MSG.catSensor,s=Et.Msg.MIXLY_MICROBIT_JS_STATE,_=Et.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:Et.Msg.MIXLY_MICROBIT_shake,up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT,"face up":Et.Msg.MIXLY_MICROBIT_face_up,"face down":Et.Msg.MIXLY_MICROBIT_face_down}[e]+_}))}},eE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},iE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_GET+Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},nE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+Et.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},sE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},_E={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_GETTEMPERATUE)}},oE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return Et.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},pE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},aE={init:function(){this.setColour(NO),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},uE={init:function(){this.setColour(NO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[Et.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},rE={init:function(){this.setColour(NO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},lE={init:function(){this.setColour(NO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},dE={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},IE={init:function(){this.setColour(NO),this.appendDummyInput().appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(Et.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},TE={init:function(){this.setColour(NO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_SCAN_OK,"0"],[Et.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[Et.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},hE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},ME={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},mE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},OE={init:function(){this.setColour(NO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new Et.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&_)):(2048<=_&&_<=55295||57344<=_&&_<=65535)&&(n+=3,i.push(224|15&_>>12),i.push(128|63&_>>6),i.push(128|63&_))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==o?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+_+",font_address="+p+")\n"):"16x8 Matrix"==o&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+_+")\n"),i},tN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},eN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},iN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},nN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},sN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},_N=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},oN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},pN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},aN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},uN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},rN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},lN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},dN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},IN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},TN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},hN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},MN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},mN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},ON=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"width",e.ORDER_ATOMIC),o=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+_+", "+o+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+_+", "+o+","+a+")\n"}},EN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+_+", 1)\n"},RN=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},cN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},gN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},CN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},SN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"r",e.ORDER_ATOMIC),o="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(o){case"True":return i+".show_fill_circle("+n+", "+s+", "+_+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+_+", "+p+")\n"}},AN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),_=e.valueToCode(this,"x1",e.ORDER_ATOMIC),o=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+_+", "+o+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+_+", "+o+", "+p+", "+a+", "+r+")\n"}},LN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},NN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},DN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),_=this.getFieldValue("key");return"TM1650"==_?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+_+"("+s+")\n"):"TM1637"==_&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+_+"("+s+")\n"),i},fN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},FN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},PN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},vN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},YN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+_+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+o+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},XN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+_+",size = "+o+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+_+",size = "+o+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},xN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},yN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},VN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+_+",color="+o+")\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+_+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},bN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},BN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},GN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),_=e.valueToCode(this,"x2",e.ORDER_ATOMIC),o=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+_+", "+o+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+_+", "+o+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},UN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),_=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+_+")\n"},wN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},kN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},HN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},WN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},KN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),_=Rt.Boards.getSelectedBoardKey().split(":")[2],o="";return o=["mpython","mixgo_pe","mixgo_nova"].indexOf(_)>=0?"0x700000":["mixgo_zero"].indexOf(_)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+o+")\n"},JN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},qN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},zN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},QN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},jN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ZN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},$N=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},tD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},eD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},iD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},nD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},sD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},_D=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"w",e.ORDER_ATOMIC),o=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+_+", "+o+", "+p+")\n"+i+".show()\n"},oD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"length",e.ORDER_ATOMIC),o=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+_+", "+o+")\n"+i+".show()\n"},pD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},aD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},uD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),_=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+_+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+_+")\n")},rD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},lD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},dD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},ID=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},TD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},hD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},MD=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let _="",o=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),o+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);_+=n(o.toString(16)),s.unshift(_)}let _=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},qD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},zD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},QD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+_+",color="+o+")\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+_+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},jD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},ZD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},$D=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"w",e.ORDER_ATOMIC),o=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+_+", "+o+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+_+", "+o+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},tf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"length",e.ORDER_ATOMIC),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==o.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+_+", "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},ef=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),_=e.valueToCode(t,"x2",e.ORDER_ATOMIC),o=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+_+", "+o+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+_+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},nf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},sf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},_f=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},of=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var o="onboard_tft.pixel(int("+n+"), int("+s+"), "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return o},pf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},af=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},uf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},rf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=o+"=Clock("+n+","+s+","+_+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=o+"=Clock("+n+","+s+","+_+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},lf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},df=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},If=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},Tf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var _=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_=n+".clear(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\n"}return _},hf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"r",e.ORDER_ATOMIC),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==o.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+_+", "+_+", "+o+","+p+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+_+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},Mf=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},mf=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},Of=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},rX=function(){return"control.reset()\n"},lX=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+")\n"},dX=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+")\n"},IX=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},TX=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},hX=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},MX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},mX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},OX=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},EX=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},RX=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},cX=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},gX=function(){return"while True:\n pass\n"},CX=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},SX=function(t,e){return e.definitions_.import_os="import os","os.uname()"},AX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},LX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},NX=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},DX=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},fX=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},FX=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},PX=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},vX=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},YX=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},XX=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},xX=FX,yX=DX,VX=fX,bX=AX,BX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},GX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},UX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},wX={};wX["MixGo MINI"]={description:"MicroPython[ESP32C3 MixGo MINI]",digital_pin:Rt.Profile.generate(["0-10","18"]),input_pin:Rt.Profile.generate(["0-10","18"]),output_pin:Rt.Profile.generate(["0-10","18"]),pwm_input:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_input:Rt.Profile.generate(["0-4"],"adc","adc"),pwm_output:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_output:Rt.Profile.generate(["0-4"],"adc","adc"),espnow_channel:Rt.Profile.generate(["1-13"]),haskylens_model:Rt.Profile.generate(["0-4"]),digital:Rt.Profile.generate(["0-10","18"],"pin","pin"),pwm_pin:Rt.Profile.generate(["0-10","18"]),pwm:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_pin:Rt.Profile.generate(["0-4"]),analog:Rt.Profile.generate(["0-4"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Rt.Profile.generate(["0-4"]),exlcdh:Rt.Profile.generate(["0-11"]),exlcdv:Rt.Profile.generate(["0-7"]),brightness:Rt.Profile.generate(["0-9"]),tts_voice:Rt.Profile.generate(["0-16"]),tts_builtin_music:Rt.Profile.generate(["0-47"]),tts_bgmusic:Rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["ANGRY","onboard_matrix.ANGRY"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["DOOR_OPEN","onboard_matrix.DOOR_OPEN"],["DOOR_OPENING","onboard_matrix.DOOR_OPENING"],["DOOR_CLOSE","onboard_matrix.DOOR_CLOSE"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["BIRTHDAY","onboard_music.BIRTHDAY"],["BA_DING","onboard_music.BA_DING"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},wX["ESP32C2 Generic(2M)"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Rt.Profile.generate(["0-11","18-21"]),input_pin:Rt.Profile.generate(["0-11","18-21"]),output_pin:Rt.Profile.generate(["0-11","18-21"]),pwm_input:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Rt.Profile.generate(["0-5"],"adc","adc"),pwm_output:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Rt.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Rt.Profile.generate(["1-13"]),haskylens_model:Rt.Profile.generate(["0-4"]),digital:Rt.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Rt.Profile.generate(["0-11","18-21"]),pwm:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Rt.Profile.generate(["0-5"]),analog:Rt.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Rt.Profile.generate(["0-4"]),exlcdh:Rt.Profile.generate(["0-31"]),exlcdv:Rt.Profile.generate(["0-11"]),brightness:Rt.Profile.generate(["0-9"]),tts_voice:Rt.Profile.generate(["0-16"]),tts_builtin_music:Rt.Profile.generate(["0-47"]),tts_bgmusic:Rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const kX=wX,HX=20,WX={init:function(){this.setColour(HX),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_HIGH,"HIGH"],[Et.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},KX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},JX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},qX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},zX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField("DAC"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},QX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_mSecond,"period"],[Et.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},jX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_FREQUENCY+Et.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},ZX={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},$X={init:function(){this.setColour(HX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_REF_VOLTAGE+Et.Msg.MIXLY_STAT).appendField(new Et.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},tx={init:function(){this.setColour(HX),this.appendValueInput("pin").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},ex={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[Et.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[Et.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},ix={init:function(){this.setColour(20),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_AS).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[Et.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[Et.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[Et.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},nx={init:function(){this.setColour(HX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("pwm#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},sx={init:function(){this.setColour(HX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("dac#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+Et.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},_x={init:function(){this.setColour(HX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("adc#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(Et.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},ox={init:function(){this.setColour(HX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("tc#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},px=ix,ax=jX,ux=ox,rx=tx,lx=ex,dx=40,Ix={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput("").appendField(t).appendField(Et.Msg.MIXLY_TEM_HUM+" AHT21").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Tx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput("").appendField(t).appendField(Et.Msg.MIXLY_Altitude+Et.Msg.MSG.catSensor+" HP203X").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETPRESSURE,"pressure()"],[Et.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[Et.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},hx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},Mx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},mx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ox={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Ex={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(Et.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0)}},Rx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(dx),this.appendDummyInput().appendField(t).appendField("RFID"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_SCAN_OK,"True"],[Et.Msg.MIXLY_RFID_SCAN_NOTAGERR,"None"],[Et.Msg.MIXLY_RFID_SCAN_ERROR,"False"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cx=100,gx={init:function(){this.setColour(cx),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[2]"],[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[2]"],[Et.Msg.ME_GO_LIGHT_HEADLIGHT,"WLED"]]),"op"),this.setOutput(!0)}},Cx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Sx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ax={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Lx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Nx={init:function(){this.setColour(cx),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Dx={init:function(){this.setColour(cx),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fx={init:function(){this.setColour(cx),this.appendDummyInput().appendField("ME GO").appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"0"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"1"],[Et.Msg.ME_GO_MOTOR_EXTERN,"2"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.ROTATION_FORWARD,"CW"],[Et.Msg.ROTATION_BACKWARD,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fx={init:function(){this.setColour(cx),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_INTERRUPT).appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Px={init:function(){this.setColour(cx),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["turns,distance","all"]]),"args"),this.appendValueInput("num").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vx={init:function(){this.setColour(cx),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["speed","speed"]]),"args"),this.setOutput(!0),this.setInputsInline(!0)}},Yx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},Xx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT,"[0]"],[Et.Msg.MIXGO_RIGHT_FRONT,"[1]"],[Et.Msg.MIXGO_LEFT_BACK,"[3]"],[Et.Msg.MIXGO_RIGHT_BACK,"[2]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},xx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ME_GO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[Et.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[Et.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"],[Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_ONLY,"LS"],[Et.Msg.ME_GO_SENSOR_MODE_OFF,"CL"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yx={init:function(){this.setColour(cx),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.ME_GO_PITCH,"[0]"],[Et.Msg.ME_GO_ROLL,"[1]"],[Et.Msg.ME_GO_PITCH+", "+Et.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Vx={init:function(){this.setColour(cx),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR}))}},bx=230,Bx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital),"PIN"),this.setOutput(!0)}},Gx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},Ux={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},wx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},kx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},Hx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},Wx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},Kx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},Jx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},qx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},zx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},Qx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},jx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},Zx={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},$x={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},ty={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},ey={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog),"PIN"),this.setOutput(!0)}},iy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},ny={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.dac),"PIN"),this.setOutput(!0)}},sy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},_y={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},oy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},py={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},ay={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},uy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},ry={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.touch),"PIN"),this.setOutput(!0)}},ly={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},dy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},Iy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},Ty={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},hy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},My={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},my={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},Oy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},Ey={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},Ry={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},cy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},gy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},Cy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},Sy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},Ay={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},Ly={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Ny={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},Dy={init:function(){this.setColour(bx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},fy=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},Fy=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},Py=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},vy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Yy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Xy=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},xy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},yy=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Vy=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},by=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},By=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},Gy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},Uy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},wy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},ky=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},Hy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},Wy=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mini_g2="import mini_g2",["mini_g2.ext_ahtx0."+i+"()",e.ORDER_ATOMIC]},Ky=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mini_g2="import mini_g2",["mini_g2.ext_hp203x."+i,e.ORDER_ATOMIC]},Jy=function(t,e){e.definitions_.import_mini_g2="import mini_g2";return["mini_g2.varistor()",e.ORDER_ATOMIC]},qy=function(t,e){if(e.definitions_.import_mini_g2="import mini_g2","mixgo_mini"==Rt.Boards.getSelectedBoardKey().split(":")[2]){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var i='ext_rfid.read_card(0, x="id")'}else{e.definitions_.import_mini_g2="import mini_g2";i='mini_g2.ext_rc522.read_card(0, x="id")'}return[i,e.ORDER_ATOMIC]},zy=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var s="ext_rfid.read_card("+n+")"}else{e.definitions_.import_mini_g2="import mini_g2";s="mini_g2.ext_rc522.read_card("+n+")"}return[s,e.ORDER_ATOMIC]},Qy=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var _="ext_rfid.write_card("+s+","+n+")\n"}else{e.definitions_.import_mini_g2="import mini_g2";_="mini_g2.ext_rc522.write_card("+s+","+n+")\n"}return _},jy=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var _="ext_rfid.write_card("+s+","+n+")"}else{e.definitions_.import_mini_g2="import mini_g2";_="mini_g2.ext_rc522.write_card("+s+","+n+")"}return[_,e.ORDER_ATOMIC]},Zy=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key");if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var s="ext_rfid.scan_card()=="+n}else{e.definitions_.import_mini_g2="import mini_g2";s="mini_g2.ext_rc522.scan_card()=="+n}return[s,e.ORDER_ATOMIC]},$y=function(t,e){return e.definitions_.import_me_go_car="from me_go import car",["car."+this.getFieldValue("op"),e.ORDER_ATOMIC]},tV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car","car.setonoff("+i+","+e.valueToCode(this,"bright",e.ORDER_ATOMIC)+")\n"},eV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car",["car.getrightness("+i+")",e.ORDER_ATOMIC]},iV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car",["car.getonoff("+i+")",e.ORDER_ATOMIC]},nV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car","car.setbrightness("+i+","+e.valueToCode(this,"bright",e.ORDER_ATOMIC)+")\n"},sV=function(t,e){var i=this.getFieldValue("VAR");return e.definitions_.import_me_go_car="from me_go import car",'car.move("'+i+'",'+e.valueToCode(this,"speed",e.ORDER_ASSIGNMENT)+")\n"},_V=function(t,e){var i=this.getFieldValue("VAR");return e.definitions_.import_me_go_car="from me_go import car",'car.move("'+i+'")\n'},oV=function(t,e){var i=this.getFieldValue("wheel");e.definitions_.import_me_go_car="from me_go import car";var n=this.getFieldValue("direction");return 0==i&&("CW"==n?n="CCW":"CCW"==n&&(n="CW")),"car.motor(car.MOTO["+i+'],"'+n+'",'+e.valueToCode(this,"speed",e.ORDER_ATOMIC)+")\n"},pV=function(t,e){var i=this.getFieldValue("mode");return e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i,"hall_"+i+".irq_cb("+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+")\n"},aV=function(t,e){var i=this.getFieldValue("mode"),n=this.getFieldValue("args");e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i;var s=e.valueToCode(this,"num",e.ORDER_ATOMIC);return"all"==n?"hall_"+i+".initial(turns="+s+",distance="+s+")\n":"hall_"+i+".initial("+n+"="+s+")\n"},uV=function(t,e){var i=this.getFieldValue("mode"),n=this.getFieldValue("args");return e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i,["hall_"+i+"."+n,e.ORDER_ATOMIC]},rV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.patrol()"+i,e.ORDER_ATOMIC]},lV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.obstacle()"+i,e.ORDER_ATOMIC]},dV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car","car.ir_mode(car."+i+")\n"},IV=function(t,e){return e.definitions_.import_mixgo_me_onboard_mxc6655xa="from mixgo_me import onboard_mxc6655xa",["onboard_mxc6655xa.eulerangles(upright=True)"+this.getFieldValue("angle"),e.ORDER_ATOMIC]},TV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.light()"+i,e.ORDER_ATOMIC]},hV=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},MV=hV,mV=hV,OV=hV,EV=hV,RV=hV,cV=hV,gV=hV,CV=hV,SV=hV,AV=hV,LV=hV,NV=hV,DV=hV,fV=hV,FV=hV,PV=hV,vV=hV,YV=hV,XV=hV,xV=hV,yV=hV,VV=hV,bV=hV,BV=hV,GV=hV,UV=hV,wV=hV,kV=hV,HV=hV,WV=hV,KV=hV,JV=hV,qV=hV,zV=hV,QV=hV,jV=hV,ZV=hV,$V=hV,tb=hV,eb=hV,ib=hV,nb=hV,sb=hV,_b=hV;Object.assign(Et.Variables,gt),Object.assign(Et.Procedures,qn),Et.Python=ru,Et.generator=ru,Rt.Profile.default={},Object.assign(Rt.Profile,kX),Object.assign(Rt.Profile.default,kX["MixGo CC"]),Object.assign(Et.Blocks,e,i,n,s,_,o,p,a,u,r,l,d,I,b,H,k,X,B,W,f,w,U,G,F,D,N,y,x,V,P,v,Y,lt,dt,It,Tt),Object.assign(Et.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,nt,ut,at,$,st,rt,q,pt,ot,_t,z,J,K,et,tt,it,Q,j,Z,ht,Mt,mt,Ot)})(); \ No newline at end of file +class Ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(Et.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(Et.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var _=t.newBlock("controls_if_else");_.initSvg(),i.connect(_.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],_=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,_=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,_)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),_=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(_.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(Et.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(Et.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(vt),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PYTHON_RANGE).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Bt={init:function(){this.setColour(vt),this.appendValueInput("LIST").setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(Et.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Gt={init:function(){this.setColour(vt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new Et.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(Et.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:Et.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Ut={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new Et.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var _=t.newBlock("controls_finally");_.initSvg(),i.connect(_.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],_=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,_=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,_)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),_=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(_.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(Et.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},wt={init:function(){this.setColour(vt);var t=new Et.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:Et.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},kt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new Et.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return Et.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ht={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new Et.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return Et.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Gt.OPERATORS=[[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],wt.OPERATORS=[[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[Et.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Wt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Jt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(Et.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},qt={init:function(){this.setColour(vt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},zt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Qt={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(Et.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},jt={init:function(){this.jsonInit({message0:Et.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:vt,tooltip:Et.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:Et.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Zt={init:function(){this.setColour(vt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_STAT),this.setOutput(!0)}},$t={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},te={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},ee={init:function(){this.appendDummyInput().appendField(Et.Msg.CONTROLS_REPEAT_TITLE_REPEAT+Et.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(Et.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new Et.FieldDropdown([[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[Et.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(vt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},ie={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ne={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},se={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},_e={init:function(){this.setColour(vt),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_GET_UNIQUE_IDEN)}},oe=230;Et.FieldTextInput.math_number_validator=function(t){return String(t)},Et.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const pe={init:function(){this.setColour(oe),this.appendDummyInput().appendField(new Et.FieldTextInput("0",Et.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MATH_NUMBER_TOOLTIP)}},ae={init:function(){this.setColour(oe);this.appendDummyInput("").appendField(Et.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new Et.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},ue={init:function(){this.setColour(oe);this.appendDummyInput("").appendField(Et.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new Et.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:Et.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},re={init:function(){this.setColour(oe),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:Et.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:Et.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:Et.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},le={init:function(){this.setColour(oe),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:Et.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:Et.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:Et.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:Et.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:Et.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},de={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new Et.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},Ie={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new Et.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:Et.Msg.MATH_TRIG_TOOLTIP_SIN,COS:Et.Msg.MATH_TRIG_TOOLTIP_COS,TAN:Et.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:Et.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:Et.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:Et.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:Et.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},Te={init:function(){var t=[[Et.Msg.MATH_BIN,"bin"],[Et.Msg.MATH_OCT,"oct"],[Et.Msg.MATH_HEX,"hex"]];this.setColour(oe),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new Et.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:Et.Msg.MATH_DEC_TOOLTIP_BIN,oct:Et.Msg.MATH_DEC_TOOLTIP_OCT,hex:Et.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},he={init:function(){var t=[[Et.Msg.LANG_MATH_TO_ROUND,"round"],[Et.Msg.LANG_MATH_TO_CEIL,"ceil"],[Et.Msg.LANG_MATH_TO_FLOOR,"floor"],[Et.Msg.MATH_ABS,"fabs"],[Et.Msg.MATH_SQRT,"sqrt"]];this.setColour(oe),this.appendValueInput("A").setCheck(Number).appendField(new Et.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:Et.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:Et.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:Et.Msg.MATH_SINGLE_TOOLTIP_SQ,round:Et.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:Et.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:Et.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Me={init:function(){var t=[[Et.Msg.MIXLY_MAX,"max"],[Et.Msg.MIXLY_MIN,"min"]];this.setColour(oe),this.appendValueInput("A").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(Et.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:Et.Msg.MIXLY_TOOLTIP_MATH_MAX,min:Et.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},me={init:function(){var t=[[Et.Msg.MATH_TWO,"two"],[Et.Msg.MATH_EIGHT,"eight"],[Et.Msg.MATH_TEN,"ten"],[Et.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(oe),this.appendDummyInput("").appendField(Et.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new Et.FieldDropdown(t),"OP").appendField(Et.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MATH_ZHW).appendField(new Et.FieldDropdown(t),"OP2").appendField(Et.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:Et.Msg.MATH_Before_two,eight:Et.Msg.MATH_Before_eight,ten:Et.Msg.MATH_Before_ten,sixteen:Et.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:Et.Msg.MATH_Behind_two,eight:Et.Msg.MATH_Behind_eight,ten:Et.Msg.MATH_Behind_ten,sixteen:Et.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Oe={init:function(){var t=[[Et.Msg.LANG_MATH_INT,"int"],[Et.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(oe),this.setOutput(!0,Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_RANDOM).appendField(new Et.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(Et.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:Et.Msg.LANG_MATH_INT,float:Et.Msg.LANG_MATH_FLOAT_RANDOM};return Et.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},Ee={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(Et.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(Et.Msg.MATH_CONSTRAIN_TOOLTIP)}},Re={init:function(){this.setColour(oe),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(Et.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(Et.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_MATH_MAP)}},ce={init:function(){this.setColour(oe),this.appendDummyInput().appendField(new Et.FieldTextInput("0",Et.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(Et.Msg.MATH_NUMBER_TOOLTIP)}},ge={init:function(){this.setColour(oe),this.appendValueInput("NUM").setCheck(Number).appendField(Et.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ce={init:function(){this.setColour(oe),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MATH_ROUND).appendField(Et.Msg.TEXT_KEEP),this.appendDummyInput().appendField(Et.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(Et.Msg.MATH_ROUND_NEW_TOOLTIP)}},Se={init:function(){var t=[[Et.Msg.MIXLY_TO_INT,"int"],[Et.Msg.MIXLY_TO_FLOAT,"float"],[Et.Msg.MIXLY_TO_BITES,"b"]];this.setColour(oe),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:Et.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:Et.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:Et.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ae={init:function(){var t=[[Et.Msg.MIXLY_TO_INT,"int"],[Et.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(oe),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:Et.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:Et.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Le=Re,Ne=160,De={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(Et.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new Et.FieldImage(e,12,12,'"')}},fe={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(Et.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new Et.FieldImage(e,12,12,'"')}};Et.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Fe={init:function(){this.setColour(Ne),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new Et.FieldTextInput("",Et.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(Et.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new Et.FieldImage(e,7,12,'"')}},Pe={init:function(){this.setColour(Ne),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(Et.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ve={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Ye={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(String).appendField(Et.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Xe={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},xe={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},ye={init:function(){this.WHERE_OPTIONS=[[Et.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[Et.Msg.TEXT_GET_INDEX_RANDOM+1+Et.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.LISTS_GET_INDEX_GET,"MODE"),Et.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(Et.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=Et.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+Et.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",Et.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:Et.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:Et.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:Et.Msg.TEXT_GET_INDEX_RANDOM};return Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+Et.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==Et.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),Et.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(Et.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new Et.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),Et.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ve={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(Et.Msg.LISTS_GET_INDEX_GET+" "+Et.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(Et.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+Et.Msg.LISTS_GET_INDEX_FROM_START+"n"+Et.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(Et.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(Et.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Be={init:function(){this.WHERE_OPTIONS_1=[[Et.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[Et.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[Et.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[Et.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[Et.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(Et.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==Et.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==Et.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),Et.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(Et.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new Et.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ge={init:function(){this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(Et.Msg.LISTS_GET_INDEX_GET+" "+Et.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(Et.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(Et.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(Et.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Ue={init:function(){var t=[[Et.Msg.MIXLY_EQUALS,"==="],[Et.Msg.MIXLY_STARTSWITH,"startswith"],[Et.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ne),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new Et.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},we={init:function(){this.setColour(Ne),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(Et.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_COMPARETO_HELP)}},ke={init:function(){var t=[[Et.Msg.TEXT_UPPER,"upper"],[Et.Msg.TEXT_TITLE,"title"],[Et.Msg.TEXT_CAPITALIZE,"capitalize"],[Et.Msg.TEXT_SWAPCASE,"swapcase"],[Et.Msg.TEXT_LOWER,"lower"]];this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:Et.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:Et.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:Et.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:Et.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:Et.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},He={init:function(){var t=[[Et.Msg.TEXT_LJUST,"ljust"],[Et.Msg.TEXT_CENTER,"center"],[Et.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ne),this.appendValueInput("VAR").appendField(new Et.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(Et.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(Et.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},We={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(Et.Msg.MIXLY_MID+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(Et.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},Ke={init:function(){this.setColour(Ne),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},Je={init:function(){this.setColour(Ne),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(Et.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(Et.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},qe={init:function(){this.setColour(Ne),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(Et.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(Et.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},ze={init:function(){var t=[[Et.Msg.TEXT_TRIM_BOTH,"strip"],[Et.Msg.TEXT_TRIM_LEFT,"lstrip"],[Et.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ne),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(Et.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new Et.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(Et.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:Et.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:Et.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:Et.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Qe={init:function(){this.setColour(Ne),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new Et.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new Et.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ki={init:function(){this.setColour(Hi),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Ji={init:function(){this.setColour(Hi),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},qi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_KEYS),this.setTooltip(Et.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},zi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(Et.Msg.DICTS_GET_TOOLTIP)}},Qi={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(Et.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(Et.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},ji={init:function(){this.setColour(Hi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(Et.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Zi={init:function(){this.setColour(Hi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(Et.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_DELETE_TOOLTIP)}},$i={init:function(){this.setColour(Hi),this.appendValueInput("DICT2").setCheck("Dict").appendField(Et.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(Et.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MID),this.setTooltip(Et.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_CLEAR),this.setTooltip(Et.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},en={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_ITEMS),this.setTooltip(Et.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},nn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_VALUES),this.setTooltip(Et.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},sn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_LENGTH),this.setTooltip(Et.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},_n={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.DICT_DELDICT),this.setTooltip(Et.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},on={init:function(){this.MODE=[[Et.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[Et.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(Et.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(Et.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=Et.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=Et.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==Et.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new Et.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},pn={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(Et.Msg.DICTS_ADD_VALUE),this.setTooltip(Et.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},an={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(Et.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(Et.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_SETDEFAULT_TOOLTIP)}},un={init:function(){this.setColour(Hi),this.appendDummyInput("").appendField(new Et.FieldLabel(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new Et.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},rn={init:function(){this.setColour(Hi),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},ln={init:function(){this.setColour(Hi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TO_JSON),this.setTooltip(Et.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},dn={init:function(){this.setColour(Hi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(Et.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},In=210,Tn={init:function(){var t=Et.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:Et.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:Et.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:Et.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:Et.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:Et.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:Et.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},hn={init:function(){var t=Et.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=Et.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new Et.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Mn={init:function(){var t=[[Et.Msg.LOGIC_OPERATION_AND,"AND"],[Et.Msg.LOGIC_OPERATION_OR,"OR"],[Et.Msg.LOGIC_OPERATION_NOR,"NOR"],[Et.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new Et.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:Et.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:Et.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:Et.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:Et.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},mn={init:function(){this.setColour(In),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(Et.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(Et.Msg.LOGIC_NEGATE_TOOLTIP)}},On={init:function(){var t=[[Et.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[Et.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(In),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new Et.FieldDropdown(t),"BOOL"),this.setTooltip(Et.Msg.LOGIC_BOOLEAN_TOOLTIP)}},En={init:function(){this.setColour(In),this.setOutput(!0),this.appendDummyInput().appendField(Et.Msg.LOGIC_NULL),this.setTooltip(Et.Msg.LOGIC_NULL_TOOLTIP)}},Rn={init:function(){this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").appendField(Et.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(Et.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},cn={init:function(){var t=[[Et.Msg.TEXT_APPEND_TO,"in"],[Et.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new Et.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(Et.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.IN)}},gn={init:function(){var t=[[Et.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[Et.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(In),this.appendValueInput("A"),this.appendValueInput("B").appendField(new Et.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},Cn={init:function(){this.setColour(In),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Sn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(Et.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG,o=Et.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s+o}))}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(Et.Msg.MIXPY_TEXT_ENCODE).appendField(new Et.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_USE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,_=Et.Msg.MIXLY_BELONG,o=Et.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+_+n+s+o}))}},Dn={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+Et.Msg.MIXLY_MICROBIT_TYPE_STRING+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(Et.Msg.MICROBIT_PYTHON_TYPE)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.HTML_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Vn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Gn={init:function(){this.setColour(0),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Un={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return Et.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+Et.Msg.MIXLY_ESP32_SET+{mkdir:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(Et.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},kn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Hn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.HTML_FILE,"isfile"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+Et.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Wn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(Et.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Kn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(Et.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Jn={};Jn.NAME_TYPE=Et.PROCEDURE_CATEGORY_NAME,Jn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(Et.Msg.MIXLY_AIP_ATTR).setAlign(Et.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},ks={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_FORM_CONTENT).appendField(new Et.FieldDropdown([[Et.Msg.HTML_TEXT,"text"],[Et.Msg.HTML_EMAIL,"email"],[Et.Msg.HTML_NUMBER,"number"],[Et.Msg.HTML_PASSWORD,"password"],[Et.Msg.HTML_CHECKBOX,"checkbox"],[Et.Msg.HTML_RADIOBUTTON,"radiobutton"],[Et.Msg.HTML_BUTTON,"button"],[Et.Msg.HTML_COLOUR,"colour"],[Et.Msg.HTML_DATE,"date"],[Et.Msg.HTML_LOCALTIME,"local time"],[Et.Msg.HTML_FILE,"file"],[Et.Msg.HTML_HIDDEN,"hidden"],[Et.Msg.HTML_IMAGE,"image"],[Et.Msg.HTML_MONTH,"month"],[Et.Msg.HTML_RANGE,"range"],[Et.Msg.HTML_RESET,"reset"],[Et.Msg.HTML_SEARCH,"search"],[Et.Msg.HTML_SUBMIT,"submit"],[Et.Msg.HTML_TELEPHONENUMBER,"telephone number"],[Et.Msg.HTML_TIME,"time"],[Et.Msg.HTML_URL,"url"],[Et.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(Et.Msg.HTML_NAME).appendField(new Et.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(Et.Msg.HTML_VALUE).appendField(new Et.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(Et.Msg.MIXLY_AIP_ATTR).setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(ys),this.appendDummyInput().appendField(new Et.FieldTextInput("property"),"KEY").appendField(":").appendField(new Et.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws={init:function(){this.setColour(ys),this.appendDummyInput().appendField(new Et.FieldTextInput("property"),"KEY").appendField(":").appendField(new Et.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ks={init:function(){this.setColour(ys),this.appendDummyInput().appendField(Et.Msg.HTML_TEXT).appendField(new Et.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Js=160,qs={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new Et.FieldTable(""),"TEXT")}},zs={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new Et.FieldMultilineInput(""),"TEXT")}},Qs={init:function(){this.setColour(Js),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new Et.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},js={init:function(){this.setColour(Js),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Zs={init:function(){this.setColour(Js),this.appendDummyInput().appendTitle("Comment:").appendTitle(new Et.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},$s={init:function(){this.setColour(Js),this.appendValueInput("VALUE").appendField(Et.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},t_={init:function(){this.setColour(Js),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new Et.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(Et.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=Et.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},Et.isNumber(n)&&Et.isNumber(s)&&Et.isNumber(_))n=parseFloat(n),s=parseFloat(s),_=Math.abs(parseFloat(_)),0==n%1&&0==s%1&&0==_%1?(n<=s?(s++,t=0==n&&1==_?s:n+", "+s,1!=_&&(t+=", "+_)):t=n+", "+--s+", -"+_,t="range("+t+")"):(t=n",GTE:">="};const bp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",_=e.valueToCode(this,"B",n)||"False";if("AND"==i)var o=s+" and "+_;else if("OR"==i)o=s+" or "+_;else if("NOR"==i)o="not("+s+"^"+_+")";else o=s+"^"+_;return[o,n]},Bp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Gp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Up=function(t,e){return["None",e.ORDER_ATOMIC]},wp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},kp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Hp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Wp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Kp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Jp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},qp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},zp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Qp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},jp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Zp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},$p=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ta=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},ea=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},ia=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},na=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},sa=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},_a=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},oa=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},pa=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},aa=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ua=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},ra=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},la=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},da=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},Ia=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},Ta=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},ha=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),Et.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var _=[],o=0;o\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},za=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Za=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},$a=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},tu=function(t,e){return'"},eu=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},iu=function(){return this.getFieldValue("TEXT")+"\n"},nu=function(t){return t.getFieldValue("TEXT")+"\n"},su=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},_u=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},ou=function(){return""},pu=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},au=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),_=0;_0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+_.join("")+o.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+o.join("\n")},ru.scrubNakedValue=function(t){return t+"\n"},ru.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},ru.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},ru.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(_=t.getCommentText())&&(_=Et.utils.string.wrap(_,ru.COMMENT_WRAP-3),n+=ru.prefixLines(_+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const lu="#74A55B",du={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_RGB_PIN_COUNT)}},Iu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Tu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},hu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Mu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(Et.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(Et.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},mu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ou={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_RESET)}},Eu={init:function(){this.setColour(lu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ru={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},cu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},gu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Cu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Su={init:function(){this.setColour(lu),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Au={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(lu),this.appendValueInput("VAR").appendField("360°"+Et.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SETTING+Et.Msg.blockpy_turtle_rotate+Et.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Nu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("180°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_MOVE)}},Du={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("360°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},fu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("180°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Fu={init:function(){this.setColour(lu),this.appendValueInput("PIN",Number).appendField("360°"+Et.Msg.MIXLY_SERVO).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Pu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new Et.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(Et.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},vu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"ms32006.MOT_CW"],[Et.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[Et.Msg.MOTOR_N,"ms32006.MOT_N"],[Et.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Yu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new Et.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"ms32006.MOT_CW"],[Et.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Xu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_RGB_PIN_COUNT)}},xu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},yu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Vu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new Et.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+Et.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},Bu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Gu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Uu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(Et.Msg.MIXLY_PROGRAM_BLOCK).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},wu={init:function(){this.setColour(lu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(Et.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(Et.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(Et.Msg.MIXLY_PROGRAM_BLOCK).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},ku={init:function(){this.setColour(lu),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},Hu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Wu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_TRAFFIC_LIGHT).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.LISTS_SET_INDEX_SET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[Et.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_WHITE,"W"],[Et.Msg.COLOUR_RGB_RED,"R"],[Et.Msg.COLOUR_RGB_YELLOW,"Y"],[Et.Msg.COLOUR_RGB_GREEN,"G"],[Et.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_WHITE,"W"],[Et.Msg.COLOUR_RGB_RED,"R"],[Et.Msg.COLOUR_RGB_YELLOW,"Y"],[Et.Msg.COLOUR_RGB_GREEN,"G"],[Et.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},zu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[Et.Msg.MIXLY_SPEED,"[1]"],[Et.Msg.MATH_SINGLE_OP_ABSOLUTE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[Et.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[Et.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[Et.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[Et.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ju={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MATH_SINGLE_OP_ABSOLUTE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"0"],[Et.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[Et.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField("("+Et.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},er={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.ME_GO_MOTOR_EXTERN+Et.Msg.MIXLY_SERVO_MOTOR).appendField(Et.Msg.MIXLY_RELATIVE+Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+Et.Msg.MSG.run).appendField("("+Et.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LEFT,"0"],[Et.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MODE).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPEED+Et.Msg.MIXLY_MODE,"0"],[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER+Et.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(Et.inputs.Align.RIGHT).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"0"],[Et.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MOTOR,"ext_motor"],[Et.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[Et.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[Et.Msg.COLOUR_RGB_RED+"LED","R_LED"],[Et.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[Et.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[Et.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[Et.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},nr={init:function(){this.setColour(lu),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.ME_GO_MOTOR_EXTERN).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MOTOR,"ext_motor"],[Et.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[Et.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[Et.Msg.COLOUR_RGB_RED+"LED","R_LED"],[Et.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[Et.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[Et.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[Et.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sr="#6C9858",_r={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},or={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_ON,"1"],[Et.Msg.MIXLY_ESP32_OFF,"0"],[Et.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},pr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},ar={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},ur={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},rr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},lr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(Et.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(Et.Msg.MIXLY_LCD_SETCOLOR).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_LIGHT_RED,"1"],[Et.Msg.MIXLY_LIGHT_GREEN,"2"],[Et.Msg.MIXLY_LIGHT_BLUE,"3"],[Et.Msg.MIXLY_LIGHT_YELLOW,"4"],[Et.Msg.MIXLY_LIGHT_CYAN,"5"],[Et.Msg.MIXLY_LIGHT_PURPLE,"6"],[Et.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},dr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Ir={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Tr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},hr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING).appendField(Et.Msg.MIXLY_BUILDIN_LED).appendField(new Et.FieldDropdown([[Et.Msg.COLOUR_RGB_RED,"r"],[Et.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Mr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(new Et.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},mr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Or={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Er={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Rr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.PYTHON_RANGE_STEP).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_WRI)}},gr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(Et.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Cr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(Et.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Sr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(Et.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.PYTHON_RANGE_STEP).appendField(Et.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Ar={init:function(){this.setColour(sr),this.appendValueInput("TICKS").setCheck(Number).appendField(Et.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(Et.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(Et.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Lr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Nr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_RESET)}},Dr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},fr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(Et.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Fr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pr={init:function(){this.setColour(sr),this.appendValueInput("LIST").appendField(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},vr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(sr),this.appendDummyInput().appendField("MixGo Car").appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(sr),this.appendDummyInput("").appendField("MixGo Car").appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},xr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_STOP).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[Et.Msg.MIXLY_SPEED,"SPEED"],[Et.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXBOT).appendField(Et.Msg.MIXLY_MOTOR).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"1"],[Et.Msg.TEXT_TRIM_RIGHT,"2"],[Et.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[Et.Msg.MIXLY_SPEED,"SPEED"],[Et.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Ur={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[Et.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.BITBOT).appendField(Et.Msg.MIXLY_MOTOR).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"0"],[Et.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.CLOCKWISE,"CW"],[Et.Msg.ANTI_CLOCKWISE,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wr={init:function(){this.setColour(sr),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(sr),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_MIXBOT_BUZZER+Et.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},qr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.MIXLY_MIXBOT_BUZZER+Et.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},zr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_RECORD_AUDIO).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(Et.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_PLAY_AUDIO).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},jr={init:function(){this.setColour(sr),this.appendValueInput("PATH").appendField(Et.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Zr={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(Et.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},$r={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tl={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.LISTS_SET_INDEX_SET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},el={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.PIN_NUMBERING).appendField(new Et.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT+Et.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},il={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.LISTS_SET_INDEX_SET+Et.Msg.ME_GO_MOTOR_EXTERN).appendField(Et.Msg.MIXLY_ALL+Et.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(Et.ALIGN_RIGHT).appendField(Et.Msg.blynk_IOT_IR_POWER+Et.Msg.MIXLY_PINMODEOUT+Et.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},nl={init:function(){this.setColour(sr),this.appendDummyInput().appendField(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(Et.Msg.MIXLY_RELEASE).appendField(new Et.FieldDropdown([[Et.Msg.MICROPYTHON_DISPLAY_YES,"True"],[Et.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.ANALOG+Et.Msg.MIXLY_KEYBOARD_INPUT)}},sl={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SPECIAL_KEY).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPECIAL_KEY0,"0"],[Et.Msg.MIXLY_SPECIAL_KEY1,"1"],[Et.Msg.MIXLY_SPECIAL_KEY2,"2"],[Et.Msg.MIXLY_SPECIAL_KEY1,"4"],[Et.Msg.MIXLY_SPECIAL_KEY8,"8"],[Et.Msg.MIXLY_SPECIAL_KEY16,"16"],[Et.Msg.MIXLY_SPECIAL_KEY32,"32"],[Et.Msg.MIXLY_SPECIAL_KEY64,"64"],[Et.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},_l={init:function(){this.setColour(sr),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GENERAL_KEY).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},ol={init:function(){this.setColour(sr),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new Et.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(Et.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("generalkey_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Am={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Lm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Nm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Dm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(Et.Msg.MIXLY_WIFI_USERNAME).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(Et.Msg.MIXLY_IOT_PASSWORD).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(Et.Msg.MIXLY_EMQX_PROJECT).setAlign(Et.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(Et.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(Et.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Fm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(Et.Msg.MIXLY_EMQX_SUBSCRIBE+Et.Msg.MIXLY_MICROBIT_MSG).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(Et.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},Pm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ym={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Xm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(Et.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},xm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(Et.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},ym={init:function(){this.setColour(Om),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},Vm={init:function(){this.setColour(Om),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},bm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},Bm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO").appendField(Et.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(Et.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Gm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+Et.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Um={init:function(){this.setColour(Om),this.appendDummyInput().appendField(Et.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(Et.Msg.MIXLY_EMQX_SERVER).setAlign(Et.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(Et.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},wm={init:function(){this.VISITOR_ID=Rt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Om),this.appendDummyInput("").appendField(new Et.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},km={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MixIO").appendField(Et.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},Hm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("HTTP"+Et.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(Et.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(Et.Msg.MIXLY_REQUESTS_GET).appendField(Et.Msg.MIXLY_GET_CURRENT_TIME).appendField(Et.Msg.MIXLY_OPEN_DEBUG).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("HTTP"+Et.Msg.MIXLY_Client).appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_REQUESTS_LEN,"client_len"],[Et.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[Et.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Km={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MQTT"+Et.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(Et.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(Et.Msg.MIXLY_INIT_SUBSCRIBE).appendField(Et.Msg.MQTT_Topic).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(Et.Msg.MIXLY_OPEN_DEBUG).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[Et.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Jm={init:function(){this.setColour(Om),this.appendDummyInput().appendField("MQTT"+Et.Msg.MIXLY_Client).appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_REQUESTS_LEN,"client_len"],[Et.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[Et.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},qm=Em,zm=Rm,Qm=cm,jm=gm,Zm=Sm,$m=225,tO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(Et.Msg.MIXLY_NETWORK_MODE).appendField(new Et.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},eO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[Et.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=Et.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:Et.Msg.MIXLY_NETWORK_WIFI_OPEN,False:Et.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},iO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},nO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:Et.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},sO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(Et.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(Et.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},_O={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_NETWORK_WIFI_CONNECT+Et.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},oO={init:function(){this.setColour($m),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(Et.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(Et.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},pO={init:function(){this.setColour($m),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},aO={init:function(){this.setColour($m),this.appendValueInput("url").appendField(Et.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},uO={init:function(){this.setColour($m),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},rO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[Et.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[Et.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:Et.Msg.MIXLY_ESP32_NETWORK_IP,1:Et.Msg.MIXLY_ESP32_NETWORK_MASK,2:Et.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},lO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},dO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[Et.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},IO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(Et.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(Et.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},TO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},hO={init:function(){this.setColour($m),this.appendValueInput("VAR").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new Et.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},MO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},mO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},OO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},EO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},RO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},cO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},gO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},CO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},SO={init:function(){this.setColour($m),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},AO={init:function(){this.setColour($m),this.appendValueInput("DOMAIN").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS_GET).appendField(new Et.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},LO={init:function(){this.appendValueInput("VAL");var t=[[Et.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[Et.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour($m),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:Et.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:Et.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:Et.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},NO={init:function(){this.appendValueInput("VAR").appendField(Et.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour($m),this.appendDummyInput("").appendField(Et.Msg.blockpy_CONDUCT).appendField(new Et.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(Et.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:Et.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:Et.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},DO={init:function(){this.setColour($m),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(Et.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},fO={init:function(){this.setColour($m),this.appendDummyInput("").appendField(new Et.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},FO="#A58C5B",PO={init:function(){this.setColour(FO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SENOR_IS_PRESSED)}},vO={init:function(){this.setColour(FO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SENOR_WAS_PRESSED)}},YO={init:function(){this.setColour(FO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(Et.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.PROCEDURES_DEFRETURN_RETURN+Et.Msg.MIXLY_BUTTON+Et.Msg.MIXLY_GET_PRESSES)}},XO={init:function(){this.setColour(FO),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_BUTTON).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[Et.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[Et.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},xO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_shake,"shake"],[Et.Msg.MIXLY_UP,"up"],[Et.Msg.MIXLY_DOWN,"down"],[Et.Msg.MIXLY_LEFT,"left"],[Et.Msg.MIXLY_RIGHT,"right"],[Et.Msg.MIXLY_MICROBIT_face_up,"face up"],[Et.Msg.MIXLY_MICROBIT_face_down,"face down"],[Et.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=Et.Msg.MIXLY_MICROBIT_JS_CURRENT,n=Et.Msg.MSG.catSensor,s=Et.Msg.MIXLY_MICROBIT_JS_STATE,_=Et.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:Et.Msg.MIXLY_MICROBIT_shake,up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT,"face up":Et.Msg.MIXLY_MICROBIT_face_up,"face down":Et.Msg.MIXLY_MICROBIT_face_down,freefall:Et.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+_}))}},yO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},VO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},bO={init:function(){var t=[[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(FO),this.appendValueInput("PIN",Number).appendField(new Et.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new Et.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:Et.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},BO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},GO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},UO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"left"],[Et.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(Et.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=Et.Msg.MIXLY_ESP32_NEAR;return i+{left:Et.Msg.TEXT_TRIM_LEFT,right:Et.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},wO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[Et.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":Et.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":Et.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},kO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[Et.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},HO={init:function(){this.setColour(FO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},WO={init:function(){this.setColour(FO),this.appendDummyInput("").appendField("LM35"+Et.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_TOOLTIP_LM35)}},KO={init:function(){this.setColour(FO),this.appendValueInput("I2CSUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},JO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[Et.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[Et.Msg.MIXLY_ESP32_MAX30102_IR+","+Et.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},qO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[Et.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[Et.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},zO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},QO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.HTML_COLOUR+Et.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET+Et.Msg.HTML_COLOUR,"[2]"],[Et.Msg.MIXLY_GET+Et.Msg.MIXLY_IR_STRENGTH,"[1]"],[Et.Msg.MIXLY_GET+Et.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},jO={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GET_ENV_LIGHT,"E"],[Et.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},$O={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},tE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},eE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_Altitude+Et.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETPRESSURE,"pressure()"],[Et.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[Et.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},iE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MIXGOPE_FIELD+Et.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[Et.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},nE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_shake,"shake"],[Et.Msg.MIXLY_UP,"up"],[Et.Msg.MIXLY_DOWN,"down"],[Et.Msg.MIXLY_LEFT,"left"],[Et.Msg.MIXLY_RIGHT,"right"],[Et.Msg.MIXLY_MICROBIT_face_up,"face up"],[Et.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=Et.Msg.MIXLY_MICROBIT_JS_CURRENT,n=Et.Msg.MSG.catSensor,s=Et.Msg.MIXLY_MICROBIT_JS_STATE,_=Et.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:Et.Msg.MIXLY_MICROBIT_shake,up:Et.Msg.MIXLY_UP,down:Et.Msg.MIXLY_DOWN,left:Et.Msg.MIXLY_LEFT,right:Et.Msg.MIXLY_RIGHT,"face up":Et.Msg.MIXLY_MICROBIT_face_up,"face down":Et.Msg.MIXLY_MICROBIT_face_down}[e]+_}))}},sE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},_E={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_GET+Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},oE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+Et.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new Et.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=Et.Msg.MIXLY_MICROBIT_Direction,s=Et.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":Et.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},pE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},aE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_GETTEMPERATUE)}},uE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return Et.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:Et.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:Et.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},rE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},lE={init:function(){this.setColour(FO),this.appendValueInput("SPISUB").appendField(Et.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(Et.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP+Et.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new Et.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},dE={init:function(){this.setColour(FO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[Et.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},IE={init:function(){this.setColour(FO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},TE={init:function(){this.setColour(FO),this.appendDummyInput().appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},hE={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ME={init:function(){this.setColour(FO),this.appendDummyInput().appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(Et.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},mE={init:function(){this.setColour(FO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_SCAN_OK,"0"],[Et.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[Et.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},OE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_JS_GET).appendField(new Et.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},EE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},RE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},cE={init:function(){this.setColour(FO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new Et.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&_)):(2048<=_&&_<=55295||57344<=_&&_<=65535)&&(n+=3,i.push(224|15&_>>12),i.push(128|63&_>>6),i.push(128|63&_))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==o?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+_+",font_address="+p+")\n"):"16x8 Matrix"==o&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+_+")\n"),i},sN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},_N=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},oN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},pN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},aN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},uN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},rN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},lN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},dN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},IN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},TN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},hN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},MN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},mN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ON=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},EN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},RN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},cN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},gN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"width",e.ORDER_ATOMIC),o=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+_+", "+o+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+_+", "+o+","+a+")\n"}},CN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+_+", 1)\n"},SN=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},AN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},LN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},NN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},DN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),_=e.valueToCode(this,"r",e.ORDER_ATOMIC),o="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(o){case"True":return i+".show_fill_circle("+n+", "+s+", "+_+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+_+", "+p+")\n"}},fN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),_=e.valueToCode(this,"x1",e.ORDER_ATOMIC),o=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+_+", "+o+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+_+", "+o+", "+p+", "+a+", "+r+")\n"}},FN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},PN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},vN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),_=this.getFieldValue("key");return"TM1650"==_?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+_+"("+s+")\n"):"TM1637"==_&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+_+"("+s+")\n"),i},YN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},XN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},xN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},yN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},VN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+_+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+o+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},bN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+_+",size = "+o+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+_+",size = "+o+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},BN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},GN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},UN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+_+",color="+o+")\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+_+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},wN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},kN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},HN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),_=e.valueToCode(this,"x2",e.ORDER_ATOMIC),o=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+_+", "+o+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+_+", "+o+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},WN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),_=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+_+")\n"},KN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},JN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},qN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},zN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},QN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),_=Rt.Boards.getSelectedBoardKey().split(":")[2],o="";return o=["mpython","mixgo_pe","mixgo_nova"].indexOf(_)>=0?"0x700000":["mixgo_zero"].indexOf(_)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+o+")\n"},jN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ZN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},$N=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},tD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},eD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},iD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},nD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},sD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},_D=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},oD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},pD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},aD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},uD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"w",e.ORDER_ATOMIC),o=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+_+", "+o+", "+p+")\n"+i+".show()\n"},rD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"length",e.ORDER_ATOMIC),o=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+_+", "+o+")\n"+i+".show()\n"},lD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},dD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ID=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),_=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+_+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+_+")\n")},TD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},hD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},MD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},mD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},OD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},ED=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},RD=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let _="",o=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),o+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);_+=n(o.toString(16)),s.unshift(_)}let _=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},ZD=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+_+",size = "+o+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},$D=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},tf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+_+",color="+o+")\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+_+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},ef=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},nf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+_+",speed ="+o+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},sf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"w",e.ORDER_ATOMIC),o=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+_+", "+o+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+_+", "+o+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},_f=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"length",e.ORDER_ATOMIC),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==o.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+_+", "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},of=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),_=e.valueToCode(t,"x2",e.ORDER_ATOMIC),o=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+_+", "+o+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+_+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},pf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},af=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},uf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},rf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var o="onboard_tft.pixel(int("+n+"), int("+s+"), "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return o},lf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},df=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},If=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},Tf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=o+"=Clock("+n+","+s+","+_+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=o+"=Clock("+n+","+s+","+_+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},hf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},Mf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},mf=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},Of=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var _=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_=n+".clear(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\n"}return _},Ef=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),_=e.valueToCode(t,"r",e.ORDER_ATOMIC),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==o.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+_+", "+_+", "+o+","+p+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+_+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},Rf=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},cf=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},gf=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},TX=function(){return"control.reset()\n"},hX=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+")\n"},MX=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+")\n"},mX=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Rt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},OX=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},EX=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},RX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},cX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},gX=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},CX=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},SX=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},AX=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},LX=function(){return"while True:\n pass\n"},NX=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},DX=function(t,e){return e.definitions_.import_os="import os","os.uname()"},fX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},FX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},PX=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},vX=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},YX=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},XX=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},xX=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},yX=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},VX=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},bX=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},BX=XX,GX=vX,UX=YX,wX=fX,kX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},HX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},WX=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},KX={};KX["MixGo MINI"]={description:"MicroPython[ESP32C3 MixGo MINI]",digital_pin:Rt.Profile.generate(["0-10","18"]),input_pin:Rt.Profile.generate(["0-10","18"]),output_pin:Rt.Profile.generate(["0-10","18"]),pwm_input:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_input:Rt.Profile.generate(["0-4"],"adc","adc"),pwm_output:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_output:Rt.Profile.generate(["0-4"],"adc","adc"),espnow_channel:Rt.Profile.generate(["1-13"]),haskylens_model:Rt.Profile.generate(["0-4"]),digital:Rt.Profile.generate(["0-10","18"],"pin","pin"),pwm_pin:Rt.Profile.generate(["0-10","18"]),pwm:Rt.Profile.generate(["0-10","18"],"pwm","pwm"),analog_pin:Rt.Profile.generate(["0-4"]),analog:Rt.Profile.generate(["0-4"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Rt.Profile.generate(["0-4"]),exlcdh:Rt.Profile.generate(["0-11"]),exlcdv:Rt.Profile.generate(["0-7"]),brightness:Rt.Profile.generate(["0-9"]),tts_voice:Rt.Profile.generate(["0-16"]),tts_builtin_music:Rt.Profile.generate(["0-47"]),tts_bgmusic:Rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["ANGRY","onboard_matrix.ANGRY"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["DOOR_OPEN","onboard_matrix.DOOR_OPEN"],["DOOR_OPENING","onboard_matrix.DOOR_OPENING"],["DOOR_CLOSE","onboard_matrix.DOOR_CLOSE"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["BIRTHDAY","onboard_music.BIRTHDAY"],["BA_DING","onboard_music.BA_DING"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},KX["ESP32C2 Generic(2M)"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Rt.Profile.generate(["0-11","18-21"]),input_pin:Rt.Profile.generate(["0-11","18-21"]),output_pin:Rt.Profile.generate(["0-11","18-21"]),pwm_input:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Rt.Profile.generate(["0-5"],"adc","adc"),pwm_output:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Rt.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Rt.Profile.generate(["1-13"]),haskylens_model:Rt.Profile.generate(["0-4"]),digital:Rt.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Rt.Profile.generate(["0-11","18-21"]),pwm:Rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Rt.Profile.generate(["0-5"]),analog:Rt.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Rt.Profile.generate(["0-4"]),exlcdh:Rt.Profile.generate(["0-31"]),exlcdv:Rt.Profile.generate(["0-11"]),brightness:Rt.Profile.generate(["0-9"]),tts_voice:Rt.Profile.generate(["0-16"]),tts_builtin_music:Rt.Profile.generate(["0-47"]),tts_bgmusic:Rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const JX=KX,qX=20,zX={init:function(){this.setColour(qX),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_HIGH,"HIGH"],[Et.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},QX={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(Et.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},jX={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},ZX={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},$X={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField("DAC"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},tx={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_mSecond,"period"],[Et.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},ex={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(Et.Msg.MIXLY_FREQUENCY+Et.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},ix={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},nx={init:function(){this.setColour(qX),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_REF_VOLTAGE+Et.Msg.MIXLY_STAT).appendField(new Et.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},sx={init:function(){this.setColour(qX),this.appendValueInput("pin").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(Et.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(Et.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},_x={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MODE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[Et.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[Et.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},ox={init:function(){this.setColour(20),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROPYTHON_AS).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[Et.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[Et.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[Et.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},px={init:function(){this.setColour(qX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("pwm#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+Et.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},ax={init:function(){this.setColour(qX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("dac#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+Et.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},ux={init:function(){this.setColour(qX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("adc#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(Et.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},rx={init:function(){this.setColour(qX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP).appendField(new Et.FieldTextInput("tc#"),"PIN_OBJ").appendField(Et.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(Et.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(Et.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){Et.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},lx=ox,dx=ex,Ix=rx,Tx=sx,hx=_x,Mx=40,mx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput("").appendField(t).appendField(Et.Msg.MIXLY_TEM_HUM+" AHT21").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETTEMPERATUE,"temperature"],[Et.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("key");return{temperature:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:Et.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},Ox={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput("").appendField(t).appendField(Et.Msg.MIXLY_Altitude+Et.Msg.MSG.catSensor+" HP203X").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_GETPRESSURE,"pressure()"],[Et.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[Et.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ex={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},Rx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendDummyInput("").appendField(Et.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},cx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField("RFID"+Et.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,Number),this.setInputsInline(!0)}},gx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Cx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField(Et.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(Et.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(Et.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(Et.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0)}},Sx={init:function(){if("mixgo_me"==Rt.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(Mx),this.appendDummyInput().appendField(t).appendField("RFID"),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_RFID_SCAN_OK,"True"],[Et.Msg.MIXLY_RFID_SCAN_NOTAGERR,"None"],[Et.Msg.MIXLY_RFID_SCAN_ERROR,"False"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ax=100,Lx={init:function(){this.setColour(Ax),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_GREEN+Et.Msg.MIXLY_EXTERN_LED,"GLED[2]"],[Et.Msg.MIXGO_LEFT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[0]"],[Et.Msg.MIXGO_RIGHT_FRONT+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[1]"],[Et.Msg.MIXGO_LEFT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[3]"],[Et.Msg.MIXGO_RIGHT_BACK+Et.Msg.COLOUR_RGB_RED+Et.Msg.MIXLY_EXTERN_LED,"RLED[2]"],[Et.Msg.ME_GO_LIGHT_HEADLIGHT,"WLED"]]),"op"),this.setOutput(!0)}},Nx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_SETONOFF)}},Dx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},fx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(Et.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_ESP32_LED_GETONOFF)}},Fx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(Et.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(Et.Msg.MIXLY_SETTING+Et.Msg.MIXLY_BUILDIN_LED+Et.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Px={init:function(){this.setColour(Ax),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.blockpy_forward,"F"],[Et.Msg.blockpy_backward,"B"],[Et.Msg.blockpy_left,"L"],[Et.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField("ME GO").appendField(new Et.FieldDropdown([[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField("ME GO").appendField(Et.Msg.MOTOR_DC).appendField(new Et.FieldDropdown([[Et.Msg.MIXLYCAR_WHEEL_LEFT,"0"],[Et.Msg.MIXLYCAR_WHEEL_RIGHT,"1"],[Et.Msg.ME_GO_MOTOR_EXTERN,"2"]]),"wheel"),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_Direction).appendField(new Et.FieldDropdown([[Et.Msg.ROTATION_FORWARD,"CW"],[Et.Msg.ROTATION_BACKWARD,"CCW"],[Et.Msg.MOTOR_P,"P"],[Et.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(Et.inputs.Align.RIGHT).appendField(Et.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xx={init:function(){this.setColour(Ax),this.appendDummyInput("").appendField(Et.Msg.MIXLY_ESP32_INTERRUPT).appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendValueInput("DO").appendField(Et.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},xx={init:function(){this.setColour(Ax),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_SETUP),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["turns,distance","all"]]),"args"),this.appendValueInput("num").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},yx={init:function(){this.setColour(Ax),this.appendDummyInput("").appendField(Et.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"A"],[Et.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("").appendField(new Et.FieldDropdown([["turns","turns"],["distance","distance"],["speed","speed"]]),"args"),this.setOutput(!0),this.setInputsInline(!0)}},Vx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},bx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.MIXGO_LEFT_FRONT,"[0]"],[Et.Msg.MIXGO_RIGHT_FRONT,"[1]"],[Et.Msg.MIXGO_LEFT_BACK,"[3]"],[Et.Msg.MIXGO_RIGHT_BACK,"[2]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ESP32_NEAR}))}},Bx={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new Et.FieldDropdown([[Et.Msg.MIXLY_ME_GO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[Et.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[Et.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"],[Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_ONLY,"LS"],[Et.Msg.ME_GO_SENSOR_MODE_OFF,"CL"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gx={init:function(){this.setColour(Ax),this.appendDummyInput("").appendField(Et.Msg.MIXLY_GET_GESTURE).appendField(new Et.FieldDropdown([[Et.Msg.ME_GO_PITCH,"[0]"],[Et.Msg.ME_GO_ROLL,"[1]"],[Et.Msg.ME_GO_PITCH+", "+Et.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ux={init:function(){this.setColour(Ax),this.appendDummyInput().appendField(Et.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new Et.FieldDropdown([[Et.Msg.TEXT_TRIM_LEFT,"[0]"],[Et.Msg.MIXGO_LEFT_MID,"[1]"],[Et.Msg.MIXGO_RIGHT_MID,"[2]"],[Et.Msg.TEXT_TRIM_RIGHT,"[3]"],[Et.Msg.MIXLY_ALL,""]]),"key").appendField(Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return Et.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+Et.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR}))}},wx=230,kx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital),"PIN"),this.setOutput(!0)}},Hx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},Wx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},Kx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},Jx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},qx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},zx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},Qx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},jx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},Zx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},$x={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},ty={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},ey={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},iy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},ny={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},sy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},_y={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog),"PIN"),this.setOutput(!0)}},oy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},py={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.dac),"PIN"),this.setOutput(!0)}},ay={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},uy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},ry={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},ly={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},dy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},Iy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},Ty={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.touch),"PIN"),this.setOutput(!0)}},hy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},My={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},my={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},Oy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},Ey={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},Ry={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},cy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},gy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},Cy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},Sy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},Ay={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},Ly={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},Ny={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},Dy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},fy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},Fy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Py={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},vy={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new Et.FieldDropdown(Rt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},Yy=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},Xy=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},xy=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},yy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Vy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},by=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},By=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Gy=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Uy=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},wy=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},ky=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},Hy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},Wy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},Ky=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},Jy=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},qy=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,Et.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},zy=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mini_g2="import mini_g2",["mini_g2.ext_ahtx0."+i+"()",e.ORDER_ATOMIC]},Qy=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mini_g2="import mini_g2",["mini_g2.ext_hp203x."+i,e.ORDER_ATOMIC]},jy=function(t,e){e.definitions_.import_mini_g2="import mini_g2";return["mini_g2.varistor()",e.ORDER_ATOMIC]},Zy=function(t,e){if(e.definitions_.import_mini_g2="import mini_g2","mixgo_mini"==Rt.Boards.getSelectedBoardKey().split(":")[2]){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var i='ext_rfid.read_card(0, x="id")'}else{e.definitions_.import_mini_g2="import mini_g2";i='mini_g2.ext_rc522.read_card(0, x="id")'}return[i,e.ORDER_ATOMIC]},$y=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var s="ext_rfid.read_card("+n+")"}else{e.definitions_.import_mini_g2="import mini_g2";s="mini_g2.ext_rc522.read_card("+n+")"}return[s,e.ORDER_ATOMIC]},tV=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var _="ext_rfid.write_card("+s+","+n+")\n"}else{e.definitions_.import_mini_g2="import mini_g2";_="mini_g2.ext_rc522.write_card("+s+","+n+")\n"}return _},eV=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var _="ext_rfid.write_card("+s+","+n+")"}else{e.definitions_.import_mini_g2="import mini_g2";_="mini_g2.ext_rc522.write_card("+s+","+n+")"}return[_,e.ORDER_ATOMIC]},iV=function(t,e){var i=Rt.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key");if("mixgo_mini"==i){e.definitions_.import_mini_g2_ext_rfid="from mini_g2 import ext_rfid";var s="ext_rfid.scan_card()=="+n}else{e.definitions_.import_mini_g2="import mini_g2";s="mini_g2.ext_rc522.scan_card()=="+n}return[s,e.ORDER_ATOMIC]},nV=function(t,e){return e.definitions_.import_me_go_car="from me_go import car",["car."+this.getFieldValue("op"),e.ORDER_ATOMIC]},sV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car","car.setonoff("+i+","+e.valueToCode(this,"bright",e.ORDER_ATOMIC)+")\n"},_V=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car",["car.getrightness("+i+")",e.ORDER_ATOMIC]},oV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car",["car.getonoff("+i+")",e.ORDER_ATOMIC]},pV=function(t,e){var i=e.valueToCode(this,"led",e.ORDER_ATOMIC);return e.definitions_.import_me_go_car="from me_go import car","car.setbrightness("+i+","+e.valueToCode(this,"bright",e.ORDER_ATOMIC)+")\n"},aV=function(t,e){var i=this.getFieldValue("VAR");return e.definitions_.import_me_go_car="from me_go import car",'car.move("'+i+'",'+e.valueToCode(this,"speed",e.ORDER_ASSIGNMENT)+")\n"},uV=function(t,e){var i=this.getFieldValue("VAR");return e.definitions_.import_me_go_car="from me_go import car",'car.move("'+i+'")\n'},rV=function(t,e){var i=this.getFieldValue("wheel");e.definitions_.import_me_go_car="from me_go import car";var n=this.getFieldValue("direction");return 0==i&&("CW"==n?n="CCW":"CCW"==n&&(n="CW")),"car.motor(car.MOTO["+i+'],"'+n+'",'+e.valueToCode(this,"speed",e.ORDER_ATOMIC)+")\n"},lV=function(t,e){var i=this.getFieldValue("mode");return e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i,"hall_"+i+".irq_cb("+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+")\n"},dV=function(t,e){var i=this.getFieldValue("mode"),n=this.getFieldValue("args");e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i;var s=e.valueToCode(this,"num",e.ORDER_ATOMIC);return"all"==n?"hall_"+i+".initial(turns="+s+",distance="+s+")\n":"hall_"+i+".initial("+n+"="+s+")\n"},IV=function(t,e){var i=this.getFieldValue("mode"),n=this.getFieldValue("args");return e.definitions_["import_me_go_hall_"+i]="from me_go import hall_"+i,["hall_"+i+"."+n,e.ORDER_ATOMIC]},TV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.patrol()"+i,e.ORDER_ATOMIC]},hV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.obstacle()"+i,e.ORDER_ATOMIC]},MV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car","car.ir_mode(car."+i+")\n"},mV=function(t,e){return e.definitions_.import_mixgo_me_onboard_mxc6655xa="from mixgo_me import onboard_mxc6655xa",["onboard_mxc6655xa.eulerangles(upright=True)"+this.getFieldValue("angle"),e.ORDER_ATOMIC]},OV=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_go_hall="from me_go import car",["car.light()"+i,e.ORDER_ATOMIC]},EV=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},RV=EV,cV=EV,gV=EV,CV=EV,SV=EV,AV=EV,LV=EV,NV=EV,DV=EV,fV=EV,FV=EV,PV=EV,vV=EV,YV=EV,XV=EV,xV=EV,yV=EV,VV=EV,bV=EV,BV=EV,GV=EV,UV=EV,wV=EV,kV=EV,HV=EV,WV=EV,KV=EV,JV=EV,qV=EV,zV=EV,QV=EV,jV=EV,ZV=EV,$V=EV,tb=EV,eb=EV,ib=EV,nb=EV,sb=EV,_b=EV,ob=EV,pb=EV,ab=EV,ub=EV;Object.assign(Et.Variables,gt),Object.assign(Et.Procedures,qn),Et.Python=ru,Et.generator=ru,Rt.Profile.default={},Object.assign(Rt.Profile,JX),Object.assign(Rt.Profile.default,JX["MixGo CC"]),Object.assign(Et.Blocks,e,i,n,s,_,o,p,a,u,r,l,d,I,b,H,k,X,B,W,f,w,U,G,F,D,N,y,x,V,P,v,Y,lt,dt,It,Tt),Object.assign(Et.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,nt,ut,at,$,st,rt,q,pt,ot,_t,z,J,K,et,tt,it,Q,j,Z,ht,Mt,mt,Ot)})(); \ No newline at end of file diff --git a/boards/default/micropython_esp32c2/styles/main.9e9dd457.css b/boards/default/micropython_esp32c2/styles/main.b73cc364.css similarity index 100% rename from boards/default/micropython_esp32c2/styles/main.9e9dd457.css rename to boards/default/micropython_esp32c2/styles/main.b73cc364.css diff --git a/boards/default/micropython_esp32c3/index.xml b/boards/default/micropython_esp32c3/index.xml index cddf211a..c32c896a 100644 --- a/boards/default/micropython_esp32c3/index.xml +++ b/boards/default/micropython_esp32c3/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_func1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,018029100100100440440100004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistance00Mixly0Mixlywifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"sound"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSVa3S0UKHIy9dDArs北京SVa3S0UKHIy9dDArs北京1SVa3S0UKHIy9dDArs北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi2000004512spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr0121ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensor100midi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_func1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,018029100100100440440100004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistance00Mixly0Mixlywifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"sound"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSVa3S0UKHIy9dDArs北京SVa3S0UKHIy9dDArs北京1SVa3S0UKHIy9dDArs北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi2000004512spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr0121ws_wrws_wrws_wr360002zsensorzsensorzsensorzsensor100midi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi1000000450spi78tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file diff --git a/boards/default/micropython_esp32c3/main.bundle.js b/boards/default/micropython_esp32c3/main.bundle.js index 69d68327..acf16eab 100644 --- a/boards/default/micropython_esp32c3/main.bundle.js +++ b/boards/default/micropython_esp32c3/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Dt,controls_typeLists:()=>ft,variables_change:()=>Lt,variables_get:()=>St,variables_global:()=>Nt,variables_set:()=>At});var i={};t.r(i),t.d(i,{base_setup:()=>vt,controls_delay:()=>Yt,controls_end_program:()=>xt,controls_except:()=>Jt,controls_finally:()=>Qt,controls_flow_statements:()=>Gt,controls_for:()=>Ut,controls_forEach:()=>yt,controls_for_range:()=>wt,controls_if:()=>Xt,controls_if_else:()=>Wt,controls_if_elseif:()=>Ht,controls_if_if:()=>kt,controls_lambda:()=>zt,controls_main:()=>Pt,controls_pass:()=>jt,controls_range:()=>bt,controls_repeat_ext:()=>qt,controls_thread:()=>Zt,controls_try:()=>Kt,controls_try_finally:()=>Bt,controls_whileUntil:()=>Vt,do_while:()=>$t,garbage_collection:()=>te,get_mem_alloc:()=>ee,get_mem_free:()=>ie,get_unique_identifier:()=>ne});var n={};t.r(n),t.d(n,{base_map:()=>Se,math_arithmetic:()=>pe,math_bit:()=>re,math_constant:()=>_e,math_constant_mp:()=>ae,math_constrain:()=>me,math_dec:()=>de,math_indexer_number:()=>Ee,math_map:()=>Oe,math_max_min:()=>Te,math_number:()=>oe,math_number_base_conversion:()=>he,math_random:()=>Me,math_random_seed:()=>Re,math_round:()=>ce,math_selfcalcu:()=>ue,math_to_int:()=>Ie,math_trig:()=>le,text_to_number:()=>ge,text_to_number_skulpt:()=>Ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>Fe,char_to_ascii:()=>Pe,number_to_text:()=>ve,os_system:()=>ni,text:()=>Le,text_capital:()=>Ue,text_center:()=>we,text_char:()=>De,text_char_at:()=>Xe,text_char_at2:()=>xe,text_char_at3:()=>$e,text_compareTo:()=>Ze,text_compare_to:()=>Ge,text_create_with_container:()=>qe,text_create_with_item:()=>ze,text_encode:()=>ei,text_equals_starts_ends:()=>Be,text_eval:()=>ii,text_find:()=>ke,text_format:()=>Qe,text_format_noreturn:()=>ti,text_join:()=>fe,text_join_seq:()=>He,text_length:()=>Ye,text_random_char:()=>be,text_replace:()=>We,text_split:()=>Ke,text_strip:()=>Je,text_substring:()=>Ve,text_substring2:()=>ye,text_substring3:()=>je,text_textarea:()=>Ne});var o={};t.r(o),t.d(o,{list_many_input:()=>Li,list_tolist:()=>Yi,list_tolist2:()=>Ui,list_trig:()=>Ci,lists_2d_get_col_row_data:()=>pi,lists_2d_get_data_with_col_row:()=>ai,lists_append_extend:()=>Ti,lists_change_to:()=>Ai,lists_change_to_general:()=>Di,lists_clear:()=>Ei,lists_create_with:()=>ui,lists_create_with2:()=>xi,lists_create_with_container:()=>li,lists_create_with_item:()=>di,lists_create_with_noreturn:()=>Ni,lists_create_with_text:()=>ri,lists_create_with_text2:()=>Xi,lists_del_general:()=>fi,lists_find:()=>gi,lists_getIndex3:()=>bi,lists_getSublist3:()=>yi,lists_get_index:()=>oi,lists_get_random_item:()=>hi,lists_get_random_sublist:()=>Mi,lists_get_sublist:()=>_i,lists_insert_value:()=>mi,lists_insert_value2:()=>Bi,lists_pop:()=>ci,lists_remove_at:()=>Ri,lists_remove_at2:()=>Gi,lists_reverse:()=>Oi,lists_setIndex3:()=>Vi,lists_set_index:()=>Ii,lists_sort:()=>Si,lists_zip:()=>Fi,lists_zip_container:()=>Pi,lists_zip_item:()=>vi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>sn,dicts_add_or_change:()=>qi,dicts_clear:()=>Zi,dicts_create_with:()=>ki,dicts_create_with_container:()=>Hi,dicts_create_with_item:()=>Wi,dicts_create_with_noreturn:()=>an,dicts_deldict:()=>nn,dicts_delete:()=>zi,dicts_get:()=>Ji,dicts_get_default:()=>Qi,dicts_items:()=>$i,dicts_keys:()=>Ki,dicts_length:()=>en,dicts_pop:()=>on,dicts_setdefault:()=>_n,dicts_to_json:()=>un,dicts_todict:()=>pn,dicts_update:()=>ji,dicts_values:()=>tn,json_to_dicts:()=>rn});var a={};t.r(a),t.d(a,{logic_boolean:()=>Mn,logic_compare:()=>dn,logic_compare_continous:()=>In,logic_is:()=>Rn,logic_is_in:()=>En,logic_negate:()=>hn,logic_null:()=>mn,logic_operation:()=>Tn,logic_tobool:()=>cn,logic_true_or_false:()=>On});var p={};t.r(p),t.d(p,{sdcard_mount:()=>Hn,sdcard_use_spi_init:()=>kn,storage_can_write_ornot:()=>Fn,storage_change_dir:()=>Un,storage_close_file:()=>vn,storage_delete_file:()=>xn,storage_file_seek:()=>yn,storage_file_tell:()=>bn,storage_file_write:()=>Ln,storage_fileopen:()=>Cn,storage_fileopen_new:()=>Sn,storage_fileopen_new_encoding:()=>An,storage_get_a_line:()=>fn,storage_get_contents:()=>Dn,storage_get_contents_without_para:()=>Nn,storage_get_current_dir:()=>Vn,storage_get_file_size:()=>Xn,storage_get_filename:()=>Pn,storage_is_file:()=>wn,storage_list_all_files:()=>Yn,storage_make_dir:()=>Bn,storage_open_file_with_os:()=>gn,storage_rename:()=>Gn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>jn,procedures_callreturn:()=>Zn,procedures_defnoreturn:()=>Jn,procedures_defreturn:()=>Qn,procedures_ifreturn:()=>$n,procedures_mutatorarg:()=>zn,procedures_mutatorcontainer:()=>qn,procedures_return:()=>ts});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ds,tuple_create_with:()=>is,tuple_create_with_container:()=>ns,tuple_create_with_item:()=>ss,tuple_create_with_noreturn:()=>Ms,tuple_create_with_text2:()=>os,tuple_create_with_text_return:()=>_s,tuple_del:()=>us,tuple_find:()=>Is,tuple_getIndex:()=>as,tuple_getSublist:()=>hs,tuple_get_random_item:()=>Os,tuple_get_sublist:()=>ms,tuple_join:()=>rs,tuple_length:()=>ps,tuple_max:()=>ls,tuple_totuple:()=>Es,tuple_trig:()=>Ts});var l={};t.r(l),t.d(l,{set_add_discard:()=>fs,set_clear:()=>Ls,set_create_with:()=>cs,set_create_with_container:()=>gs,set_create_with_item:()=>Cs,set_create_with_text_return:()=>vs,set_length:()=>Ss,set_operate:()=>Ns,set_operate_update:()=>Ds,set_pop:()=>As,set_sub:()=>Fs,set_toset:()=>Ys,set_update:()=>Ps});var d={};t.r(d),t.d(d,{html_content:()=>Vs,html_content_more:()=>Bs,html_document:()=>Xs,html_form:()=>Us,html_head_body:()=>ys,html_style:()=>Gs,html_style_color:()=>ks,html_style_content:()=>ws,html_text:()=>Hs,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>so,function_call:()=>eo,function_call_container:()=>io,function_call_item:()=>no,raw_block:()=>Js,raw_empty:()=>qs,raw_expression:()=>Qs,raw_table:()=>Ks,text_comment:()=>zs,text_print_multiple:()=>Zs,text_print_multiple_container:()=>$s,text_print_multiple_item:()=>to,type_check:()=>js});var T={};t.r(T),t.d(T,{controls_type:()=>uo,controls_typeLists:()=>ro,variables_change:()=>ao,variables_get:()=>oo,variables_global:()=>po,variables_set:()=>_o});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>co,base_setup:()=>Io,controls_delay:()=>Ro,controls_flow_statements:()=>Eo,controls_for:()=>Mo,controls_forEach:()=>Lo,controls_for_range:()=>mo,controls_if:()=>To,controls_interrupts:()=>So,controls_lambda:()=>Do,controls_main:()=>lo,controls_millis:()=>go,controls_nointerrupts:()=>Ao,controls_pass:()=>Fo,controls_range:()=>No,controls_repeat:()=>Vo,controls_repeat_ext:()=>Yo,controls_thread:()=>Po,controls_try_finally:()=>ho,controls_whileUntil:()=>Oo,do_while:()=>vo,garbage_collection:()=>xo,get_mem_alloc:()=>Xo,get_mem_free:()=>bo,get_unique_identifier:()=>yo,reset:()=>Co,time_sleep:()=>fo});var M={};t.r(M),t.d(M,{base_map:()=>o_,math_arithmetic:()=>ko,math_bit:()=>wo,math_constant:()=>Go,math_constant_mp:()=>Uo,math_constrain:()=>Zo,math_dec:()=>Jo,math_indexer_number:()=>e_,math_map:()=>jo,math_max_min:()=>qo,math_number:()=>Bo,math_number_base_conversion:()=>$o,math_random:()=>zo,math_random_seed:()=>t_,math_round:()=>i_,math_selfcalcu:()=>Ho,math_single:()=>Wo,math_to_int:()=>Qo,math_trig:()=>Ko,text_to_number:()=>n_,text_to_number_skulpt:()=>s_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>r_,char_to_ascii:()=>l_,number_to_text:()=>d_,os_system:()=>X_,text:()=>__,text_capital:()=>c_,text_center:()=>g_,text_char:()=>p_,text_char_at:()=>h_,text_char_at2:()=>T_,text_char_at3:()=>v_,text_compareTo:()=>P_,text_compare_to:()=>O_,text_encode:()=>Y_,text_equals_starts_ends:()=>m_,text_eval:()=>x_,text_find:()=>C_,text_format:()=>D_,text_format_noreturn:()=>f_,text_join:()=>u_,text_join_seq:()=>S_,text_length:()=>I_,text_random_char:()=>M_,text_replace:()=>A_,text_split:()=>L_,text_strip:()=>N_,text_substring:()=>R_,text_substring2:()=>E_,text_substring3:()=>F_,text_textarea:()=>a_});var O={};t.r(O),t.d(O,{list_many_input:()=>ea,list_tolist:()=>Ia,list_tolist2:()=>Ta,list_trig:()=>Z_,lists_2d_get_col_row_data:()=>V_,lists_2d_get_data_with_col_row:()=>y_,lists_append_extend:()=>k_,lists_change_to:()=>ta,lists_change_to_general:()=>na,lists_clear:()=>Q_,lists_create_with:()=>B_,lists_create_with2:()=>oa,lists_create_with_noreturn:()=>ia,lists_create_with_text:()=>G_,lists_create_with_text2:()=>_a,lists_del_general:()=>sa,lists_find:()=>q_,lists_getIndex3:()=>aa,lists_getSublist3:()=>pa,lists_get_index:()=>U_,lists_get_random_item:()=>H_,lists_get_random_sublist:()=>W_,lists_get_sublist:()=>b_,lists_insert_value:()=>K_,lists_insert_value2:()=>ra,lists_pop:()=>j_,lists_remove_at:()=>z_,lists_remove_at2:()=>la,lists_reverse:()=>J_,lists_setIndex3:()=>ua,lists_set_index:()=>w_,lists_sort:()=>$_,lists_zip:()=>da});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Na,dicts_add_or_change:()=>Ea,dicts_clear:()=>ga,dicts_create_with:()=>ha,dicts_create_with_noreturn:()=>Fa,dicts_deldict:()=>La,dicts_delete:()=>Ra,dicts_get:()=>ma,dicts_get_default:()=>Oa,dicts_items:()=>Ca,dicts_keys:()=>Ma,dicts_length:()=>Aa,dicts_pop:()=>Da,dicts_setdefault:()=>fa,dicts_to_json:()=>va,dicts_todict:()=>Pa,dicts_update:()=>ca,dicts_values:()=>Sa,json_to_dicts:()=>Ya});var R={};t.r(R),t.d(R,{logic_boolean:()=>Va,logic_compare:()=>xa,logic_compare_continous:()=>Xa,logic_is:()=>wa,logic_is_in:()=>Ua,logic_negate:()=>ya,logic_null:()=>Ba,logic_operation:()=>ba,logic_tobool:()=>ka,logic_true_or_false:()=>Ga});var c={};t.r(c),t.d(c,{sdcard_mount:()=>dp,sdcard_use_spi_init:()=>lp,storage_can_write_ornot:()=>Za,storage_change_dir:()=>_p,storage_close_file:()=>tp,storage_delete_file:()=>ip,storage_file_seek:()=>op,storage_file_tell:()=>sp,storage_file_write:()=>Qa,storage_fileopen:()=>Wa,storage_fileopen_new:()=>Ka,storage_fileopen_new_encoding:()=>Ja,storage_get_a_line:()=>ja,storage_get_contents:()=>za,storage_get_contents_without_para:()=>qa,storage_get_current_dir:()=>ap,storage_get_file_size:()=>np,storage_get_filename:()=>$a,storage_is_file:()=>rp,storage_list_all_files:()=>ep,storage_make_dir:()=>pp,storage_open_file_with_os:()=>Ha,storage_rename:()=>up});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Mp,procedures_callreturn:()=>hp,procedures_defnoreturn:()=>Tp,procedures_defreturn:()=>Ip,procedures_ifreturn:()=>mp,procedures_return:()=>Op});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Np,tuple_create_with:()=>Ep,tuple_create_with_noreturn:()=>Pp,tuple_create_with_text2:()=>Rp,tuple_create_with_text_return:()=>cp,tuple_del:()=>Sp,tuple_find:()=>Dp,tuple_getIndex:()=>gp,tuple_getSublist:()=>Fp,tuple_get_random_item:()=>Yp,tuple_get_sublist:()=>vp,tuple_join:()=>Ap,tuple_length:()=>Cp,tuple_max:()=>Lp,tuple_totuple:()=>xp,tuple_trig:()=>fp});var S={};t.r(S),t.d(S,{set_add_discard:()=>Up,set_clear:()=>Vp,set_create_with:()=>Xp,set_create_with_text_return:()=>Hp,set_length:()=>bp,set_operate:()=>Bp,set_operate_update:()=>Gp,set_pop:()=>yp,set_sub:()=>wp,set_toset:()=>Wp,set_update:()=>kp});var A={};t.r(A),t.d(A,{html_content:()=>qp,html_content_more:()=>zp,html_document:()=>Kp,html_form:()=>Zp,html_head_body:()=>Qp,html_style:()=>jp,html_style_content:()=>$p,html_text:()=>tu,html_title:()=>Jp});var L={};t.r(L),t.d(L,{attribute_access:()=>au,function_call:()=>_u,raw_block:()=>eu,raw_empty:()=>nu,raw_expression:()=>iu,raw_table:()=>su,type_check:()=>ou});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>Eu,actuator_extern_get_led_state:()=>Ru,actuator_extern_led_bright:()=>Ou,actuator_extern_led_brightness:()=>cu,actuator_ms32006_dcmotor:()=>Fu,actuator_ms32006_init:()=>fu,actuator_ms32006_stepper:()=>Pu,actuator_neopixel_init:()=>vu,actuator_neopixel_rgb:()=>Yu,actuator_neopixel_rgb_all:()=>xu,actuator_neopixel_write:()=>Xu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>hu,esp32_music_pitch:()=>lu,esp32_music_pitch_init:()=>ru,esp32_music_pitch_with_time:()=>du,esp32_music_play_list:()=>Iu,esp32_music_reset_extern:()=>Mu,esp32_music_set_tempo_extern:()=>Tu,esp32_music_stop:()=>mu,mixbot_actuator_extern_get_addr:()=>tr,mixbot_actuator_extern_set_addr:()=>er,mixbot_addr_extern:()=>Uu,robot_led_extern:()=>Wu,robot_led_extern_get_value:()=>Ku,robot_motor_extern:()=>wu,robot_motor_extern_get_speed:()=>ku,robot_servo_extern_absolute_run:()=>zu,robot_servo_extern_get_status:()=>Ju,robot_servo_extern_relative_continue:()=>$u,robot_servo_extern_relative_origin:()=>ju,robot_servo_extern_relative_run:()=>Zu,robot_servo_extern_stop:()=>qu,robot_servo_extern_stop_mode:()=>Qu,robot_traffic_light_extern:()=>Hu,servo_get_angle:()=>Nu,servo_get_speed:()=>Du,servo_init:()=>gu,servo_move:()=>Cu,servo_set_angle:()=>Au,servo_set_speed:()=>Lu,servo_speed_360:()=>Su,syn6288_builtin_voice:()=>Bu,syn6288_get_voice:()=>Vu,syn6288_set_voice:()=>yu,syn6288_tts_play:()=>Gu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Yr,actuator_dc_motor_stop:()=>xr,actuator_get_led_bright:()=>_r,actuator_get_led_state:()=>ar,actuator_led_bright:()=>or,actuator_led_brightness:()=>pr,actuator_mixbot_buzzer_on_off:()=>Br,actuator_mixgo_nova_mic_get:()=>Hr,actuator_mixgo_nova_mic_set:()=>kr,actuator_mixgo_nova_onboard_music_pitch:()=>zr,actuator_mixgo_nova_onboard_music_stop:()=>jr,actuator_mixgo_nova_play_audio:()=>Qr,actuator_mixgo_nova_play_online_audio:()=>qr,actuator_mixgo_nova_record_audio:()=>Jr,actuator_mixgo_nova_voice_get:()=>Kr,actuator_mixgo_nova_voice_set:()=>Wr,actuator_mixgo_zero_led_color:()=>ur,actuator_onboard_neopixel_rgb:()=>hr,actuator_onboard_neopixel_rgb_all:()=>Mr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Or,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>mr,actuator_onboard_neopixel_write:()=>Er,actuator_rm_onboard_neopixel_rgb:()=>Rr,actuator_rm_onboard_neopixel_rgb_all:()=>cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>gr,actuator_stepper_keep:()=>Pr,actuator_stepper_stop:()=>vr,analog_keyboard_input:()=>el,analog_keyboard_str:()=>_l,analog_mouse_input:()=>sl,bitbot_motor:()=>wr,bitbot_move:()=>Gr,bitbot_stop:()=>Ur,cc_number:()=>Tr,esp32_music_get_tempo:()=>Sr,esp32_music_reset:()=>Ar,esp32_music_set_tempo:()=>Cr,esp32_onboard_music_pitch:()=>Lr,esp32_onboard_music_pitch_with_time:()=>Nr,esp32_onboard_music_play_list:()=>fr,esp32_onboard_music_stop:()=>Dr,general_key:()=>nl,get_power_output:()=>$r,ledswitch:()=>sr,mixbot_motor:()=>Vr,mixbot_motor_status:()=>Xr,mixbot_move:()=>br,mixbot_stop:()=>yr,mouse_key:()=>ol,number:()=>nr,rm_actuator_get_led_bright:()=>lr,rm_actuator_get_led_state:()=>dr,rm_actuator_led_bright:()=>rr,rm_actuator_led_brightness:()=>Ir,rm_motor:()=>Fr,set_all_power_output:()=>tl,set_power_output:()=>Zr,special_key:()=>il});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>Gl,ai_sensor_ailocal_class:()=>fl,ai_sensor_ailocal_class_result:()=>Fl,ai_sensor_ailocal_train:()=>Dl,ai_sensor_asr_recognize:()=>Xl,ai_sensor_audio_play:()=>vl,ai_sensor_audio_record:()=>Pl,ai_sensor_barcode:()=>Tl,ai_sensor_circle:()=>Rl,ai_sensor_classifier_faces:()=>Bl,ai_sensor_color:()=>Sl,ai_sensor_color_chases:()=>Nl,ai_sensor_color_chases_result:()=>Ll,ai_sensor_config:()=>dl,ai_sensor_face:()=>Vl,ai_sensor_find_20objects:()=>Ul,ai_sensor_find_barcodes:()=>hl,ai_sensor_find_circles:()=>cl,ai_sensor_find_colors:()=>Al,ai_sensor_find_licenseplates:()=>yl,ai_sensor_find_lines:()=>El,ai_sensor_find_qrcodes:()=>ll,ai_sensor_find_rects:()=>Cl,ai_sensor_find_tags:()=>ml,ai_sensor_licenseplate:()=>bl,ai_sensor_line:()=>Ol,ai_sensor_qrcode:()=>ul,ai_sensor_qrcode_lite:()=>rl,ai_sensor_rect:()=>gl,ai_sensor_rgb:()=>Il,ai_sensor_tag:()=>Ml,ai_sensor_use_uart_init:()=>pl,ai_sensor_yolo_recognize:()=>Yl,ai_sensor_yolo_recognize_result:()=>xl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Hl,MICROPYTHON_AI_Speech_unit:()=>kl,MICROPYTHON_AI_client:()=>wl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>od,mpython_blynk_app_notify:()=>Zl,mpython_blynk_email:()=>ed,mpython_blynk_get_timers:()=>id,mpython_blynk_on_connected:()=>ql,mpython_blynk_on_disconnected:()=>Ql,mpython_blynk_run:()=>jl,mpython_blynk_sensor_data_to_app:()=>sd,mpython_blynk_set_property:()=>td,mpython_blynk_setup:()=>_d,mpython_blynk_stop_timers:()=>$l,mpython_blynk_sync_virtual:()=>Jl,mpython_blynk_terminal_widget_vpin:()=>Kl,mpython_blynktimer:()=>nd,mpython_blynktimer_run:()=>zl});var v={};t.r(v),t.d(v,{cc_g1_init:()=>ad,cc_g1_read_bat:()=>pd,cc_g1_read_joystick:()=>ud,cc_g1_read_key:()=>rd,cc_g1_turnoff:()=>ld});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>Rd,ce_go_get_led_bright:()=>hd,ce_go_get_led_state:()=>Md,ce_go_hall_attachInterrupt:()=>cd,ce_go_hall_data:()=>Cd,ce_go_hall_initialize:()=>gd,ce_go_led_bright:()=>Td,ce_go_led_brightness:()=>md,ce_go_light_number:()=>Id,ce_go_pin_light:()=>Dd,ce_go_pin_near:()=>Ad,ce_go_pin_near_line:()=>Sd,ce_go_pin_near_state_change:()=>Ld,ce_go_stepper_keep:()=>Od,ce_go_stepper_stop:()=>Ed,sensor_mixgome_eulerangles:()=>Nd});var x={};t.r(x),t.d(x,{communicate_bluetooth_central_init:()=>rI,communicate_bluetooth_connect:()=>TI,communicate_bluetooth_disconnect:()=>hI,communicate_bluetooth_handle:()=>RI,communicate_bluetooth_is_connected:()=>mI,communicate_bluetooth_mac:()=>II,communicate_bluetooth_peripheral_init:()=>lI,communicate_bluetooth_recv:()=>OI,communicate_bluetooth_recv_only:()=>EI,communicate_bluetooth_scan:()=>dI,communicate_bluetooth_send:()=>MI,communicate_espnow_init:()=>cI,communicate_espnow_init_new:()=>gI,communicate_i2c_available:()=>Kd,communicate_i2c_init:()=>vd,communicate_i2c_master_read:()=>Wd,communicate_i2c_onboard:()=>Fd,communicate_i2c_read:()=>Yd,communicate_i2c_scan:()=>Xd,communicate_i2c_write:()=>xd,communicate_ir_recv_init:()=>tI,communicate_ir_send_init:()=>oI,communicate_ow_init:()=>Qd,communicate_ow_read:()=>zd,communicate_ow_reset:()=>$d,communicate_ow_scan:()=>qd,communicate_ow_select:()=>Zd,communicate_ow_write:()=>jd,communicate_spi_buffer:()=>Vd,communicate_spi_init:()=>bd,communicate_spi_onboard:()=>Pd,communicate_spi_read:()=>Bd,communicate_spi_read_output:()=>Gd,communicate_spi_readinto:()=>Ud,communicate_spi_readinto_output:()=>wd,communicate_spi_set:()=>yd,communicate_spi_write:()=>kd,communicate_spi_write_readinto:()=>Hd,espnow_radio_channel:()=>DI,espnow_radio_channel_new:()=>FI,espnow_radio_on_off:()=>PI,espnow_radio_rec:()=>YI,espnow_radio_recv:()=>XI,espnow_radio_recv_certain_msg:()=>bI,espnow_radio_recv_certain_msg_new:()=>VI,espnow_radio_recv_msg:()=>xI,espnow_radio_recv_new:()=>yI,espnow_radio_send:()=>vI,espnow_radio_txpower:()=>fI,i2c_available:()=>_T,i2c_init:()=>KI,i2c_master_reader2:()=>oT,i2c_read:()=>JI,i2c_scan:()=>qI,i2c_slave_onreceive:()=>Jd,i2c_write:()=>QI,internal_variable:()=>eI,ir_recv_timeout:()=>sI,ir_transmit_busy:()=>uI,ir_transmit_conventional_data:()=>_I,ir_transmit_raw_code:()=>pI,ir_transmit_study_code:()=>aI,ir_whether_recv:()=>nI,lora_init:()=>BI,lora_packet:()=>GI,lora_recv:()=>wI,lora_send:()=>UI,network_espnow_info:()=>SI,network_espnow_mac:()=>CI,network_espnow_recv:()=>AI,network_espnow_recv_handle:()=>NI,network_espnow_send:()=>LI,recv_fun:()=>iI,spi_buffer:()=>ZI,spi_init:()=>zI,spi_read:()=>$I,spi_read_output:()=>tT,spi_readinto:()=>eT,spi_readinto_output:()=>iT,spi_set:()=>jI,spi_write:()=>nT,spi_write_readinto:()=>sT,urequests_attribute:()=>HI,urequests_get:()=>kI,urequests_method:()=>WI});var X={};t.r(X),t.d(X,{display_animate:()=>bT,display_blink_rate:()=>vT,display_circle:()=>yT,display_color_seclet:()=>qT,display_draw_4strings:()=>LT,display_fill:()=>XT,display_get_screen_image:()=>PT,display_help:()=>BT,display_image_size:()=>NT,display_lcd_use_i2c_init:()=>eh,display_line:()=>fT,display_line_arbitrarily:()=>FT,display_matrix_extern_bright_point:()=>OT,display_matrix_extern_bright_screen:()=>RT,display_matrix_extern_clear:()=>cT,display_matrix_extern_get_pixel:()=>mT,display_matrix_extern_get_screen_pixel:()=>ET,display_matrix_extern_image_builtins:()=>gT,display_matrix_extern_scroll_string:()=>dT,display_matrix_extern_scroll_string_delay:()=>IT,display_matrix_extern_shift:()=>MT,display_matrix_extern_show_frame_string:()=>TT,display_matrix_extern_show_frame_string_delay:()=>hT,display_matrix_extern_show_image:()=>rT,display_matrix_extern_show_image_or_string_delay:()=>lT,display_matrix_use_i2c_init:()=>uT,display_oled_drawPixel:()=>UT,display_oled_showBitmap:()=>GT,display_oled_use_i2c_init:()=>_h,display_onoff:()=>xT,display_rect:()=>DT,display_rgb_color:()=>YT,display_tm1650_power:()=>kT,display_tm1650_set_brightness:()=>KT,display_tm1650_show_dot:()=>WT,display_tm1650_show_num:()=>HT,display_tm_use_i2c_init:()=>wT,display_triangle:()=>VT,display_use_i2c_init:()=>AT,extern_oled_bright_point:()=>mh,extern_oled_clear:()=>Oh,extern_oled_get_pixel:()=>Mh,extern_oled_hvline:()=>Rh,extern_oled_line:()=>ch,extern_oled_scroll_string:()=>lh,extern_oled_scroll_string_delay:()=>dh,extern_oled_shape_rect:()=>Eh,extern_oled_shift:()=>hh,extern_oled_show_frame_string:()=>Ih,extern_oled_show_frame_string_delay:()=>Th,extern_oled_show_image:()=>ah,extern_oled_show_image_or_string_delay:()=>rh,extern_oled_show_image_xy:()=>ph,extern_oled_show_string:()=>uh,lcd_backlight:()=>sh,lcd_clear:()=>oh,lcd_print_string:()=>nh,lcd_show_image_or_string_delay:()=>ih,matrix_extern_image_arithmetic:()=>CT,matrix_extern_image_invert:()=>ST,tft_fill:()=>$T,tft_line_arbitrarily:()=>th,tft_scroll_string_delay:()=>jT,tft_show_frame_string_delay:()=>ZT,tft_show_image_or_string_delay:()=>zT,tft_show_image_xy:()=>QT,tft_use_spi_init:()=>JT});var b={};t.r(b),t.d(b,{bitbot_display_image_create:()=>_M,display_bright_point:()=>bh,display_bright_screen:()=>Vh,display_clear:()=>Bh,display_get_pixel:()=>Xh,display_get_screen_pixel:()=>yh,display_image_builtins:()=>Fh,display_image_builtins_all:()=>Ph,display_image_create:()=>fh,display_scroll_string:()=>Ah,display_scroll_string_delay:()=>Lh,display_shift:()=>xh,display_show_frame_string:()=>Nh,display_show_frame_string_delay:()=>Dh,display_show_image:()=>Ch,display_show_image_or_string_delay:()=>Sh,image_arithmetic:()=>vh,image_invert:()=>Yh,mixbot_display_bright_screen:()=>sM,mixbot_display_get_ambientbright:()=>nM,mixbot_display_get_screen_pixel:()=>iM,mixbot_display_image_create:()=>eM,mixbot_display_rotate:()=>oM,mixgo_display_image_create_new:()=>wh,mixgome_display_font:()=>kh,mixgome_display_image_create:()=>Gh,mixgomini_display_image_create:()=>Uh,mpython_display_hvline:()=>Zh,mpython_display_line:()=>$h,mpython_display_shape_rect:()=>jh,mpython_pbm_image:()=>tM,onboard_oled_bright_point:()=>zh,onboard_oled_scroll_string_delay:()=>Qh,onboard_oled_show_frame_string_delay:()=>qh,onboard_oled_show_image:()=>Hh,onboard_oled_show_image_or_string_delay:()=>Jh,onboard_oled_show_image_xy:()=>Wh,onboard_oled_show_string:()=>Kh,onboard_tft_bright_point:()=>EM,onboard_tft_bright_screen:()=>gM,onboard_tft_clear:()=>RM,onboard_tft_clock_clear:()=>DM,onboard_tft_clock_draw:()=>NM,onboard_tft_clock_get_rtctime:()=>AM,onboard_tft_clock_init:()=>SM,onboard_tft_clock_set_time:()=>LM,onboard_tft_display_hvline:()=>hM,onboard_tft_display_line:()=>MM,onboard_tft_display_shape_circle:()=>fM,onboard_tft_display_shape_rect:()=>TM,onboard_tft_fill:()=>CM,onboard_tft_get_pixel:()=>OM,onboard_tft_get_screen_pixel:()=>cM,onboard_tft_scroll_string:()=>rM,onboard_tft_scroll_string_delay:()=>lM,onboard_tft_shift:()=>mM,onboard_tft_show_frame_string:()=>dM,onboard_tft_show_frame_string_delay:()=>IM,onboard_tft_show_image:()=>aM,onboard_tft_show_image_or_string_delay:()=>uM,onboard_tft_show_image_xy:()=>pM});var y={};t.r(y),t.d(y,{factory_block:()=>GM,factory_block_return:()=>UM,factory_block_return_with_textarea:()=>kM,factory_block_with_textarea:()=>wM,factory_callMethod_noreturn:()=>VM,factory_callMethod_return:()=>BM,factory_create_with_container:()=>xM,factory_create_with_item:()=>XM,factory_declare:()=>yM,factory_from_import:()=>PM,factory_function_noreturn:()=>YM,factory_function_return:()=>bM,factory_import:()=>vM,folding_block:()=>HM});var V={};t.r(V),t.d(V,{controls_pin_attachInterrupt:()=>dm,inout_analog_atten:()=>tm,inout_analog_read:()=>$M,inout_analog_read_init:()=>_m,inout_analog_write:()=>zM,inout_analog_write_init:()=>om,inout_analog_write_set:()=>jM,inout_analog_write_set_freq:()=>um,inout_digital_init:()=>nm,inout_digital_read:()=>QM,inout_digital_write:()=>JM,inout_highlow:()=>KM,inout_pinMode:()=>pm,inout_pin_attachInterrupt:()=>im,inout_pin_pressed:()=>em,inout_pin_pressed_init:()=>am,inout_pwm_analog_write:()=>qM,inout_pwm_analog_write_init:()=>sm,inout_pwm_analog_write_set_freq:()=>ZM,pin_pressed:()=>lm,pin_pressed_init:()=>rm});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>bm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Xm,IOT_EMQX_PING:()=>Ym,IOT_FORMATTING:()=>Pm,IOT_FORMAT_STRING:()=>vm,IOT_MIXIO_NTP:()=>xm,IOT_MIXIO_PUBLISH:()=>Sm,IOT_MIXIO_SUBSCRIBE:()=>Am,iot_checkonenet:()=>Km,iot_client_onboard:()=>Vm,iot_create_with_item:()=>gm,iot_http_client:()=>Bm,iot_http_data:()=>Gm,iot_mixio_check:()=>Dm,iot_mixio_connect:()=>Cm,iot_mixio_connect_only:()=>Nm,iot_mixio_disconnect:()=>Lm,iot_mixio_format_msg:()=>Fm,iot_mixio_format_topic:()=>fm,iot_mixly_key:()=>ym,iot_mqtt_client:()=>Um,iot_mqtt_data:()=>wm,iot_onenet_check:()=>mm,iot_onenet_connect:()=>hm,iot_onenet_disconnect:()=>Mm,iot_onenet_publish:()=>Em,iot_onenet_publish_dict:()=>Om,iot_onenetconnect:()=>Hm,iot_onenetdisconnect:()=>Wm,iot_publish:()=>Jm,iot_publish_container:()=>Rm,iot_publish_item:()=>cm,iot_wifi_connect:()=>Tm,iot_wificonnect:()=>km});var G={};t.r(G),t.d(G,{network_ap_connect:()=>pO,network_connect:()=>$m,network_get_connect:()=>oO,network_get_wifi:()=>aO,network_init:()=>qm,network_is_active:()=>jm,network_open:()=>zm,network_scan:()=>Zm,network_server:()=>uO,network_socket_accept:()=>TO,network_socket_bind:()=>lO,network_socket_close:()=>EO,network_socket_connect:()=>dO,network_socket_init:()=>rO,network_socket_listen:()=>IO,network_socket_receive:()=>hO,network_socket_receive_from:()=>mO,network_socket_send:()=>MO,network_socket_send_to:()=>OO,network_stop:()=>_O,network_wifi_connect:()=>tO,ntptime_address:()=>SO,ntptime_time:()=>CO,requests_attribute:()=>cO,requests_get:()=>RO,requests_method:()=>gO,urequests_connect_url:()=>nO,urequests_response:()=>sO,urequests_wifi_connect:()=>eO,urequests_wifi_url:()=>iO});var U={};t.r(U),t.d(U,{HCSR04:()=>AE,PS2_Button:()=>fE,PS2_Buttons:()=>PE,PS2_Buttons_new:()=>XE,PS2_State:()=>FE,PS2_init:()=>LE,PS2_init_new:()=>YE,PS2_stk:()=>vE,PS2_stk_new:()=>bE,PS2_vibration:()=>DE,PS2_vibration_new:()=>xE,esp32_s2_weather_init:()=>cE,esp32_s2_weather_rain:()=>CE,esp32_s2_weather_wd:()=>gE,esp32_s2_weather_ws:()=>SE,extern_rfid_read:()=>aE,extern_rfid_readcontent:()=>uE,extern_rfid_readid:()=>pE,extern_rfid_status:()=>dE,extern_rfid_write:()=>rE,extern_rfid_write_return:()=>lE,gnss_get_data:()=>GE,gnss_have_data:()=>BE,mixbot_sensor_extern_get_addr:()=>JE,mixbot_sensor_extern_set_addr:()=>QE,pm25_get_data:()=>VE,robot_button_extern_get_value:()=>UE,robot_color_extern_get_value:()=>KE,robot_infrared_extern_get_value:()=>kE,robot_infrared_extern_grey_get_value:()=>HE,robot_potentiometer_extern_get_value:()=>WE,robot_sonar_extern_get_value:()=>qE,robot_sonar_extern_led:()=>zE,robot_touch_extern_get_value:()=>wE,sensor_APDS9960_extern:()=>kO,sensor_LTR308_extern:()=>HO,sensor_LTR390UV_extern:()=>KO,sensor_MAX30102_extern:()=>wO,sensor_QMC5883L_extern:()=>jO,sensor_VL530LX_extern:()=>JO,sensor_adxl345_get_acceleration:()=>PO,sensor_aht11_extern:()=>qO,sensor_bmp:()=>yO,sensor_compass_reset:()=>oE,sensor_dht11:()=>YO,sensor_ds18x20:()=>BO,sensor_hp203_extern:()=>zO,sensor_light_level:()=>vO,sensor_lm35:()=>GO,sensor_ltr381_extern:()=>WO,sensor_mixgo_extern_button_attachInterrupt:()=>fO,sensor_mixgo_extern_button_get_presses:()=>DO,sensor_mixgo_extern_button_is_pressed:()=>LO,sensor_mixgo_extern_button_was_pressed:()=>NO,sensor_mixgo_extern_light:()=>xO,sensor_mixgo_extern_pin_near:()=>bO,sensor_mixgo_extern_sound:()=>XO,sensor_mixgoce_hot_wheel_degrees:()=>RE,sensor_mixgoce_hot_wheel_is_touched:()=>EE,sensor_mpu9250_attachGestureInterrupt:()=>FO,sensor_mpu9250_calibrate_compass:()=>iE,sensor_mpu9250_field_strength:()=>sE,sensor_mpu9250_gesture:()=>ZO,sensor_mpu9250_get_acceleration:()=>$O,sensor_mpu9250_get_gyro:()=>eE,sensor_mpu9250_get_magnetic:()=>tE,sensor_mpu9250_temperature:()=>nE,sensor_sht:()=>VO,sensor_shtc3_extern:()=>QO,sensor_use_i2c_init:()=>UO,sensor_use_spi_init:()=>_E,sensor_use_uart_init:()=>yE,sensor_weather_solo_init:()=>jE,sensor_weather_solo_rain:()=>tR,sensor_weather_solo_wd:()=>ZE,sensor_weather_solo_ws:()=>$E,weather_data:()=>IE,weather_have_data:()=>TE,weather_set_label:()=>ME,weather_set_label_container:()=>mE,weather_set_label_item:()=>OE,weather_uart_mixio:()=>hE});var w={};t.r(w),t.d(w,{HCSR04:()=>mR,RTC_set_date:()=>MR,RTC_set_time:()=>hR,bitbot_als_num:()=>gc,dht11:()=>fc,number1:()=>ER,number2:()=>RR,number3:()=>cR,number4:()=>gR,number5:()=>CR,number6:()=>SR,number7:()=>AR,onboard_RTC_get_time:()=>vR,onboard_RTC_get_timestamp:()=>YR,onboard_RTC_set_datetime:()=>bR,onboard_RTC_settime_string:()=>XR,onboard_RTC_timestamp_totuple:()=>xR,rfid_readcontent:()=>HR,rfid_readid:()=>kR,rfid_write:()=>WR,rfid_write_return:()=>KR,sensor_LTR308:()=>VR,sensor_aht11:()=>GR,sensor_bitbot_ALS:()=>cc,sensor_button_get_presses:()=>Ac,sensor_button_is_pressed:()=>Cc,sensor_button_was_pressed:()=>Sc,sensor_distance_hrsc04:()=>TR,sensor_eulerangles:()=>QR,sensor_field_strength:()=>Fc,sensor_get_acceleration:()=>JR,sensor_get_temperature:()=>UR,sensor_hp203:()=>wR,sensor_light:()=>Dc,sensor_mixbot_get_gyro:()=>Rc,sensor_mixbot_patrol_calibrate:()=>mc,sensor_mixbot_patrol_value:()=>Oc,sensor_mixbot_temperature:()=>Ec,sensor_mixgo_LTR308:()=>PR,sensor_mixgo_button_attachInterrupt:()=>oR,sensor_mixgo_button_get_presses:()=>sR,sensor_mixgo_button_is_pressed:()=>iR,sensor_mixgo_button_was_pressed:()=>nR,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>oc,sensor_mixgo_cc_mmc5603_get_angle:()=>sc,sensor_mixgo_cc_mmc5603_get_magnetic:()=>nc,sensor_mixgo_light:()=>OR,sensor_mixgo_nova_LTR308:()=>FR,sensor_mixgo_nova_pin_near:()=>fR,sensor_mixgo_pin_near:()=>DR,sensor_mixgo_pin_near_double:()=>NR,sensor_mixgo_pin_near_single:()=>LR,sensor_mixgo_pin_pressed:()=>rR,sensor_mixgo_touch_slide:()=>IR,sensor_mixgocar42_button_attachInterrupt:()=>uR,sensor_mixgocar42_button_get_presses:()=>pR,sensor_mixgocar42_button_is_pressed:()=>_R,sensor_mixgocar42_button_was_pressed:()=>aR,sensor_mixgocar_battery_left:()=>Mc,sensor_mixgocar_pin_near:()=>Tc,sensor_mixgocar_pin_near_line:()=>Ic,sensor_mixgocar_pin_near_state_change:()=>hc,sensor_mixgoce_pin_pressed:()=>lR,sensor_mixgoce_temperature:()=>ac,sensor_mixgome_temperature:()=>_c,sensor_mpython_pin_pressed:()=>dR,sensor_mpython_qmi8658_get_gyro:()=>pc,sensor_mpython_qmi8658_temperature:()=>uc,sensor_onboard_compass_reset:()=>ic,sensor_onboard_mpu9250_calibrate_compass:()=>$R,sensor_onboard_mpu9250_field_strength:()=>ec,sensor_onboard_mpu9250_gesture:()=>qR,sensor_onboard_mpu9250_get_acceleration:()=>zR,sensor_onboard_mpu9250_get_gyro:()=>ZR,sensor_onboard_mpu9250_get_magnetic:()=>jR,sensor_onboard_mpu9250_temperature:()=>tc,sensor_pin_near:()=>Nc,sensor_pin_pressed:()=>Lc,sensor_rm_acc:()=>dc,sensor_rm_battery_left:()=>lc,sensor_rm_pin_near_double:()=>rc,sensor_rtc_init:()=>yR,sensor_sound:()=>BR,sensor_temperature:()=>Pc});var k={};t.r(k),t.d(k,{serial_any:()=>Bc,serial_begin:()=>Hc,serial_print:()=>xc,serial_print_byte:()=>Yc,serial_print_hex:()=>bc,serial_println:()=>Xc,serial_read_from_ai:()=>$c,serial_readline:()=>Gc,serial_readstr:()=>Vc,serial_readstr_until:()=>Uc,serial_receive_data_event:()=>yc,serial_send_to_ai:()=>Zc,serial_softserial:()=>kc,serial_softserial_new:()=>wc,system_input:()=>Wc,system_print:()=>Kc,system_print_container:()=>zc,system_print_end:()=>Qc,system_print_inline:()=>Jc,system_print_item:()=>jc,system_print_many:()=>qc});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>ng,Timer_init:()=>Mg,base_delay:()=>Eg,controls_delay:()=>ig,controls_delay_new:()=>eg,controls_millis:()=>og,controls_uname:()=>ag,raw_block:()=>_g,reset:()=>sg,system_bitbot_shutdown:()=>hg,system_machine_reset:()=>Tg,system_ticks_diff:()=>rg,system_timer:()=>ug,system_timer_init:()=>lg,system_wdt_feed:()=>Ig,system_wdt_init:()=>dg,time_ticks_diff:()=>Og,timer:()=>pg,timer2:()=>mg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>gg,WEATHER_HOUR:()=>Cg,WEATHER_NOW:()=>cg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>kg,actuator_extern_get_led_state:()=>Hg,actuator_extern_led_bright:()=>wg,actuator_extern_led_brightness:()=>Wg,actuator_ms32006_dcmotor:()=>Pg,actuator_ms32006_init:()=>Fg,actuator_ms32006_stepper:()=>vg,actuator_neopixel_init:()=>Kg,actuator_neopixel_rgb:()=>qg,actuator_neopixel_rgb_all:()=>Jg,actuator_neopixel_write:()=>Qg,actuator_use_uart_init:()=>zg,esp32_music_get_tempo_extern:()=>Vg,esp32_music_pitch:()=>xg,esp32_music_pitch_init:()=>Yg,esp32_music_pitch_with_time:()=>Xg,esp32_music_play_list:()=>Bg,esp32_music_reset_extern:()=>Gg,esp32_music_set_tempo_extern:()=>yg,esp32_music_stop:()=>bg,mixbot_actuator_extern_get_addr:()=>TC,mixbot_actuator_extern_set_addr:()=>hC,mixbot_addr_extern:()=>eC,robot_led_extern:()=>oC,robot_led_extern_get_value:()=>_C,robot_motor_extern:()=>iC,robot_motor_extern_get_speed:()=>nC,robot_servo_extern_absolute_run:()=>rC,robot_servo_extern_get_status:()=>aC,robot_servo_extern_relative_continue:()=>IC,robot_servo_extern_relative_origin:()=>lC,robot_servo_extern_relative_run:()=>dC,robot_servo_extern_stop:()=>uC,robot_servo_extern_stop_mode:()=>pC,robot_traffic_light_extern:()=>sC,servo_get_angle:()=>Dg,servo_get_speed:()=>fg,servo_init:()=>Sg,servo_move:()=>Ug,servo_set_angle:()=>Lg,servo_set_speed:()=>Ng,servo_speed_360:()=>Ag,syn6288_builtin_voice:()=>$g,syn6288_get_voice:()=>Zg,syn6288_set_voice:()=>jg,syn6288_tts_play:()=>tC});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>kC,actuator_dc_motor_stop:()=>HC,actuator_get_led_bright:()=>LC,actuator_get_led_state:()=>NC,actuator_led_bright:()=>AC,actuator_led_brightness:()=>DC,actuator_mixbot_buzzer_on_off:()=>qC,actuator_mixgo_nova_mic_get:()=>tS,actuator_mixgo_nova_mic_set:()=>$C,actuator_mixgo_nova_onboard_music_pitch:()=>_S,actuator_mixgo_nova_onboard_music_stop:()=>aS,actuator_mixgo_nova_play_audio:()=>sS,actuator_mixgo_nova_play_online_audio:()=>oS,actuator_mixgo_nova_record_audio:()=>nS,actuator_mixgo_nova_voice_get:()=>iS,actuator_mixgo_nova_voice_set:()=>eS,actuator_mixgo_zero_led_color:()=>fC,actuator_onboard_neopixel_rgb:()=>bC,actuator_onboard_neopixel_rgb_all:()=>yC,actuator_onboard_neopixel_rgb_show_all_chase:()=>VC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>BC,actuator_onboard_neopixel_write:()=>XC,actuator_stepper_keep:()=>UC,actuator_stepper_stop:()=>wC,analog_keyboard_input:()=>lS,analog_keyboard_str:()=>MS,analog_mouse_input:()=>TS,bitbot_motor:()=>ZC,bitbot_move:()=>zC,bitbot_stop:()=>jC,cc_number:()=>FC,esp32_music_get_tempo:()=>mC,esp32_music_reset:()=>gC,esp32_music_set_tempo:()=>MC,esp32_onboard_music_pitch:()=>OC,esp32_onboard_music_pitch_with_time:()=>EC,esp32_onboard_music_play_list:()=>cC,esp32_onboard_music_stop:()=>RC,general_key:()=>IS,get_power_output:()=>uS,ledswitch:()=>SC,mixbot_motor:()=>QC,mixbot_motor_status:()=>WC,mixbot_move:()=>KC,mixbot_stop:()=>JC,mouse_key:()=>hS,number:()=>CC,rm_actuator_get_led_bright:()=>vC,rm_actuator_get_led_state:()=>YC,rm_actuator_led_bright:()=>PC,rm_actuator_led_brightness:()=>xC,rm_motor:()=>GC,set_all_power_output:()=>rS,set_power_output:()=>pS,special_key:()=>dS});var Q={};t.r(Q),t.d(Q,{ai_sensor_20object:()=>qS,ai_sensor_ailocal_class:()=>VS,ai_sensor_ailocal_class_result:()=>BS,ai_sensor_ailocal_train:()=>yS,ai_sensor_asr_recognize:()=>HS,ai_sensor_audio_play:()=>US,ai_sensor_audio_record:()=>GS,ai_sensor_barcode:()=>CS,ai_sensor_circle:()=>fS,ai_sensor_classifier_faces:()=>QS,ai_sensor_color:()=>YS,ai_sensor_color_chases:()=>bS,ai_sensor_color_chases_result:()=>XS,ai_sensor_config:()=>ES,ai_sensor_face:()=>JS,ai_sensor_find_20objects:()=>zS,ai_sensor_find_barcodes:()=>SS,ai_sensor_find_circles:()=>FS,ai_sensor_find_colors:()=>xS,ai_sensor_find_licenseplates:()=>KS,ai_sensor_find_lines:()=>DS,ai_sensor_find_qrcodes:()=>gS,ai_sensor_find_rects:()=>vS,ai_sensor_find_tags:()=>LS,ai_sensor_licenseplate:()=>WS,ai_sensor_line:()=>NS,ai_sensor_qrcode:()=>cS,ai_sensor_qrcode_lite:()=>OS,ai_sensor_rect:()=>PS,ai_sensor_rgb:()=>RS,ai_sensor_tag:()=>AS,ai_sensor_use_uart_init:()=>mS,ai_sensor_yolo_recognize:()=>wS,ai_sensor_yolo_recognize_result:()=>kS});var q={};t.r(q),t.d(q,{MICROPYTHON_AI_Speech_asr:()=>$S,MICROPYTHON_AI_Speech_unit:()=>ZS,MICROPYTHON_AI_client:()=>jS});var z={};t.r(z),t.d(z,{mpython_blynk_app_data:()=>lA,mpython_blynk_app_notify:()=>_A,mpython_blynk_email:()=>dA,mpython_blynk_get_timers:()=>pA,mpython_blynk_on_connected:()=>nA,mpython_blynk_on_disconnected:()=>iA,mpython_blynk_run:()=>oA,mpython_blynk_sensor_data_to_app:()=>rA,mpython_blynk_set_property:()=>IA,mpython_blynk_setup:()=>TA,mpython_blynk_stop_timers:()=>aA,mpython_blynk_sync_virtual:()=>eA,mpython_blynk_terminal_widget_vpin:()=>tA,mpython_blynktimer:()=>uA,mpython_blynktimer_run:()=>sA});var j={};t.r(j),t.d(j,{cc_g1_read_bat:()=>hA,cc_g1_read_joystick:()=>MA,cc_g1_read_key:()=>mA,cc_g1_turnoff:()=>OA});var Z={};t.r(Z),t.d(Z,{ce_go_dc_motor:()=>LA,ce_go_get_led_bright:()=>cA,ce_go_get_led_state:()=>gA,ce_go_hall_attachInterrupt:()=>NA,ce_go_hall_data:()=>fA,ce_go_hall_initialize:()=>DA,ce_go_led_bright:()=>RA,ce_go_led_brightness:()=>CA,ce_go_light_number:()=>EA,ce_go_pin_light:()=>xA,ce_go_pin_near:()=>PA,ce_go_pin_near_line:()=>FA,ce_go_pin_near_state_change:()=>vA,ce_go_stepper_keep:()=>SA,ce_go_stepper_stop:()=>AA,sensor_mixgome_eulerangles:()=>YA});var $={};t.r($),t.d($,{communicate_bluetooth_central_init:()=>hL,communicate_bluetooth_connect:()=>OL,communicate_bluetooth_disconnect:()=>EL,communicate_bluetooth_handle:()=>AL,communicate_bluetooth_is_connected:()=>cL,communicate_bluetooth_mac:()=>RL,communicate_bluetooth_peripheral_init:()=>ML,communicate_bluetooth_recv:()=>SL,communicate_bluetooth_recv_only:()=>CL,communicate_bluetooth_scan:()=>mL,communicate_bluetooth_send:()=>gL,communicate_espnow_init:()=>LL,communicate_espnow_init_new:()=>NL,communicate_i2c_available:()=>wA,communicate_i2c_init:()=>yA,communicate_i2c_master_read:()=>UA,communicate_i2c_onboard:()=>XA,communicate_i2c_read:()=>VA,communicate_i2c_scan:()=>GA,communicate_i2c_write:()=>BA,communicate_ir_recv_init:()=>oL,communicate_ir_send_init:()=>rL,communicate_ow_init:()=>$A,communicate_ow_read:()=>iL,communicate_ow_reset:()=>eL,communicate_ow_scan:()=>tL,communicate_ow_select:()=>sL,communicate_ow_write:()=>nL,communicate_spi_buffer:()=>KA,communicate_spi_init:()=>HA,communicate_spi_onboard:()=>bA,communicate_spi_read:()=>JA,communicate_spi_read_output:()=>QA,communicate_spi_readinto:()=>qA,communicate_spi_readinto_output:()=>zA,communicate_spi_set:()=>WA,communicate_spi_write:()=>jA,communicate_spi_write_readinto:()=>ZA,espnow_radio_channel:()=>YL,espnow_radio_channel_new:()=>XL,espnow_radio_on_off:()=>bL,espnow_radio_rec:()=>VL,espnow_radio_recv:()=>GL,espnow_radio_recv_certain_msg:()=>UL,espnow_radio_recv_certain_msg_new:()=>kL,espnow_radio_recv_msg:()=>BL,espnow_radio_recv_new:()=>wL,espnow_radio_send:()=>yL,espnow_radio_txpower:()=>xL,i2c_slave_onreceive:()=>kA,internal_variable:()=>_L,ir_recv_timeout:()=>uL,ir_transmit_busy:()=>TL,ir_transmit_conventional_data:()=>lL,ir_transmit_raw_code:()=>IL,ir_transmit_study_code:()=>dL,ir_whether_recv:()=>pL,lora_init:()=>HL,lora_packet:()=>WL,lora_recv:()=>JL,lora_send:()=>KL,network_espnow_info:()=>fL,network_espnow_mac:()=>DL,network_espnow_recv:()=>FL,network_espnow_recv_handle:()=>vL,network_espnow_send:()=>PL,recv_fun:()=>aL,urequests_attribute:()=>qL,urequests_get:()=>QL,urequests_method:()=>zL});var tt={};t.r(tt),t.d(tt,{display_animate:()=>cN,display_circle:()=>gN,display_color_seclet:()=>YN,display_draw_4strings:()=>TN,display_fill:()=>RN,display_lcd_use_i2c_init:()=>BN,display_line:()=>mN,display_line_arbitrarily:()=>hN,display_matrix_extern_bright_point:()=>aN,display_matrix_extern_bright_screen:()=>uN,display_matrix_extern_clear:()=>sN,display_matrix_extern_get_pixel:()=>_N,display_matrix_extern_get_screen_pixel:()=>pN,display_matrix_extern_image_builtins:()=>rN,display_matrix_extern_scroll_string:()=>iN,display_matrix_extern_scroll_string_delay:()=>nN,display_matrix_extern_shift:()=>oN,display_matrix_extern_show_frame_string:()=>tN,display_matrix_extern_show_frame_string_delay:()=>eN,display_matrix_extern_show_image:()=>ZL,display_matrix_extern_show_image_or_string_delay:()=>$L,display_matrix_use_i2c_init:()=>jL,display_oled_drawPixel:()=>AN,display_oled_showBitmap:()=>SN,display_oled_use_i2c_init:()=>HN,display_onoff:()=>ON,display_rect:()=>MN,display_tm1650_power:()=>NN,display_tm1650_set_brightness:()=>FN,display_tm1650_show_dot:()=>fN,display_tm1650_show_num:()=>DN,display_tm_use_i2c_init:()=>LN,display_triangle:()=>CN,display_use_i2c_init:()=>IN,extern_oled_bright_point:()=>iD,extern_oled_clear:()=>$N,extern_oled_get_pixel:()=>eD,extern_oled_hvline:()=>sD,extern_oled_line:()=>oD,extern_oled_scroll_string:()=>jN,extern_oled_scroll_string_delay:()=>ZN,extern_oled_shape_rect:()=>nD,extern_oled_shift:()=>tD,extern_oled_show_frame_string:()=>qN,extern_oled_show_frame_string_delay:()=>zN,extern_oled_show_image:()=>WN,extern_oled_show_image_or_string_delay:()=>QN,extern_oled_show_image_xy:()=>KN,extern_oled_show_string:()=>JN,image_shift:()=>EN,lcd_backlight:()=>wN,lcd_clear:()=>kN,lcd_print_string:()=>UN,lcd_show_image_or_string_delay:()=>GN,matrix_extern_image_arithmetic:()=>lN,matrix_extern_image_invert:()=>dN,tft_fill:()=>yN,tft_line_arbitrarily:()=>VN,tft_scroll_string_delay:()=>bN,tft_show_frame_string_delay:()=>XN,tft_show_image_or_string_delay:()=>xN,tft_show_image_xy:()=>vN,tft_use_spi_init:()=>PN});var et={};t.r(et),t.d(et,{bitbot_display_image_create:()=>kD,display_bright_point:()=>RD,display_bright_screen:()=>gD,display_clear:()=>hD,display_get_pixel:()=>ED,display_get_screen_pixel:()=>cD,display_image_builtins:()=>dD,display_image_builtins_all:()=>ID,display_image_create:()=>TD,display_scroll_string:()=>rD,display_scroll_string_delay:()=>lD,display_shift:()=>OD,display_show_frame_string:()=>pD,display_show_frame_string_delay:()=>uD,display_show_image:()=>_D,display_show_image_or_string_delay:()=>aD,image_arithmetic:()=>MD,image_invert:()=>mD,mixbot_display_bright_screen:()=>UD,mixbot_display_get_ambientbright:()=>GD,mixbot_display_get_screen_pixel:()=>BD,mixbot_display_image_create:()=>VD,mixbot_display_rotate:()=>wD,mixgo_display_image_create_new:()=>LD,mixgome_display_font:()=>AD,mixgome_display_image_create:()=>CD,mixgomini_display_image_create:()=>SD,mpython_display_hvline:()=>bD,mpython_display_line:()=>yD,mpython_display_shape_rect:()=>XD,mpython_pbm_image:()=>ND,onboard_oled_bright_point:()=>xD,onboard_oled_scroll_string_delay:()=>YD,onboard_oled_show_frame_string_delay:()=>vD,onboard_oled_show_image:()=>DD,onboard_oled_show_image_or_string_delay:()=>PD,onboard_oled_show_image_xy:()=>fD,onboard_oled_show_string:()=>FD,onboard_tft_bright_point:()=>sf,onboard_tft_bright_screen:()=>_f,onboard_tft_clear:()=>tf,onboard_tft_clock_clear:()=>df,onboard_tft_clock_draw:()=>lf,onboard_tft_clock_get_rtctime:()=>uf,onboard_tft_clock_init:()=>pf,onboard_tft_clock_set_time:()=>rf,onboard_tft_display_hvline:()=>ZD,onboard_tft_display_line:()=>$D,onboard_tft_display_shape_circle:()=>If,onboard_tft_display_shape_rect:()=>jD,onboard_tft_fill:()=>af,onboard_tft_get_pixel:()=>nf,onboard_tft_get_screen_pixel:()=>of,onboard_tft_scroll_string:()=>qD,onboard_tft_scroll_string_delay:()=>zD,onboard_tft_shift:()=>ef,onboard_tft_show_frame_string:()=>JD,onboard_tft_show_frame_string_delay:()=>QD,onboard_tft_show_image:()=>HD,onboard_tft_show_image_or_string_delay:()=>KD,onboard_tft_show_image_xy:()=>WD});var it={};t.r(it),t.d(it,{factory_block:()=>cf,factory_block_return:()=>gf,factory_block_return_with_textarea:()=>Sf,factory_block_with_textarea:()=>Cf,factory_callMethod_noreturn:()=>Ef,factory_callMethod_return:()=>Rf,factory_declare:()=>Of,factory_from_import:()=>Tf,factory_function_noreturn:()=>Mf,factory_function_return:()=>mf,factory_import:()=>hf,folding_block:()=>Af});var nt={};t.r(nt),t.d(nt,{inout_analog_atten:()=>Gf,inout_analog_read:()=>Yf,inout_analog_read_init:()=>Bf,inout_analog_write:()=>Ff,inout_analog_write_init:()=>Vf,inout_analog_write_set:()=>Pf,inout_digital_init:()=>bf,inout_digital_read:()=>Df,inout_digital_write:()=>Nf,inout_highlow:()=>Lf,inout_pin_attachInterrupt:()=>Xf,inout_pin_pressed:()=>xf,inout_pin_pressed_init:()=>Uf,inout_pwm_analog_write:()=>ff,inout_pwm_analog_write_init:()=>yf,inout_pwm_analog_write_set_freq:()=>vf});var st={};t.r(st),t.d(st,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>_F,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>sF,IOT_EMQX_PING:()=>aF,IOT_FORMATTING:()=>iF,IOT_FORMAT_STRING:()=>nF,IOT_MIXIO_NTP:()=>pF,IOT_MIXIO_PUBLISH:()=>qf,IOT_MIXIO_SUBSCRIBE:()=>zf,iot_client_onboard:()=>uF,iot_http_client:()=>rF,iot_http_data:()=>lF,iot_mixio_check:()=>$f,iot_mixio_connect:()=>Qf,iot_mixio_connect_only:()=>Zf,iot_mixio_disconnect:()=>jf,iot_mixio_format_msg:()=>eF,iot_mixio_format_topic:()=>tF,iot_mixly_key:()=>oF,iot_mqtt_client:()=>dF,iot_mqtt_data:()=>IF,iot_onenet_check:()=>Kf,iot_onenet_connect:()=>kf,iot_onenet_disconnect:()=>Hf,iot_onenet_publish:()=>Jf,iot_onenet_publish_dict:()=>Wf,iot_wifi_connect:()=>wf});var ot={};t.r(ot),t.d(ot,{network_ap_connect:()=>gF,network_connect:()=>hF,network_get_connect:()=>mF,network_get_wifi:()=>cF,network_init:()=>TF,network_is_active:()=>RF,network_open:()=>EF,network_scan:()=>CF,network_server:()=>SF,network_socket_accept:()=>fF,network_socket_bind:()=>LF,network_socket_close:()=>xF,network_socket_connect:()=>NF,network_socket_init:()=>AF,network_socket_listen:()=>DF,network_socket_receive:()=>FF,network_socket_receive_from:()=>vF,network_socket_send:()=>PF,network_socket_send_to:()=>YF,network_stop:()=>OF,network_wifi_connect:()=>MF,ntptime_address:()=>BF,ntptime_time:()=>VF,requests_attribute:()=>bF,requests_get:()=>XF,requests_method:()=>yF,urequests_connect_url:()=>wF,urequests_response:()=>kF,urequests_wifi_connect:()=>GF,urequests_wifi_url:()=>UF});var _t={};t.r(_t),t.d(_t,{HCSR04:()=>vP,PS2_Button:()=>XP,PS2_Buttons:()=>bP,PS2_Buttons_new:()=>HP,PS2_State:()=>yP,PS2_init:()=>YP,PS2_init_new:()=>wP,PS2_stk:()=>VP,PS2_stk_new:()=>WP,PS2_vibration:()=>xP,PS2_vibration_new:()=>kP,RTC_get_time:()=>GP,RTC_set_date:()=>jF,RTC_set_datetime:()=>BP,RTC_set_time:()=>zF,esp32_s2_weather_init:()=>DP,esp32_s2_weather_rain:()=>FP,esp32_s2_weather_wd:()=>fP,esp32_s2_weather_ws:()=>PP,extern_rfid_read:()=>MP,extern_rfid_readcontent:()=>OP,extern_rfid_readid:()=>mP,extern_rfid_status:()=>cP,extern_rfid_write:()=>EP,extern_rfid_write_return:()=>RP,gnss_get_data:()=>QP,gnss_have_data:()=>qP,mixbot_sensor_extern_get_addr:()=>sv,mixbot_sensor_extern_set_addr:()=>ov,pm25_get_data:()=>JP,robot_button_extern_get_value:()=>zP,robot_color_extern_get_value:()=>ev,robot_infrared_extern_get_value:()=>ZP,robot_infrared_extern_grey_get_value:()=>$P,robot_potentiometer_extern_get_value:()=>tv,robot_sonar_extern_get_value:()=>iv,robot_sonar_extern_led:()=>nv,robot_touch_extern_get_value:()=>jP,sensor_APDS9960_extern:()=>_P,sensor_LTR308_extern:()=>aP,sensor_LTR390UV_extern:()=>rP,sensor_MAX30102_extern:()=>oP,sensor_QMC5883L_extern:()=>lP,sensor_VL530LX_extern:()=>TP,sensor_aht11_extern:()=>IP,sensor_bmp:()=>iP,sensor_dht11:()=>UP,sensor_distance_hrsc04:()=>qF,sensor_hp203_extern:()=>pP,sensor_ltr381_extern:()=>uP,sensor_mixgo_extern_button_attachInterrupt:()=>JF,sensor_mixgo_extern_button_get_presses:()=>KF,sensor_mixgo_extern_button_is_pressed:()=>HF,sensor_mixgo_extern_button_was_pressed:()=>WF,sensor_mixgo_extern_light:()=>ZF,sensor_mixgo_extern_pin_near:()=>tP,sensor_mixgo_extern_sound:()=>$F,sensor_mixgoce_hot_wheel_degrees:()=>NP,sensor_mixgoce_hot_wheel_is_touched:()=>LP,sensor_mpu9250_attachGestureInterrupt:()=>QF,sensor_rtc_init:()=>eP,sensor_sht:()=>nP,sensor_shtc3_extern:()=>dP,sensor_use_i2c_init:()=>sP,sensor_use_spi_init:()=>hP,sensor_use_uart_init:()=>KP,sensor_weather_solo_init:()=>_v,sensor_weather_solo_rain:()=>uv,sensor_weather_solo_wd:()=>av,sensor_weather_solo_ws:()=>pv,weather_data:()=>gP,weather_have_data:()=>CP,weather_set_label:()=>AP,weather_uart_mixio:()=>SP});var at={};t.r(at),t.d(at,{HCSR04:()=>Ov,bitbot_als_num:()=>bY,dht11:()=>HY,number1:()=>Ev,number2:()=>Rv,number3:()=>cv,number4:()=>gv,number5:()=>Cv,number6:()=>Sv,number7:()=>Av,onboard_RTC_get_time:()=>TY,onboard_RTC_get_timestamp:()=>hY,onboard_RTC_set_datetime:()=>dY,onboard_RTC_settime_string:()=>IY,onboard_RTC_timestamp_totuple:()=>MY,rfid_readcontent:()=>Gv,rfid_readid:()=>Bv,rfid_write:()=>Uv,rfid_write_return:()=>wv,sensor_LTR308:()=>xv,sensor_adxl345_get_acceleration:()=>jv,sensor_aht11:()=>yv,sensor_bitbot_ALS:()=>XY,sensor_button_get_presses:()=>BY,sensor_button_is_pressed:()=>yY,sensor_button_was_pressed:()=>VY,sensor_compass_reset:()=>nY,sensor_ds18x20:()=>vv,sensor_eulerangles:()=>Hv,sensor_get_acceleration:()=>kv,sensor_get_temperature:()=>Vv,sensor_hp203:()=>bv,sensor_light:()=>kY,sensor_lm35:()=>Yv,sensor_mixbot_get_gyro:()=>xY,sensor_mixbot_patrol_calibrate:()=>PY,sensor_mixbot_patrol_value:()=>vY,sensor_mixbot_temperature:()=>YY,sensor_mixgo_LTR308:()=>Fv,sensor_mixgo_button_attachInterrupt:()=>Iv,sensor_mixgo_button_get_presses:()=>dv,sensor_mixgo_button_is_pressed:()=>rv,sensor_mixgo_button_was_pressed:()=>lv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>EY,sensor_mixgo_cc_mmc5603_get_angle:()=>OY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>mY,sensor_mixgo_light:()=>wY,sensor_mixgo_nova_LTR308:()=>Pv,sensor_mixgo_nova_pin_near:()=>fv,sensor_mixgo_pin_near:()=>Dv,sensor_mixgo_pin_near_double:()=>Nv,sensor_mixgo_pin_near_single:()=>Lv,sensor_mixgo_pin_pressed:()=>qv,sensor_mixgo_touch_slide:()=>Qv,sensor_mixgocar42_button_attachInterrupt:()=>mv,sensor_mixgocar42_button_get_presses:()=>Mv,sensor_mixgocar42_button_is_pressed:()=>Tv,sensor_mixgocar42_button_was_pressed:()=>hv,sensor_mixgocar_battery_left:()=>FY,sensor_mixgocar_pin_near:()=>DY,sensor_mixgocar_pin_near_line:()=>NY,sensor_mixgocar_pin_near_state_change:()=>fY,sensor_mixgoce_pin_pressed:()=>Jv,sensor_mixgoce_temperature:()=>cY,sensor_mixgome_temperature:()=>RY,sensor_mpu9250_calibrate_compass:()=>tY,sensor_mpu9250_field_strength:()=>iY,sensor_mpu9250_gesture:()=>Wv,sensor_mpu9250_get_acceleration:()=>Kv,sensor_mpu9250_get_gyro:()=>$v,sensor_mpu9250_get_magnetic:()=>Zv,sensor_mpu9250_temperature:()=>eY,sensor_mpython_pin_pressed:()=>zv,sensor_mpython_qmi8658_get_gyro:()=>gY,sensor_mpython_qmi8658_temperature:()=>CY,sensor_onboard_compass_reset:()=>lY,sensor_onboard_mpu9250_calibrate_compass:()=>pY,sensor_onboard_mpu9250_field_strength:()=>rY,sensor_onboard_mpu9250_gesture:()=>sY,sensor_onboard_mpu9250_get_acceleration:()=>oY,sensor_onboard_mpu9250_get_gyro:()=>aY,sensor_onboard_mpu9250_get_magnetic:()=>_Y,sensor_onboard_mpu9250_temperature:()=>uY,sensor_pin_near:()=>UY,sensor_pin_pressed:()=>GY,sensor_rm_acc:()=>LY,sensor_rm_battery_left:()=>AY,sensor_rm_pin_near_double:()=>SY,sensor_sound:()=>Xv});var pt={};t.r(pt),t.d(pt,{serial_any:()=>qY,serial_print:()=>WY,serial_print_byte:()=>KY,serial_print_hex:()=>QY,serial_println:()=>JY,serial_read_from_ai:()=>_x,serial_readline:()=>jY,serial_readstr:()=>zY,serial_send_to_ai:()=>ox,serial_softserial:()=>ZY,serial_softserial_new:()=>$Y,system_input:()=>tx,system_print:()=>ex,system_print_end:()=>nx,system_print_inline:()=>ix,system_print_many:()=>sx});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>Ox,Timer_init:()=>Yx,base_delay:()=>bx,controls_delay:()=>Cx,controls_delay_new:()=>Sx,controls_end_program:()=>Rx,controls_millis:()=>Ex,controls_uname:()=>gx,reset:()=>cx,system_bitbot_shutdown:()=>vx,system_device_name:()=>Mx,system_device_serial_number:()=>mx,system_event_bus_source:()=>Tx,system_event_bus_value:()=>hx,system_machine_reset:()=>Px,system_on_event:()=>lx,system_raise_event:()=>rx,system_reset:()=>px,system_run_in_background:()=>ax,system_ticks_diff:()=>Nx,system_timer:()=>Lx,system_timer_init:()=>Dx,system_timestamp:()=>dx,system_value:()=>Ix,system_wait:()=>ux,system_wdt_feed:()=>Fx,system_wdt_init:()=>fx,time_ticks_diff:()=>Xx,timer:()=>Ax,timer2:()=>xx});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>Vx,WEATHER_HOUR:()=>Bx,WEATHER_NOW:()=>yx});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>uX,inout_analog_atten:()=>jx,inout_analog_read:()=>zx,inout_analog_read_init:()=>nX,inout_analog_write:()=>Jx,inout_analog_write_init:()=>iX,inout_analog_write_set:()=>Qx,inout_analog_write_set_freq:()=>_X,inout_digital_init:()=>tX,inout_digital_read:()=>Wx,inout_digital_write:()=>Hx,inout_highlow:()=>kx,inout_pinMode:()=>oX,inout_pin_attachInterrupt:()=>$x,inout_pin_pressed:()=>Zx,inout_pin_pressed_init:()=>sX,inout_pwm_analog_write:()=>Kx,inout_pwm_analog_write_init:()=>eX,inout_pwm_analog_write_set_freq:()=>qx,pin_pressed:()=>pX,pin_pressed_init:()=>aX});var dt={};t.r(dt),t.d(dt,{me_g1_aht11:()=>lX,me_g1_hp203:()=>dX,me_g1_rfid_readcontent:()=>hX,me_g1_rfid_readid:()=>TX,me_g1_rfid_status:()=>OX,me_g1_rfid_write:()=>MX,me_g1_rfid_write_outcome:()=>mX,me_g1_varistor:()=>IX});var It={};t.r(It),t.d(It,{analog_input:()=>NX,analog_output:()=>fX,espnow_channel:()=>SX,haskylens_model:()=>AX,i2c_A_pin:()=>FX,i2c_B_pin:()=>PX,pins_analog:()=>bX,pins_analog_pin:()=>yX,pins_axis:()=>tb,pins_brightness:()=>eb,pins_builtinimg:()=>JX,pins_builtinimg_extern:()=>QX,pins_button:()=>GX,pins_buttonB:()=>UX,pins_dac:()=>VX,pins_dac_pin:()=>BX,pins_digital:()=>RX,pins_digital_dot:()=>ub,pins_digital_pin:()=>cX,pins_exlcdh:()=>ZX,pins_exlcdv:()=>$X,pins_imglist:()=>qX,pins_input_pin:()=>gX,pins_one_more:()=>pb,pins_output_pin:()=>CX,pins_playlist:()=>zX,pins_playlist_extern:()=>jX,pins_pwm:()=>wX,pins_pwm_pin:()=>kX,pins_radio_datarate:()=>ab,pins_radio_power:()=>_b,pins_serial:()=>KX,pins_tone_notes:()=>ob,pins_touch:()=>WX,pins_touch_pin:()=>HX,pins_tts_bgmusic:()=>sb,pins_tts_builtin_music:()=>nb,pins_tts_voice:()=>ib,pwm_input:()=>LX,pwm_output:()=>DX,spi_A_pin:()=>vX,spi_B_pin:()=>YX,spi_C_pin:()=>xX,spi_D_pin:()=>XX});var Tt={};t.r(Tt),t.d(Tt,{inout_analog_atten:()=>Sb,inout_analog_read:()=>mb,inout_analog_read_init:()=>Cb,inout_analog_write:()=>Tb,inout_analog_write_init:()=>gb,inout_analog_write_set:()=>hb,inout_digital_init:()=>Rb,inout_digital_read:()=>db,inout_digital_write:()=>lb,inout_highlow:()=>rb,inout_pin_attachInterrupt:()=>Eb,inout_pin_pressed:()=>Ob,inout_pin_pressed_init:()=>Ab,inout_pwm_analog_write:()=>Ib,inout_pwm_analog_write_init:()=>cb,inout_pwm_analog_write_set_freq:()=>Mb});var ht={};t.r(ht),t.d(ht,{me_g1_aht11:()=>Lb,me_g1_hp203:()=>Nb,me_g1_rfid_readcontent:()=>Fb,me_g1_rfid_readid:()=>fb,me_g1_rfid_status:()=>Yb,me_g1_rfid_write:()=>Pb,me_g1_rfid_write_outcome:()=>vb,me_g1_varistor:()=>Db});var Mt={};t.r(Mt),t.d(Mt,{analog_input:()=>kb,analog_output:()=>Wb,espnow_channel:()=>Ub,haskylens_model:()=>wb,i2c_A_pin:()=>Kb,i2c_B_pin:()=>Jb,pins_analog:()=>$b,pins_analog_pin:()=>Zb,pins_axis:()=>Iy,pins_brightness:()=>My,pins_builtinimg:()=>py,pins_builtinimg_extern:()=>uy,pins_button:()=>Xb,pins_buttonB:()=>bb,pins_dac:()=>ny,pins_dac_pin:()=>iy,pins_digital:()=>xb,pins_digital_dot:()=>Sy,pins_digital_pin:()=>yb,pins_exlcdh:()=>Ty,pins_exlcdv:()=>hy,pins_imglist:()=>ry,pins_input_pin:()=>Vb,pins_interrupt:()=>_y,pins_one_more:()=>Cy,pins_output_pin:()=>Bb,pins_playlist:()=>ly,pins_playlist_extern:()=>dy,pins_pwm:()=>ey,pins_pwm_input:()=>Gb,pins_pwm_pin:()=>ty,pins_radio_datarate:()=>gy,pins_radio_power:()=>cy,pins_serial:()=>ay,pins_tone_notes:()=>Ry,pins_touch:()=>oy,pins_touch_pin:()=>sy,pins_tts_bgmusic:()=>Ey,pins_tts_builtin_music:()=>Oy,pins_tts_voice:()=>my,pwm_output:()=>Hb,spi_A_pin:()=>Qb,spi_B_pin:()=>qb,spi_C_pin:()=>zb,spi_D_pin:()=>jb});const mt=Blockly,Ot=Mixly,Et={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Rt=Et; +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Dt,controls_typeLists:()=>ft,variables_change:()=>Lt,variables_get:()=>St,variables_global:()=>Nt,variables_set:()=>At});var i={};t.r(i),t.d(i,{base_setup:()=>vt,controls_delay:()=>Yt,controls_end_program:()=>xt,controls_except:()=>Jt,controls_finally:()=>qt,controls_flow_statements:()=>Gt,controls_for:()=>Ut,controls_forEach:()=>yt,controls_for_range:()=>wt,controls_if:()=>Xt,controls_if_else:()=>Wt,controls_if_elseif:()=>Ht,controls_if_if:()=>kt,controls_lambda:()=>zt,controls_main:()=>Pt,controls_pass:()=>jt,controls_range:()=>bt,controls_repeat_ext:()=>Qt,controls_thread:()=>Zt,controls_try:()=>Kt,controls_try_finally:()=>Bt,controls_whileUntil:()=>Vt,do_while:()=>$t,garbage_collection:()=>te,get_mem_alloc:()=>ee,get_mem_free:()=>ie,get_unique_identifier:()=>ne});var n={};t.r(n),t.d(n,{base_map:()=>Se,math_arithmetic:()=>pe,math_bit:()=>re,math_constant:()=>_e,math_constant_mp:()=>ae,math_constrain:()=>me,math_dec:()=>de,math_indexer_number:()=>Ee,math_map:()=>Oe,math_max_min:()=>Te,math_number:()=>oe,math_number_base_conversion:()=>he,math_random:()=>Me,math_random_seed:()=>Re,math_round:()=>ce,math_selfcalcu:()=>ue,math_to_int:()=>Ie,math_trig:()=>le,text_to_number:()=>ge,text_to_number_skulpt:()=>Ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>Fe,char_to_ascii:()=>Pe,number_to_text:()=>ve,os_system:()=>ni,text:()=>Le,text_capital:()=>Ue,text_center:()=>we,text_char:()=>De,text_char_at:()=>Xe,text_char_at2:()=>xe,text_char_at3:()=>$e,text_compareTo:()=>Ze,text_compare_to:()=>Ge,text_create_with_container:()=>Qe,text_create_with_item:()=>ze,text_encode:()=>ei,text_equals_starts_ends:()=>Be,text_eval:()=>ii,text_find:()=>ke,text_format:()=>qe,text_format_noreturn:()=>ti,text_join:()=>fe,text_join_seq:()=>He,text_length:()=>Ye,text_random_char:()=>be,text_replace:()=>We,text_split:()=>Ke,text_strip:()=>Je,text_substring:()=>Ve,text_substring2:()=>ye,text_substring3:()=>je,text_textarea:()=>Ne});var o={};t.r(o),t.d(o,{list_many_input:()=>Li,list_tolist:()=>Yi,list_tolist2:()=>Ui,list_trig:()=>Ci,lists_2d_get_col_row_data:()=>pi,lists_2d_get_data_with_col_row:()=>ai,lists_append_extend:()=>Ti,lists_change_to:()=>Ai,lists_change_to_general:()=>Di,lists_clear:()=>Ei,lists_create_with:()=>ui,lists_create_with2:()=>xi,lists_create_with_container:()=>li,lists_create_with_item:()=>di,lists_create_with_noreturn:()=>Ni,lists_create_with_text:()=>ri,lists_create_with_text2:()=>Xi,lists_del_general:()=>fi,lists_find:()=>gi,lists_getIndex3:()=>bi,lists_getSublist3:()=>yi,lists_get_index:()=>oi,lists_get_random_item:()=>hi,lists_get_random_sublist:()=>Mi,lists_get_sublist:()=>_i,lists_insert_value:()=>mi,lists_insert_value2:()=>Bi,lists_pop:()=>ci,lists_remove_at:()=>Ri,lists_remove_at2:()=>Gi,lists_reverse:()=>Oi,lists_setIndex3:()=>Vi,lists_set_index:()=>Ii,lists_sort:()=>Si,lists_zip:()=>Fi,lists_zip_container:()=>Pi,lists_zip_item:()=>vi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>sn,dicts_add_or_change:()=>Qi,dicts_clear:()=>Zi,dicts_create_with:()=>ki,dicts_create_with_container:()=>Hi,dicts_create_with_item:()=>Wi,dicts_create_with_noreturn:()=>an,dicts_deldict:()=>nn,dicts_delete:()=>zi,dicts_get:()=>Ji,dicts_get_default:()=>qi,dicts_items:()=>$i,dicts_keys:()=>Ki,dicts_length:()=>en,dicts_pop:()=>on,dicts_setdefault:()=>_n,dicts_to_json:()=>un,dicts_todict:()=>pn,dicts_update:()=>ji,dicts_values:()=>tn,json_to_dicts:()=>rn});var a={};t.r(a),t.d(a,{logic_boolean:()=>Mn,logic_compare:()=>dn,logic_compare_continous:()=>In,logic_is:()=>Rn,logic_is_in:()=>En,logic_negate:()=>hn,logic_null:()=>mn,logic_operation:()=>Tn,logic_tobool:()=>cn,logic_true_or_false:()=>On});var p={};t.r(p),t.d(p,{sdcard_mount:()=>Hn,sdcard_use_spi_init:()=>kn,storage_can_write_ornot:()=>Fn,storage_change_dir:()=>Un,storage_close_file:()=>vn,storage_delete_file:()=>xn,storage_file_seek:()=>yn,storage_file_tell:()=>bn,storage_file_write:()=>Ln,storage_fileopen:()=>Cn,storage_fileopen_new:()=>Sn,storage_fileopen_new_encoding:()=>An,storage_get_a_line:()=>fn,storage_get_contents:()=>Dn,storage_get_contents_without_para:()=>Nn,storage_get_current_dir:()=>Vn,storage_get_file_size:()=>Xn,storage_get_filename:()=>Pn,storage_is_file:()=>wn,storage_list_all_files:()=>Yn,storage_make_dir:()=>Bn,storage_open_file_with_os:()=>gn,storage_rename:()=>Gn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>jn,procedures_callreturn:()=>Zn,procedures_defnoreturn:()=>Jn,procedures_defreturn:()=>qn,procedures_ifreturn:()=>$n,procedures_mutatorarg:()=>zn,procedures_mutatorcontainer:()=>Qn,procedures_return:()=>ts});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ds,tuple_create_with:()=>is,tuple_create_with_container:()=>ns,tuple_create_with_item:()=>ss,tuple_create_with_noreturn:()=>Ms,tuple_create_with_text2:()=>os,tuple_create_with_text_return:()=>_s,tuple_del:()=>us,tuple_find:()=>Is,tuple_getIndex:()=>as,tuple_getSublist:()=>hs,tuple_get_random_item:()=>Os,tuple_get_sublist:()=>ms,tuple_join:()=>rs,tuple_length:()=>ps,tuple_max:()=>ls,tuple_totuple:()=>Es,tuple_trig:()=>Ts});var l={};t.r(l),t.d(l,{set_add_discard:()=>fs,set_clear:()=>Ls,set_create_with:()=>cs,set_create_with_container:()=>gs,set_create_with_item:()=>Cs,set_create_with_text_return:()=>vs,set_length:()=>Ss,set_operate:()=>Ns,set_operate_update:()=>Ds,set_pop:()=>As,set_sub:()=>Fs,set_toset:()=>Ys,set_update:()=>Ps});var d={};t.r(d),t.d(d,{html_content:()=>Vs,html_content_more:()=>Bs,html_document:()=>Xs,html_form:()=>Us,html_head_body:()=>ys,html_style:()=>Gs,html_style_color:()=>ks,html_style_content:()=>ws,html_text:()=>Hs,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>so,function_call:()=>eo,function_call_container:()=>io,function_call_item:()=>no,raw_block:()=>Js,raw_empty:()=>Qs,raw_expression:()=>qs,raw_table:()=>Ks,text_comment:()=>zs,text_print_multiple:()=>Zs,text_print_multiple_container:()=>$s,text_print_multiple_item:()=>to,type_check:()=>js});var T={};t.r(T),t.d(T,{controls_type:()=>uo,controls_typeLists:()=>ro,variables_change:()=>ao,variables_get:()=>oo,variables_global:()=>po,variables_set:()=>_o});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>co,base_setup:()=>Io,controls_delay:()=>Ro,controls_flow_statements:()=>Eo,controls_for:()=>Mo,controls_forEach:()=>Lo,controls_for_range:()=>mo,controls_if:()=>To,controls_interrupts:()=>So,controls_lambda:()=>Do,controls_main:()=>lo,controls_millis:()=>go,controls_nointerrupts:()=>Ao,controls_pass:()=>Fo,controls_range:()=>No,controls_repeat:()=>Vo,controls_repeat_ext:()=>Yo,controls_thread:()=>Po,controls_try_finally:()=>ho,controls_whileUntil:()=>Oo,do_while:()=>vo,garbage_collection:()=>xo,get_mem_alloc:()=>Xo,get_mem_free:()=>bo,get_unique_identifier:()=>yo,reset:()=>Co,time_sleep:()=>fo});var M={};t.r(M),t.d(M,{base_map:()=>o_,math_arithmetic:()=>ko,math_bit:()=>wo,math_constant:()=>Go,math_constant_mp:()=>Uo,math_constrain:()=>Zo,math_dec:()=>Jo,math_indexer_number:()=>e_,math_map:()=>jo,math_max_min:()=>Qo,math_number:()=>Bo,math_number_base_conversion:()=>$o,math_random:()=>zo,math_random_seed:()=>t_,math_round:()=>i_,math_selfcalcu:()=>Ho,math_single:()=>Wo,math_to_int:()=>qo,math_trig:()=>Ko,text_to_number:()=>n_,text_to_number_skulpt:()=>s_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>r_,char_to_ascii:()=>l_,number_to_text:()=>d_,os_system:()=>X_,text:()=>__,text_capital:()=>c_,text_center:()=>g_,text_char:()=>p_,text_char_at:()=>h_,text_char_at2:()=>T_,text_char_at3:()=>v_,text_compareTo:()=>P_,text_compare_to:()=>O_,text_encode:()=>Y_,text_equals_starts_ends:()=>m_,text_eval:()=>x_,text_find:()=>C_,text_format:()=>D_,text_format_noreturn:()=>f_,text_join:()=>u_,text_join_seq:()=>S_,text_length:()=>I_,text_random_char:()=>M_,text_replace:()=>A_,text_split:()=>L_,text_strip:()=>N_,text_substring:()=>R_,text_substring2:()=>E_,text_substring3:()=>F_,text_textarea:()=>a_});var O={};t.r(O),t.d(O,{list_many_input:()=>ea,list_tolist:()=>Ia,list_tolist2:()=>Ta,list_trig:()=>Z_,lists_2d_get_col_row_data:()=>V_,lists_2d_get_data_with_col_row:()=>y_,lists_append_extend:()=>k_,lists_change_to:()=>ta,lists_change_to_general:()=>na,lists_clear:()=>q_,lists_create_with:()=>B_,lists_create_with2:()=>oa,lists_create_with_noreturn:()=>ia,lists_create_with_text:()=>G_,lists_create_with_text2:()=>_a,lists_del_general:()=>sa,lists_find:()=>Q_,lists_getIndex3:()=>aa,lists_getSublist3:()=>pa,lists_get_index:()=>U_,lists_get_random_item:()=>H_,lists_get_random_sublist:()=>W_,lists_get_sublist:()=>b_,lists_insert_value:()=>K_,lists_insert_value2:()=>ra,lists_pop:()=>j_,lists_remove_at:()=>z_,lists_remove_at2:()=>la,lists_reverse:()=>J_,lists_setIndex3:()=>ua,lists_set_index:()=>w_,lists_sort:()=>$_,lists_zip:()=>da});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Na,dicts_add_or_change:()=>Ea,dicts_clear:()=>ga,dicts_create_with:()=>ha,dicts_create_with_noreturn:()=>Fa,dicts_deldict:()=>La,dicts_delete:()=>Ra,dicts_get:()=>ma,dicts_get_default:()=>Oa,dicts_items:()=>Ca,dicts_keys:()=>Ma,dicts_length:()=>Aa,dicts_pop:()=>Da,dicts_setdefault:()=>fa,dicts_to_json:()=>va,dicts_todict:()=>Pa,dicts_update:()=>ca,dicts_values:()=>Sa,json_to_dicts:()=>Ya});var R={};t.r(R),t.d(R,{logic_boolean:()=>Va,logic_compare:()=>xa,logic_compare_continous:()=>Xa,logic_is:()=>wa,logic_is_in:()=>Ua,logic_negate:()=>ya,logic_null:()=>Ba,logic_operation:()=>ba,logic_tobool:()=>ka,logic_true_or_false:()=>Ga});var c={};t.r(c),t.d(c,{sdcard_mount:()=>dp,sdcard_use_spi_init:()=>lp,storage_can_write_ornot:()=>Za,storage_change_dir:()=>_p,storage_close_file:()=>tp,storage_delete_file:()=>ip,storage_file_seek:()=>op,storage_file_tell:()=>sp,storage_file_write:()=>qa,storage_fileopen:()=>Wa,storage_fileopen_new:()=>Ka,storage_fileopen_new_encoding:()=>Ja,storage_get_a_line:()=>ja,storage_get_contents:()=>za,storage_get_contents_without_para:()=>Qa,storage_get_current_dir:()=>ap,storage_get_file_size:()=>np,storage_get_filename:()=>$a,storage_is_file:()=>rp,storage_list_all_files:()=>ep,storage_make_dir:()=>pp,storage_open_file_with_os:()=>Ha,storage_rename:()=>up});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Mp,procedures_callreturn:()=>hp,procedures_defnoreturn:()=>Tp,procedures_defreturn:()=>Ip,procedures_ifreturn:()=>mp,procedures_return:()=>Op});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Np,tuple_create_with:()=>Ep,tuple_create_with_noreturn:()=>Pp,tuple_create_with_text2:()=>Rp,tuple_create_with_text_return:()=>cp,tuple_del:()=>Sp,tuple_find:()=>Dp,tuple_getIndex:()=>gp,tuple_getSublist:()=>Fp,tuple_get_random_item:()=>Yp,tuple_get_sublist:()=>vp,tuple_join:()=>Ap,tuple_length:()=>Cp,tuple_max:()=>Lp,tuple_totuple:()=>xp,tuple_trig:()=>fp});var S={};t.r(S),t.d(S,{set_add_discard:()=>Up,set_clear:()=>Vp,set_create_with:()=>Xp,set_create_with_text_return:()=>Hp,set_length:()=>bp,set_operate:()=>Bp,set_operate_update:()=>Gp,set_pop:()=>yp,set_sub:()=>wp,set_toset:()=>Wp,set_update:()=>kp});var A={};t.r(A),t.d(A,{html_content:()=>Qp,html_content_more:()=>zp,html_document:()=>Kp,html_form:()=>Zp,html_head_body:()=>qp,html_style:()=>jp,html_style_content:()=>$p,html_text:()=>tu,html_title:()=>Jp});var L={};t.r(L),t.d(L,{attribute_access:()=>au,function_call:()=>_u,raw_block:()=>eu,raw_empty:()=>nu,raw_expression:()=>iu,raw_table:()=>su,type_check:()=>ou});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>Eu,actuator_extern_get_led_state:()=>Ru,actuator_extern_led_bright:()=>Ou,actuator_extern_led_brightness:()=>cu,actuator_ms32006_dcmotor:()=>Fu,actuator_ms32006_init:()=>fu,actuator_ms32006_stepper:()=>Pu,actuator_neopixel_init:()=>vu,actuator_neopixel_rgb:()=>Yu,actuator_neopixel_rgb_all:()=>xu,actuator_neopixel_write:()=>Xu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>hu,esp32_music_pitch:()=>lu,esp32_music_pitch_init:()=>ru,esp32_music_pitch_with_time:()=>du,esp32_music_play_list:()=>Iu,esp32_music_reset_extern:()=>Mu,esp32_music_set_tempo_extern:()=>Tu,esp32_music_stop:()=>mu,mixbot_actuator_extern_get_addr:()=>tr,mixbot_actuator_extern_set_addr:()=>er,mixbot_addr_extern:()=>Uu,robot_led_extern:()=>Wu,robot_led_extern_get_value:()=>Ku,robot_motor_extern:()=>wu,robot_motor_extern_get_speed:()=>ku,robot_servo_extern_absolute_run:()=>zu,robot_servo_extern_get_status:()=>Ju,robot_servo_extern_relative_continue:()=>$u,robot_servo_extern_relative_origin:()=>ju,robot_servo_extern_relative_run:()=>Zu,robot_servo_extern_stop:()=>Qu,robot_servo_extern_stop_mode:()=>qu,robot_traffic_light_extern:()=>Hu,servo_get_angle:()=>Nu,servo_get_speed:()=>Du,servo_init:()=>gu,servo_move:()=>Cu,servo_set_angle:()=>Au,servo_set_speed:()=>Lu,servo_speed_360:()=>Su,syn6288_builtin_voice:()=>Bu,syn6288_get_voice:()=>Vu,syn6288_set_voice:()=>yu,syn6288_tts_play:()=>Gu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Yr,actuator_dc_motor_stop:()=>xr,actuator_get_led_bright:()=>_r,actuator_get_led_state:()=>ar,actuator_led_bright:()=>or,actuator_led_brightness:()=>pr,actuator_mixbot_buzzer_on_off:()=>Br,actuator_mixgo_nova_mic_get:()=>Hr,actuator_mixgo_nova_mic_set:()=>kr,actuator_mixgo_nova_onboard_music_pitch:()=>zr,actuator_mixgo_nova_onboard_music_stop:()=>jr,actuator_mixgo_nova_play_audio:()=>qr,actuator_mixgo_nova_play_online_audio:()=>Qr,actuator_mixgo_nova_record_audio:()=>Jr,actuator_mixgo_nova_voice_get:()=>Kr,actuator_mixgo_nova_voice_set:()=>Wr,actuator_mixgo_zero_led_color:()=>ur,actuator_onboard_neopixel_rgb:()=>hr,actuator_onboard_neopixel_rgb_all:()=>Mr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Or,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>mr,actuator_onboard_neopixel_write:()=>Er,actuator_rm_onboard_neopixel_rgb:()=>Rr,actuator_rm_onboard_neopixel_rgb_all:()=>cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>gr,actuator_stepper_keep:()=>Pr,actuator_stepper_stop:()=>vr,analog_keyboard_input:()=>el,analog_keyboard_str:()=>ul,analog_mouse_input:()=>al,bitbot_motor:()=>wr,bitbot_move:()=>Gr,bitbot_stop:()=>Ur,cc_number:()=>Tr,esp32_music_get_tempo:()=>Sr,esp32_music_reset:()=>Ar,esp32_music_set_tempo:()=>Cr,esp32_onboard_music_pitch:()=>Lr,esp32_onboard_music_pitch_with_time:()=>Nr,esp32_onboard_music_play_list:()=>fr,esp32_onboard_music_stop:()=>Dr,general_key:()=>nl,general_key_tuple:()=>sl,generalkey_container:()=>ol,generalkey_create_with_item:()=>_l,get_power_output:()=>$r,ledswitch:()=>sr,mixbot_motor:()=>Vr,mixbot_motor_status:()=>Xr,mixbot_move:()=>br,mixbot_stop:()=>yr,mouse_key:()=>pl,number:()=>nr,rm_actuator_get_led_bright:()=>lr,rm_actuator_get_led_state:()=>dr,rm_actuator_led_bright:()=>rr,rm_actuator_led_brightness:()=>Ir,rm_motor:()=>Fr,set_all_power_output:()=>tl,set_power_output:()=>Zr,special_key:()=>il});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>kl,ai_sensor_ailocal_class:()=>vl,ai_sensor_ailocal_class_result:()=>Yl,ai_sensor_ailocal_train:()=>Pl,ai_sensor_asr_recognize:()=>Vl,ai_sensor_audio_play:()=>Xl,ai_sensor_audio_record:()=>xl,ai_sensor_barcode:()=>ml,ai_sensor_circle:()=>Cl,ai_sensor_classifier_faces:()=>wl,ai_sensor_color:()=>Nl,ai_sensor_color_chases:()=>Fl,ai_sensor_color_chases_result:()=>fl,ai_sensor_config:()=>hl,ai_sensor_face:()=>Ul,ai_sensor_find_20objects:()=>Hl,ai_sensor_find_barcodes:()=>Ol,ai_sensor_find_circles:()=>Sl,ai_sensor_find_colors:()=>Dl,ai_sensor_find_licenseplates:()=>Gl,ai_sensor_find_lines:()=>gl,ai_sensor_find_qrcodes:()=>Tl,ai_sensor_find_rects:()=>Ll,ai_sensor_find_tags:()=>Rl,ai_sensor_licenseplate:()=>Bl,ai_sensor_line:()=>cl,ai_sensor_qrcode:()=>dl,ai_sensor_qrcode_lite:()=>Il,ai_sensor_rect:()=>Al,ai_sensor_rgb:()=>Ml,ai_sensor_tag:()=>El,ai_sensor_use_uart_init:()=>ll,ai_sensor_yolo_recognize:()=>bl,ai_sensor_yolo_recognize_result:()=>yl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Jl,MICROPYTHON_AI_Speech_unit:()=>Kl,MICROPYTHON_AI_client:()=>Wl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>pd,mpython_blynk_app_notify:()=>ed,mpython_blynk_email:()=>sd,mpython_blynk_get_timers:()=>od,mpython_blynk_on_connected:()=>Zl,mpython_blynk_on_disconnected:()=>jl,mpython_blynk_run:()=>td,mpython_blynk_sensor_data_to_app:()=>ad,mpython_blynk_set_property:()=>nd,mpython_blynk_setup:()=>ud,mpython_blynk_stop_timers:()=>id,mpython_blynk_sync_virtual:()=>zl,mpython_blynk_terminal_widget_vpin:()=>Ql,mpython_blynktimer:()=>_d,mpython_blynktimer_run:()=>$l});var v={};t.r(v),t.d(v,{cc_g1_init:()=>rd,cc_g1_read_bat:()=>ld,cc_g1_read_joystick:()=>dd,cc_g1_read_key:()=>Id,cc_g1_turnoff:()=>Td});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>Cd,ce_go_get_led_bright:()=>Od,ce_go_get_led_state:()=>Ed,ce_go_hall_attachInterrupt:()=>Sd,ce_go_hall_data:()=>Ld,ce_go_hall_initialize:()=>Ad,ce_go_led_bright:()=>md,ce_go_led_brightness:()=>Rd,ce_go_light_number:()=>Md,ce_go_pin_light:()=>Pd,ce_go_pin_near:()=>Dd,ce_go_pin_near_line:()=>Nd,ce_go_pin_near_state_change:()=>fd,ce_go_stepper_keep:()=>cd,ce_go_stepper_stop:()=>gd,sensor_mixgome_eulerangles:()=>Fd});var x={};t.r(x),t.d(x,{communicate_bluetooth_central_init:()=>II,communicate_bluetooth_connect:()=>mI,communicate_bluetooth_disconnect:()=>OI,communicate_bluetooth_handle:()=>CI,communicate_bluetooth_is_connected:()=>RI,communicate_bluetooth_mac:()=>MI,communicate_bluetooth_peripheral_init:()=>TI,communicate_bluetooth_recv:()=>cI,communicate_bluetooth_recv_only:()=>gI,communicate_bluetooth_scan:()=>hI,communicate_bluetooth_send:()=>EI,communicate_espnow_init:()=>SI,communicate_espnow_init_new:()=>AI,communicate_i2c_available:()=>Qd,communicate_i2c_init:()=>Xd,communicate_i2c_master_read:()=>qd,communicate_i2c_onboard:()=>Yd,communicate_i2c_read:()=>bd,communicate_i2c_scan:()=>Vd,communicate_i2c_write:()=>yd,communicate_ir_recv_init:()=>nI,communicate_ir_send_init:()=>pI,communicate_ow_init:()=>jd,communicate_ow_read:()=>$d,communicate_ow_reset:()=>iI,communicate_ow_scan:()=>Zd,communicate_ow_select:()=>eI,communicate_ow_write:()=>tI,communicate_spi_buffer:()=>Ud,communicate_spi_init:()=>Bd,communicate_spi_onboard:()=>xd,communicate_spi_read:()=>wd,communicate_spi_read_output:()=>kd,communicate_spi_readinto:()=>Hd,communicate_spi_readinto_output:()=>Wd,communicate_spi_set:()=>Gd,communicate_spi_write:()=>Kd,communicate_spi_write_readinto:()=>Jd,espnow_radio_channel:()=>PI,espnow_radio_channel_new:()=>YI,espnow_radio_on_off:()=>xI,espnow_radio_rec:()=>bI,espnow_radio_recv:()=>VI,espnow_radio_recv_certain_msg:()=>BI,espnow_radio_recv_certain_msg_new:()=>UI,espnow_radio_recv_msg:()=>yI,espnow_radio_recv_new:()=>GI,espnow_radio_send:()=>XI,espnow_radio_txpower:()=>vI,i2c_available:()=>uT,i2c_init:()=>QI,i2c_master_reader2:()=>pT,i2c_read:()=>zI,i2c_scan:()=>ZI,i2c_slave_onreceive:()=>zd,i2c_write:()=>jI,internal_variable:()=>sI,ir_recv_timeout:()=>aI,ir_transmit_busy:()=>dI,ir_transmit_conventional_data:()=>uI,ir_transmit_raw_code:()=>lI,ir_transmit_study_code:()=>rI,ir_whether_recv:()=>_I,lora_init:()=>wI,lora_packet:()=>kI,lora_recv:()=>WI,lora_send:()=>HI,network_espnow_info:()=>NI,network_espnow_mac:()=>LI,network_espnow_recv:()=>DI,network_espnow_recv_handle:()=>FI,network_espnow_send:()=>fI,recv_fun:()=>oI,spi_buffer:()=>eT,spi_init:()=>$I,spi_read:()=>iT,spi_read_output:()=>nT,spi_readinto:()=>sT,spi_readinto_output:()=>oT,spi_set:()=>tT,spi_write:()=>_T,spi_write_readinto:()=>aT,urequests_attribute:()=>JI,urequests_get:()=>KI,urequests_method:()=>qI});var X={};t.r(X),t.d(X,{display_animate:()=>BT,display_blink_rate:()=>XT,display_circle:()=>GT,display_color_seclet:()=>ZT,display_draw_4strings:()=>fT,display_fill:()=>VT,display_get_screen_image:()=>xT,display_help:()=>wT,display_image_size:()=>FT,display_lcd_use_i2c_init:()=>sh,display_line:()=>vT,display_line_arbitrarily:()=>YT,display_matrix_extern_bright_point:()=>cT,display_matrix_extern_bright_screen:()=>CT,display_matrix_extern_clear:()=>ST,display_matrix_extern_get_pixel:()=>RT,display_matrix_extern_get_screen_pixel:()=>gT,display_matrix_extern_image_builtins:()=>AT,display_matrix_extern_scroll_string:()=>hT,display_matrix_extern_scroll_string_delay:()=>MT,display_matrix_extern_shift:()=>ET,display_matrix_extern_show_frame_string:()=>mT,display_matrix_extern_show_frame_string_delay:()=>OT,display_matrix_extern_show_image:()=>IT,display_matrix_extern_show_image_or_string_delay:()=>TT,display_matrix_use_i2c_init:()=>dT,display_oled_drawPixel:()=>HT,display_oled_showBitmap:()=>kT,display_oled_use_i2c_init:()=>uh,display_onoff:()=>yT,display_rect:()=>PT,display_rgb_color:()=>bT,display_tm1650_power:()=>KT,display_tm1650_set_brightness:()=>QT,display_tm1650_show_dot:()=>qT,display_tm1650_show_num:()=>JT,display_tm_use_i2c_init:()=>WT,display_triangle:()=>UT,display_use_i2c_init:()=>DT,extern_oled_bright_point:()=>Rh,extern_oled_clear:()=>ch,extern_oled_get_pixel:()=>Eh,extern_oled_hvline:()=>Ch,extern_oled_line:()=>Sh,extern_oled_scroll_string:()=>Th,extern_oled_scroll_string_delay:()=>hh,extern_oled_shape_rect:()=>gh,extern_oled_shift:()=>Oh,extern_oled_show_frame_string:()=>Mh,extern_oled_show_frame_string_delay:()=>mh,extern_oled_show_image:()=>rh,extern_oled_show_image_or_string_delay:()=>Ih,extern_oled_show_image_xy:()=>lh,extern_oled_show_string:()=>dh,lcd_backlight:()=>ah,lcd_clear:()=>ph,lcd_print_string:()=>_h,lcd_show_image_or_string_delay:()=>oh,matrix_extern_image_arithmetic:()=>LT,matrix_extern_image_invert:()=>NT,tft_fill:()=>ih,tft_line_arbitrarily:()=>nh,tft_scroll_string_delay:()=>th,tft_show_frame_string_delay:()=>eh,tft_show_image_or_string_delay:()=>$T,tft_show_image_xy:()=>jT,tft_use_spi_init:()=>zT});var b={};t.r(b),t.d(b,{bitbot_display_image_create:()=>uM,display_bright_point:()=>Bh,display_bright_screen:()=>Uh,display_clear:()=>wh,display_get_pixel:()=>Vh,display_get_screen_pixel:()=>Gh,display_image_builtins:()=>Yh,display_image_builtins_all:()=>xh,display_image_create:()=>vh,display_scroll_string:()=>Dh,display_scroll_string_delay:()=>fh,display_shift:()=>yh,display_show_frame_string:()=>Fh,display_show_frame_string_delay:()=>Ph,display_show_image:()=>Lh,display_show_image_or_string_delay:()=>Nh,image_arithmetic:()=>Xh,image_invert:()=>bh,mixbot_display_bright_screen:()=>aM,mixbot_display_get_ambientbright:()=>_M,mixbot_display_get_screen_pixel:()=>oM,mixbot_display_image_create:()=>sM,mixbot_display_rotate:()=>pM,mixgo_display_image_create_new:()=>Wh,mixgome_display_font:()=>Kh,mixgome_display_image_create:()=>kh,mixgomini_display_image_create:()=>Hh,mpython_display_hvline:()=>eM,mpython_display_line:()=>iM,mpython_display_shape_rect:()=>tM,mpython_pbm_image:()=>nM,onboard_oled_bright_point:()=>$h,onboard_oled_scroll_string_delay:()=>jh,onboard_oled_show_frame_string_delay:()=>Zh,onboard_oled_show_image:()=>Jh,onboard_oled_show_image_or_string_delay:()=>zh,onboard_oled_show_image_xy:()=>qh,onboard_oled_show_string:()=>Qh,onboard_tft_bright_point:()=>gM,onboard_tft_bright_screen:()=>AM,onboard_tft_clear:()=>CM,onboard_tft_clock_clear:()=>PM,onboard_tft_clock_draw:()=>FM,onboard_tft_clock_get_rtctime:()=>DM,onboard_tft_clock_init:()=>NM,onboard_tft_clock_set_time:()=>fM,onboard_tft_display_hvline:()=>OM,onboard_tft_display_line:()=>EM,onboard_tft_display_shape_circle:()=>vM,onboard_tft_display_shape_rect:()=>mM,onboard_tft_fill:()=>LM,onboard_tft_get_pixel:()=>cM,onboard_tft_get_screen_pixel:()=>SM,onboard_tft_scroll_string:()=>IM,onboard_tft_scroll_string_delay:()=>TM,onboard_tft_shift:()=>RM,onboard_tft_show_frame_string:()=>hM,onboard_tft_show_frame_string_delay:()=>MM,onboard_tft_show_image:()=>rM,onboard_tft_show_image_or_string_delay:()=>dM,onboard_tft_show_image_xy:()=>lM});var y={};t.r(y),t.d(y,{factory_block:()=>kM,factory_block_return:()=>HM,factory_block_return_with_textarea:()=>KM,factory_block_with_textarea:()=>WM,factory_callMethod_noreturn:()=>UM,factory_callMethod_return:()=>wM,factory_create_with_container:()=>yM,factory_create_with_item:()=>VM,factory_declare:()=>GM,factory_from_import:()=>xM,factory_function_noreturn:()=>bM,factory_function_return:()=>BM,factory_import:()=>XM,folding_block:()=>JM});var V={};t.r(V),t.d(V,{controls_pin_attachInterrupt:()=>hm,inout_analog_atten:()=>nm,inout_analog_read:()=>im,inout_analog_read_init:()=>um,inout_analog_write:()=>$M,inout_analog_write_init:()=>pm,inout_analog_write_set:()=>tm,inout_analog_write_set_freq:()=>dm,inout_digital_init:()=>_m,inout_digital_read:()=>jM,inout_digital_write:()=>zM,inout_highlow:()=>QM,inout_pinMode:()=>lm,inout_pin_attachInterrupt:()=>om,inout_pin_pressed:()=>sm,inout_pin_pressed_init:()=>rm,inout_pwm_analog_write:()=>ZM,inout_pwm_analog_write_init:()=>am,inout_pwm_analog_write_set_freq:()=>em,pin_pressed:()=>Tm,pin_pressed_init:()=>Im});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>Bm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Vm,IOT_EMQX_PING:()=>bm,IOT_FORMATTING:()=>xm,IOT_FORMAT_STRING:()=>Xm,IOT_MIXIO_NTP:()=>ym,IOT_MIXIO_PUBLISH:()=>Nm,IOT_MIXIO_SUBSCRIBE:()=>Dm,iot_checkonenet:()=>Qm,iot_client_onboard:()=>Um,iot_create_with_item:()=>Am,iot_http_client:()=>wm,iot_http_data:()=>km,iot_mixio_check:()=>Pm,iot_mixio_connect:()=>Lm,iot_mixio_connect_only:()=>Fm,iot_mixio_disconnect:()=>fm,iot_mixio_format_msg:()=>Ym,iot_mixio_format_topic:()=>vm,iot_mixly_key:()=>Gm,iot_mqtt_client:()=>Hm,iot_mqtt_data:()=>Wm,iot_onenet_check:()=>Rm,iot_onenet_connect:()=>Om,iot_onenet_disconnect:()=>Em,iot_onenet_publish:()=>gm,iot_onenet_publish_dict:()=>cm,iot_onenetconnect:()=>Jm,iot_onenetdisconnect:()=>qm,iot_publish:()=>zm,iot_publish_container:()=>Cm,iot_publish_item:()=>Sm,iot_wifi_connect:()=>mm,iot_wificonnect:()=>Km});var G={};t.r(G),t.d(G,{network_ap_connect:()=>lO,network_connect:()=>iO,network_get_connect:()=>pO,network_get_wifi:()=>rO,network_init:()=>Zm,network_is_active:()=>tO,network_open:()=>$m,network_scan:()=>eO,network_server:()=>dO,network_socket_accept:()=>mO,network_socket_bind:()=>TO,network_socket_close:()=>gO,network_socket_connect:()=>hO,network_socket_init:()=>IO,network_socket_listen:()=>MO,network_socket_receive:()=>OO,network_socket_receive_from:()=>RO,network_socket_send:()=>EO,network_socket_send_to:()=>cO,network_stop:()=>uO,network_wifi_connect:()=>nO,ntptime_address:()=>NO,ntptime_time:()=>LO,requests_attribute:()=>SO,requests_get:()=>CO,requests_method:()=>AO,urequests_connect_url:()=>_O,urequests_response:()=>aO,urequests_wifi_connect:()=>sO,urequests_wifi_url:()=>oO});var U={};t.r(U),t.d(U,{HCSR04:()=>DE,PS2_Button:()=>vE,PS2_Buttons:()=>xE,PS2_Buttons_new:()=>VE,PS2_State:()=>YE,PS2_init:()=>fE,PS2_init_new:()=>bE,PS2_stk:()=>XE,PS2_stk_new:()=>BE,PS2_vibration:()=>PE,PS2_vibration_new:()=>yE,esp32_s2_weather_init:()=>SE,esp32_s2_weather_rain:()=>LE,esp32_s2_weather_wd:()=>AE,esp32_s2_weather_ws:()=>NE,extern_rfid_read:()=>rE,extern_rfid_readcontent:()=>dE,extern_rfid_readid:()=>lE,extern_rfid_status:()=>hE,extern_rfid_write:()=>IE,extern_rfid_write_return:()=>TE,gnss_get_data:()=>kE,gnss_have_data:()=>wE,mixbot_sensor_extern_get_addr:()=>zE,mixbot_sensor_extern_set_addr:()=>jE,pm25_get_data:()=>UE,robot_button_extern_get_value:()=>HE,robot_color_extern_get_value:()=>QE,robot_infrared_extern_get_value:()=>KE,robot_infrared_extern_grey_get_value:()=>JE,robot_potentiometer_extern_get_value:()=>qE,robot_sonar_extern_get_value:()=>ZE,robot_sonar_extern_led:()=>$E,robot_touch_extern_get_value:()=>WE,sensor_APDS9960_extern:()=>KO,sensor_LTR308_extern:()=>JO,sensor_LTR390UV_extern:()=>QO,sensor_MAX30102_extern:()=>WO,sensor_QMC5883L_extern:()=>tE,sensor_VL530LX_extern:()=>zO,sensor_adxl345_get_acceleration:()=>xO,sensor_aht11_extern:()=>ZO,sensor_bmp:()=>GO,sensor_compass_reset:()=>pE,sensor_dht11:()=>bO,sensor_ds18x20:()=>wO,sensor_hp203_extern:()=>$O,sensor_light_level:()=>XO,sensor_lm35:()=>kO,sensor_ltr381_extern:()=>qO,sensor_mixgo_extern_button_attachInterrupt:()=>vO,sensor_mixgo_extern_button_get_presses:()=>PO,sensor_mixgo_extern_button_is_pressed:()=>fO,sensor_mixgo_extern_button_was_pressed:()=>FO,sensor_mixgo_extern_light:()=>yO,sensor_mixgo_extern_pin_near:()=>BO,sensor_mixgo_extern_sound:()=>VO,sensor_mixgoce_hot_wheel_degrees:()=>CE,sensor_mixgoce_hot_wheel_is_touched:()=>gE,sensor_mpu9250_attachGestureInterrupt:()=>YO,sensor_mpu9250_calibrate_compass:()=>oE,sensor_mpu9250_field_strength:()=>aE,sensor_mpu9250_gesture:()=>eE,sensor_mpu9250_get_acceleration:()=>iE,sensor_mpu9250_get_gyro:()=>sE,sensor_mpu9250_get_magnetic:()=>nE,sensor_mpu9250_temperature:()=>_E,sensor_sht:()=>UO,sensor_shtc3_extern:()=>jO,sensor_use_i2c_init:()=>HO,sensor_use_spi_init:()=>uE,sensor_use_uart_init:()=>GE,sensor_weather_solo_init:()=>tR,sensor_weather_solo_rain:()=>nR,sensor_weather_solo_wd:()=>eR,sensor_weather_solo_ws:()=>iR,weather_data:()=>ME,weather_have_data:()=>mE,weather_set_label:()=>EE,weather_set_label_container:()=>RE,weather_set_label_item:()=>cE,weather_uart_mixio:()=>OE});var w={};t.r(w),t.d(w,{HCSR04:()=>RR,RTC_set_date:()=>ER,RTC_set_time:()=>OR,bitbot_als_num:()=>Ac,dht11:()=>vc,number1:()=>gR,number2:()=>CR,number3:()=>SR,number4:()=>AR,number5:()=>LR,number6:()=>NR,number7:()=>DR,onboard_RTC_get_time:()=>XR,onboard_RTC_get_timestamp:()=>bR,onboard_RTC_set_datetime:()=>BR,onboard_RTC_settime_string:()=>VR,onboard_RTC_timestamp_totuple:()=>yR,rfid_readcontent:()=>JR,rfid_readid:()=>KR,rfid_write:()=>qR,rfid_write_return:()=>QR,sensor_LTR308:()=>UR,sensor_aht11:()=>kR,sensor_bitbot_ALS:()=>Sc,sensor_button_get_presses:()=>Dc,sensor_button_is_pressed:()=>Lc,sensor_button_was_pressed:()=>Nc,sensor_distance_hrsc04:()=>mR,sensor_eulerangles:()=>jR,sensor_field_strength:()=>Yc,sensor_get_acceleration:()=>zR,sensor_get_temperature:()=>HR,sensor_hp203:()=>WR,sensor_light:()=>Pc,sensor_mixbot_get_gyro:()=>Cc,sensor_mixbot_patrol_calibrate:()=>Rc,sensor_mixbot_patrol_value:()=>cc,sensor_mixbot_temperature:()=>gc,sensor_mixgo_LTR308:()=>xR,sensor_mixgo_button_attachInterrupt:()=>pR,sensor_mixgo_button_get_presses:()=>aR,sensor_mixgo_button_is_pressed:()=>oR,sensor_mixgo_button_was_pressed:()=>_R,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>pc,sensor_mixgo_cc_mmc5603_get_angle:()=>ac,sensor_mixgo_cc_mmc5603_get_magnetic:()=>_c,sensor_mixgo_light:()=>cR,sensor_mixgo_nova_LTR308:()=>YR,sensor_mixgo_nova_pin_near:()=>vR,sensor_mixgo_pin_near:()=>PR,sensor_mixgo_pin_near_double:()=>FR,sensor_mixgo_pin_near_single:()=>fR,sensor_mixgo_pin_pressed:()=>IR,sensor_mixgo_touch_slide:()=>MR,sensor_mixgocar42_button_attachInterrupt:()=>dR,sensor_mixgocar42_button_get_presses:()=>lR,sensor_mixgocar42_button_is_pressed:()=>uR,sensor_mixgocar42_button_was_pressed:()=>rR,sensor_mixgocar_battery_left:()=>Ec,sensor_mixgocar_pin_near:()=>mc,sensor_mixgocar_pin_near_line:()=>Mc,sensor_mixgocar_pin_near_state_change:()=>Oc,sensor_mixgoce_pin_pressed:()=>TR,sensor_mixgoce_temperature:()=>rc,sensor_mixgome_temperature:()=>uc,sensor_mpython_pin_pressed:()=>hR,sensor_mpython_qmi8658_get_gyro:()=>lc,sensor_mpython_qmi8658_temperature:()=>dc,sensor_onboard_compass_reset:()=>oc,sensor_onboard_mpu9250_calibrate_compass:()=>ic,sensor_onboard_mpu9250_field_strength:()=>sc,sensor_onboard_mpu9250_gesture:()=>ZR,sensor_onboard_mpu9250_get_acceleration:()=>$R,sensor_onboard_mpu9250_get_gyro:()=>ec,sensor_onboard_mpu9250_get_magnetic:()=>tc,sensor_onboard_mpu9250_temperature:()=>nc,sensor_pin_near:()=>Fc,sensor_pin_pressed:()=>fc,sensor_rm_acc:()=>hc,sensor_rm_battery_left:()=>Tc,sensor_rm_pin_near_double:()=>Ic,sensor_rtc_init:()=>GR,sensor_sound:()=>wR,sensor_temperature:()=>xc});var k={};t.r(k),t.d(k,{serial_any:()=>wc,serial_begin:()=>Jc,serial_print:()=>yc,serial_print_byte:()=>bc,serial_print_hex:()=>Bc,serial_println:()=>Vc,serial_read_from_ai:()=>ig,serial_readline:()=>kc,serial_readstr:()=>Uc,serial_readstr_until:()=>Hc,serial_receive_data_event:()=>Gc,serial_send_to_ai:()=>eg,serial_softserial:()=>Kc,serial_softserial_new:()=>Wc,system_input:()=>qc,system_print:()=>Qc,system_print_container:()=>$c,system_print_end:()=>jc,system_print_inline:()=>zc,system_print_item:()=>tg,system_print_many:()=>Zc});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>_g,Timer_init:()=>Eg,base_delay:()=>gg,controls_delay:()=>og,controls_delay_new:()=>sg,controls_millis:()=>pg,controls_uname:()=>rg,raw_block:()=>ug,reset:()=>ag,system_bitbot_shutdown:()=>Og,system_machine_reset:()=>mg,system_ticks_diff:()=>Ig,system_timer:()=>dg,system_timer_init:()=>Tg,system_wdt_feed:()=>Mg,system_wdt_init:()=>hg,time_ticks_diff:()=>cg,timer:()=>lg,timer2:()=>Rg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>Ag,WEATHER_HOUR:()=>Lg,WEATHER_NOW:()=>Sg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>Kg,actuator_extern_get_led_state:()=>Jg,actuator_extern_led_bright:()=>Wg,actuator_extern_led_brightness:()=>qg,actuator_ms32006_dcmotor:()=>xg,actuator_ms32006_init:()=>Yg,actuator_ms32006_stepper:()=>Xg,actuator_neopixel_init:()=>Qg,actuator_neopixel_rgb:()=>Zg,actuator_neopixel_rgb_all:()=>zg,actuator_neopixel_write:()=>jg,actuator_use_uart_init:()=>$g,esp32_music_get_tempo_extern:()=>Ug,esp32_music_pitch:()=>yg,esp32_music_pitch_init:()=>bg,esp32_music_pitch_with_time:()=>Vg,esp32_music_play_list:()=>wg,esp32_music_reset_extern:()=>kg,esp32_music_set_tempo_extern:()=>Gg,esp32_music_stop:()=>Bg,mixbot_actuator_extern_get_addr:()=>mC,mixbot_actuator_extern_set_addr:()=>OC,mixbot_addr_extern:()=>sC,robot_led_extern:()=>pC,robot_led_extern_get_value:()=>uC,robot_motor_extern:()=>oC,robot_motor_extern_get_speed:()=>_C,robot_servo_extern_absolute_run:()=>IC,robot_servo_extern_get_status:()=>rC,robot_servo_extern_relative_continue:()=>MC,robot_servo_extern_relative_origin:()=>TC,robot_servo_extern_relative_run:()=>hC,robot_servo_extern_stop:()=>dC,robot_servo_extern_stop_mode:()=>lC,robot_traffic_light_extern:()=>aC,servo_get_angle:()=>Pg,servo_get_speed:()=>vg,servo_init:()=>Ng,servo_move:()=>Hg,servo_set_angle:()=>fg,servo_set_speed:()=>Fg,servo_speed_360:()=>Dg,syn6288_builtin_voice:()=>iC,syn6288_get_voice:()=>eC,syn6288_set_voice:()=>tC,syn6288_tts_play:()=>nC});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>KC,actuator_dc_motor_stop:()=>JC,actuator_get_led_bright:()=>fC,actuator_get_led_state:()=>FC,actuator_led_bright:()=>DC,actuator_led_brightness:()=>PC,actuator_mixbot_buzzer_on_off:()=>ZC,actuator_mixgo_nova_mic_get:()=>nS,actuator_mixgo_nova_mic_set:()=>iS,actuator_mixgo_nova_onboard_music_pitch:()=>uS,actuator_mixgo_nova_onboard_music_stop:()=>rS,actuator_mixgo_nova_play_audio:()=>aS,actuator_mixgo_nova_play_online_audio:()=>pS,actuator_mixgo_nova_record_audio:()=>_S,actuator_mixgo_nova_voice_get:()=>oS,actuator_mixgo_nova_voice_set:()=>sS,actuator_mixgo_zero_led_color:()=>vC,actuator_onboard_neopixel_rgb:()=>BC,actuator_onboard_neopixel_rgb_all:()=>GC,actuator_onboard_neopixel_rgb_show_all_chase:()=>UC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>wC,actuator_onboard_neopixel_write:()=>VC,actuator_stepper_keep:()=>HC,actuator_stepper_stop:()=>WC,analog_keyboard_input:()=>TS,analog_keyboard_str:()=>ES,analog_mouse_input:()=>mS,bitbot_motor:()=>eS,bitbot_move:()=>$C,bitbot_stop:()=>tS,cc_number:()=>YC,esp32_music_get_tempo:()=>RC,esp32_music_reset:()=>AC,esp32_music_set_tempo:()=>EC,esp32_onboard_music_pitch:()=>cC,esp32_onboard_music_pitch_with_time:()=>gC,esp32_onboard_music_play_list:()=>SC,esp32_onboard_music_stop:()=>CC,general_key:()=>MS,general_key_tuple:()=>RS,get_power_output:()=>dS,ledswitch:()=>NC,mixbot_motor:()=>jC,mixbot_motor_status:()=>qC,mixbot_move:()=>QC,mixbot_stop:()=>zC,mouse_key:()=>OS,number:()=>LC,rm_actuator_get_led_bright:()=>XC,rm_actuator_get_led_state:()=>bC,rm_actuator_led_bright:()=>xC,rm_actuator_led_brightness:()=>yC,rm_motor:()=>kC,set_all_power_output:()=>IS,set_power_output:()=>lS,special_key:()=>hS});var q={};t.r(q),t.d(q,{ai_sensor_20object:()=>$S,ai_sensor_ailocal_class:()=>wS,ai_sensor_ailocal_class_result:()=>kS,ai_sensor_ailocal_train:()=>US,ai_sensor_asr_recognize:()=>qS,ai_sensor_audio_play:()=>WS,ai_sensor_audio_record:()=>HS,ai_sensor_barcode:()=>NS,ai_sensor_circle:()=>YS,ai_sensor_classifier_faces:()=>ZS,ai_sensor_color:()=>yS,ai_sensor_color_chases:()=>GS,ai_sensor_color_chases_result:()=>BS,ai_sensor_config:()=>CS,ai_sensor_face:()=>jS,ai_sensor_find_20objects:()=>tA,ai_sensor_find_barcodes:()=>DS,ai_sensor_find_circles:()=>xS,ai_sensor_find_colors:()=>VS,ai_sensor_find_licenseplates:()=>zS,ai_sensor_find_lines:()=>vS,ai_sensor_find_qrcodes:()=>LS,ai_sensor_find_rects:()=>bS,ai_sensor_find_tags:()=>FS,ai_sensor_licenseplate:()=>QS,ai_sensor_line:()=>PS,ai_sensor_qrcode:()=>AS,ai_sensor_qrcode_lite:()=>gS,ai_sensor_rect:()=>XS,ai_sensor_rgb:()=>SS,ai_sensor_tag:()=>fS,ai_sensor_use_uart_init:()=>cS,ai_sensor_yolo_recognize:()=>KS,ai_sensor_yolo_recognize_result:()=>JS});var Q={};t.r(Q),t.d(Q,{MICROPYTHON_AI_Speech_asr:()=>nA,MICROPYTHON_AI_Speech_unit:()=>iA,MICROPYTHON_AI_client:()=>eA});var z={};t.r(z),t.d(z,{mpython_blynk_app_data:()=>hA,mpython_blynk_app_notify:()=>rA,mpython_blynk_email:()=>MA,mpython_blynk_get_timers:()=>dA,mpython_blynk_on_connected:()=>aA,mpython_blynk_on_disconnected:()=>_A,mpython_blynk_run:()=>uA,mpython_blynk_sensor_data_to_app:()=>TA,mpython_blynk_set_property:()=>mA,mpython_blynk_setup:()=>OA,mpython_blynk_stop_timers:()=>lA,mpython_blynk_sync_virtual:()=>oA,mpython_blynk_terminal_widget_vpin:()=>sA,mpython_blynktimer:()=>IA,mpython_blynktimer_run:()=>pA});var j={};t.r(j),t.d(j,{cc_g1_read_bat:()=>EA,cc_g1_read_joystick:()=>RA,cc_g1_read_key:()=>cA,cc_g1_turnoff:()=>gA});var Z={};t.r(Z),t.d(Z,{ce_go_dc_motor:()=>FA,ce_go_get_led_bright:()=>AA,ce_go_get_led_state:()=>LA,ce_go_hall_attachInterrupt:()=>PA,ce_go_hall_data:()=>YA,ce_go_hall_initialize:()=>vA,ce_go_led_bright:()=>SA,ce_go_led_brightness:()=>NA,ce_go_light_number:()=>CA,ce_go_pin_light:()=>VA,ce_go_pin_near:()=>XA,ce_go_pin_near_line:()=>xA,ce_go_pin_near_state_change:()=>bA,ce_go_stepper_keep:()=>DA,ce_go_stepper_stop:()=>fA,sensor_mixgome_eulerangles:()=>yA});var $={};t.r($),t.d($,{communicate_bluetooth_central_init:()=>EL,communicate_bluetooth_connect:()=>gL,communicate_bluetooth_disconnect:()=>CL,communicate_bluetooth_handle:()=>fL,communicate_bluetooth_is_connected:()=>AL,communicate_bluetooth_mac:()=>SL,communicate_bluetooth_peripheral_init:()=>RL,communicate_bluetooth_recv:()=>DL,communicate_bluetooth_recv_only:()=>NL,communicate_bluetooth_scan:()=>cL,communicate_bluetooth_send:()=>LL,communicate_espnow_init:()=>FL,communicate_espnow_init_new:()=>PL,communicate_i2c_available:()=>KA,communicate_i2c_init:()=>UA,communicate_i2c_master_read:()=>WA,communicate_i2c_onboard:()=>BA,communicate_i2c_read:()=>wA,communicate_i2c_scan:()=>HA,communicate_i2c_write:()=>kA,communicate_ir_recv_init:()=>uL,communicate_ir_send_init:()=>TL,communicate_ow_init:()=>nL,communicate_ow_read:()=>_L,communicate_ow_reset:()=>oL,communicate_ow_scan:()=>sL,communicate_ow_select:()=>pL,communicate_ow_write:()=>aL,communicate_spi_buffer:()=>zA,communicate_spi_init:()=>qA,communicate_spi_onboard:()=>GA,communicate_spi_read:()=>jA,communicate_spi_read_output:()=>ZA,communicate_spi_readinto:()=>$A,communicate_spi_readinto_output:()=>tL,communicate_spi_set:()=>QA,communicate_spi_write:()=>eL,communicate_spi_write_readinto:()=>iL,espnow_radio_channel:()=>yL,espnow_radio_channel_new:()=>BL,espnow_radio_on_off:()=>GL,espnow_radio_rec:()=>wL,espnow_radio_recv:()=>HL,espnow_radio_recv_certain_msg:()=>WL,espnow_radio_recv_certain_msg_new:()=>JL,espnow_radio_recv_msg:()=>kL,espnow_radio_recv_new:()=>KL,espnow_radio_send:()=>UL,espnow_radio_txpower:()=>VL,i2c_slave_onreceive:()=>JA,internal_variable:()=>rL,ir_recv_timeout:()=>IL,ir_transmit_busy:()=>OL,ir_transmit_conventional_data:()=>hL,ir_transmit_raw_code:()=>mL,ir_transmit_study_code:()=>ML,ir_whether_recv:()=>dL,lora_init:()=>qL,lora_packet:()=>QL,lora_recv:()=>jL,lora_send:()=>zL,network_espnow_info:()=>YL,network_espnow_mac:()=>vL,network_espnow_recv:()=>xL,network_espnow_recv_handle:()=>bL,network_espnow_send:()=>XL,recv_fun:()=>lL,urequests_attribute:()=>$L,urequests_get:()=>ZL,urequests_method:()=>tN});var tt={};t.r(tt),t.d(tt,{display_animate:()=>AN,display_circle:()=>LN,display_color_seclet:()=>yN,display_draw_4strings:()=>ON,display_fill:()=>SN,display_lcd_use_i2c_init:()=>kN,display_line:()=>cN,display_line_arbitrarily:()=>EN,display_matrix_extern_bright_point:()=>lN,display_matrix_extern_bright_screen:()=>IN,display_matrix_extern_clear:()=>pN,display_matrix_extern_get_pixel:()=>rN,display_matrix_extern_get_screen_pixel:()=>dN,display_matrix_extern_image_builtins:()=>TN,display_matrix_extern_scroll_string:()=>_N,display_matrix_extern_scroll_string_delay:()=>aN,display_matrix_extern_shift:()=>uN,display_matrix_extern_show_frame_string:()=>sN,display_matrix_extern_show_frame_string_delay:()=>oN,display_matrix_extern_show_image:()=>iN,display_matrix_extern_show_image_or_string_delay:()=>nN,display_matrix_use_i2c_init:()=>eN,display_oled_drawPixel:()=>fN,display_oled_showBitmap:()=>DN,display_oled_use_i2c_init:()=>qN,display_onoff:()=>gN,display_rect:()=>RN,display_tm1650_power:()=>PN,display_tm1650_set_brightness:()=>xN,display_tm1650_show_dot:()=>YN,display_tm1650_show_num:()=>vN,display_tm_use_i2c_init:()=>FN,display_triangle:()=>NN,display_use_i2c_init:()=>mN,extern_oled_bright_point:()=>_D,extern_oled_clear:()=>nD,extern_oled_get_pixel:()=>oD,extern_oled_hvline:()=>pD,extern_oled_line:()=>uD,extern_oled_scroll_string:()=>eD,extern_oled_scroll_string_delay:()=>iD,extern_oled_shape_rect:()=>aD,extern_oled_shift:()=>sD,extern_oled_show_frame_string:()=>$N,extern_oled_show_frame_string_delay:()=>tD,extern_oled_show_image:()=>QN,extern_oled_show_image_or_string_delay:()=>ZN,extern_oled_show_image_xy:()=>zN,extern_oled_show_string:()=>jN,image_shift:()=>CN,lcd_backlight:()=>KN,lcd_clear:()=>JN,lcd_print_string:()=>WN,lcd_show_image_or_string_delay:()=>HN,matrix_extern_image_arithmetic:()=>hN,matrix_extern_image_invert:()=>MN,tft_fill:()=>UN,tft_line_arbitrarily:()=>wN,tft_scroll_string_delay:()=>GN,tft_show_frame_string_delay:()=>BN,tft_show_image_or_string_delay:()=>VN,tft_show_image_xy:()=>bN,tft_use_spi_init:()=>XN});var et={};t.r(et),t.d(et,{bitbot_display_image_create:()=>JD,display_bright_point:()=>SD,display_bright_screen:()=>LD,display_clear:()=>ED,display_get_pixel:()=>CD,display_get_screen_pixel:()=>AD,display_image_builtins:()=>MD,display_image_builtins_all:()=>mD,display_image_create:()=>OD,display_scroll_string:()=>TD,display_scroll_string_delay:()=>hD,display_shift:()=>gD,display_show_frame_string:()=>dD,display_show_frame_string_delay:()=>ID,display_show_image:()=>rD,display_show_image_or_string_delay:()=>lD,image_arithmetic:()=>RD,image_invert:()=>cD,mixbot_display_bright_screen:()=>WD,mixbot_display_get_ambientbright:()=>HD,mixbot_display_get_screen_pixel:()=>kD,mixbot_display_image_create:()=>wD,mixbot_display_rotate:()=>KD,mixgo_display_image_create_new:()=>FD,mixgome_display_font:()=>fD,mixgome_display_image_create:()=>ND,mixgomini_display_image_create:()=>DD,mpython_display_hvline:()=>GD,mpython_display_line:()=>UD,mpython_display_shape_rect:()=>BD,mpython_pbm_image:()=>PD,onboard_oled_bright_point:()=>VD,onboard_oled_scroll_string_delay:()=>yD,onboard_oled_show_frame_string_delay:()=>bD,onboard_oled_show_image:()=>vD,onboard_oled_show_image_or_string_delay:()=>XD,onboard_oled_show_image_xy:()=>YD,onboard_oled_show_string:()=>xD,onboard_tft_bright_point:()=>pf,onboard_tft_bright_screen:()=>rf,onboard_tft_clear:()=>of,onboard_tft_clock_clear:()=>Mf,onboard_tft_clock_draw:()=>hf,onboard_tft_clock_get_rtctime:()=>If,onboard_tft_clock_init:()=>df,onboard_tft_clock_set_time:()=>Tf,onboard_tft_display_hvline:()=>nf,onboard_tft_display_line:()=>sf,onboard_tft_display_shape_circle:()=>mf,onboard_tft_display_shape_rect:()=>ef,onboard_tft_fill:()=>lf,onboard_tft_get_pixel:()=>af,onboard_tft_get_screen_pixel:()=>uf,onboard_tft_scroll_string:()=>$D,onboard_tft_scroll_string_delay:()=>tf,onboard_tft_shift:()=>_f,onboard_tft_show_frame_string:()=>jD,onboard_tft_show_frame_string_delay:()=>ZD,onboard_tft_show_image:()=>qD,onboard_tft_show_image_or_string_delay:()=>zD,onboard_tft_show_image_xy:()=>QD});var it={};t.r(it),t.d(it,{factory_block:()=>Af,factory_block_return:()=>Lf,factory_block_return_with_textarea:()=>Df,factory_block_with_textarea:()=>Nf,factory_callMethod_noreturn:()=>Cf,factory_callMethod_return:()=>Sf,factory_declare:()=>gf,factory_from_import:()=>Of,factory_function_noreturn:()=>Rf,factory_function_return:()=>cf,factory_import:()=>Ef,folding_block:()=>ff});var nt={};t.r(nt),t.d(nt,{inout_analog_atten:()=>Hf,inout_analog_read:()=>yf,inout_analog_read_init:()=>kf,inout_analog_write:()=>xf,inout_analog_write_init:()=>wf,inout_analog_write_set:()=>Xf,inout_digital_init:()=>Gf,inout_digital_read:()=>vf,inout_digital_write:()=>Pf,inout_highlow:()=>Ff,inout_pin_attachInterrupt:()=>Bf,inout_pin_pressed:()=>Vf,inout_pin_pressed_init:()=>Wf,inout_pwm_analog_write:()=>Yf,inout_pwm_analog_write_init:()=>Uf,inout_pwm_analog_write_set_freq:()=>bf});var st={};t.r(st),t.d(st,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>rF,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>pF,IOT_EMQX_PING:()=>lF,IOT_FORMATTING:()=>_F,IOT_FORMAT_STRING:()=>aF,IOT_MIXIO_NTP:()=>dF,IOT_MIXIO_PUBLISH:()=>$f,IOT_MIXIO_SUBSCRIBE:()=>tF,iot_client_onboard:()=>IF,iot_http_client:()=>TF,iot_http_data:()=>hF,iot_mixio_check:()=>nF,iot_mixio_connect:()=>Zf,iot_mixio_connect_only:()=>iF,iot_mixio_disconnect:()=>eF,iot_mixio_format_msg:()=>oF,iot_mixio_format_topic:()=>sF,iot_mixly_key:()=>uF,iot_mqtt_client:()=>MF,iot_mqtt_data:()=>mF,iot_onenet_check:()=>zf,iot_onenet_connect:()=>Jf,iot_onenet_disconnect:()=>qf,iot_onenet_publish:()=>jf,iot_onenet_publish_dict:()=>Qf,iot_wifi_connect:()=>Kf});var ot={};t.r(ot),t.d(ot,{network_ap_connect:()=>LF,network_connect:()=>EF,network_get_connect:()=>cF,network_get_wifi:()=>AF,network_init:()=>OF,network_is_active:()=>SF,network_open:()=>CF,network_scan:()=>NF,network_server:()=>DF,network_socket_accept:()=>YF,network_socket_bind:()=>FF,network_socket_close:()=>VF,network_socket_connect:()=>PF,network_socket_init:()=>fF,network_socket_listen:()=>vF,network_socket_receive:()=>xF,network_socket_receive_from:()=>bF,network_socket_send:()=>XF,network_socket_send_to:()=>yF,network_stop:()=>gF,network_wifi_connect:()=>RF,ntptime_address:()=>kF,ntptime_time:()=>wF,requests_attribute:()=>GF,requests_get:()=>BF,requests_method:()=>UF,urequests_connect_url:()=>KF,urequests_response:()=>JF,urequests_wifi_connect:()=>HF,urequests_wifi_url:()=>WF});var _t={};t.r(_t),t.d(_t,{HCSR04:()=>bP,PS2_Button:()=>BP,PS2_Buttons:()=>GP,PS2_Buttons_new:()=>qP,PS2_State:()=>UP,PS2_init:()=>yP,PS2_init_new:()=>KP,PS2_stk:()=>wP,PS2_stk_new:()=>QP,PS2_vibration:()=>VP,PS2_vibration_new:()=>JP,RTC_get_time:()=>HP,RTC_set_date:()=>eP,RTC_set_datetime:()=>kP,RTC_set_time:()=>tP,esp32_s2_weather_init:()=>vP,esp32_s2_weather_rain:()=>xP,esp32_s2_weather_wd:()=>YP,esp32_s2_weather_ws:()=>XP,extern_rfid_read:()=>RP,extern_rfid_readcontent:()=>gP,extern_rfid_readid:()=>cP,extern_rfid_status:()=>AP,extern_rfid_write:()=>CP,extern_rfid_write_return:()=>SP,gnss_get_data:()=>ZP,gnss_have_data:()=>$P,mixbot_sensor_extern_get_addr:()=>pv,mixbot_sensor_extern_set_addr:()=>uv,pm25_get_data:()=>jP,robot_button_extern_get_value:()=>tv,robot_color_extern_get_value:()=>ov,robot_infrared_extern_get_value:()=>iv,robot_infrared_extern_grey_get_value:()=>nv,robot_potentiometer_extern_get_value:()=>sv,robot_sonar_extern_get_value:()=>_v,robot_sonar_extern_led:()=>av,robot_touch_extern_get_value:()=>ev,sensor_APDS9960_extern:()=>rP,sensor_LTR308_extern:()=>lP,sensor_LTR390UV_extern:()=>TP,sensor_MAX30102_extern:()=>uP,sensor_QMC5883L_extern:()=>hP,sensor_VL530LX_extern:()=>OP,sensor_aht11_extern:()=>mP,sensor_bmp:()=>_P,sensor_dht11:()=>WP,sensor_distance_hrsc04:()=>$F,sensor_hp203_extern:()=>dP,sensor_ltr381_extern:()=>IP,sensor_mixgo_extern_button_attachInterrupt:()=>jF,sensor_mixgo_extern_button_get_presses:()=>zF,sensor_mixgo_extern_button_is_pressed:()=>qF,sensor_mixgo_extern_button_was_pressed:()=>QF,sensor_mixgo_extern_light:()=>iP,sensor_mixgo_extern_pin_near:()=>sP,sensor_mixgo_extern_sound:()=>nP,sensor_mixgoce_hot_wheel_degrees:()=>PP,sensor_mixgoce_hot_wheel_is_touched:()=>FP,sensor_mpu9250_attachGestureInterrupt:()=>ZF,sensor_rtc_init:()=>oP,sensor_sht:()=>aP,sensor_shtc3_extern:()=>MP,sensor_use_i2c_init:()=>pP,sensor_use_spi_init:()=>EP,sensor_use_uart_init:()=>zP,sensor_weather_solo_init:()=>rv,sensor_weather_solo_rain:()=>Iv,sensor_weather_solo_wd:()=>lv,sensor_weather_solo_ws:()=>dv,weather_data:()=>LP,weather_have_data:()=>NP,weather_set_label:()=>fP,weather_uart_mixio:()=>DP});var at={};t.r(at),t.d(at,{HCSR04:()=>gv,bitbot_als_num:()=>GY,dht11:()=>qY,number1:()=>Cv,number2:()=>Sv,number3:()=>Av,number4:()=>Lv,number5:()=>Nv,number6:()=>Dv,number7:()=>fv,onboard_RTC_get_time:()=>OY,onboard_RTC_get_timestamp:()=>EY,onboard_RTC_set_datetime:()=>MY,onboard_RTC_settime_string:()=>mY,onboard_RTC_timestamp_totuple:()=>RY,rfid_readcontent:()=>Hv,rfid_readid:()=>kv,rfid_write:()=>Wv,rfid_write_return:()=>Kv,sensor_LTR308:()=>Vv,sensor_adxl345_get_acceleration:()=>eY,sensor_aht11:()=>Uv,sensor_bitbot_ALS:()=>BY,sensor_button_get_presses:()=>kY,sensor_button_is_pressed:()=>UY,sensor_button_was_pressed:()=>wY,sensor_compass_reset:()=>aY,sensor_ds18x20:()=>bv,sensor_eulerangles:()=>qv,sensor_get_acceleration:()=>Jv,sensor_get_temperature:()=>wv,sensor_hp203:()=>Gv,sensor_light:()=>JY,sensor_lm35:()=>yv,sensor_mixbot_get_gyro:()=>VY,sensor_mixbot_patrol_calibrate:()=>XY,sensor_mixbot_patrol_value:()=>bY,sensor_mixbot_temperature:()=>yY,sensor_mixgo_LTR308:()=>xv,sensor_mixgo_button_attachInterrupt:()=>mv,sensor_mixgo_button_get_presses:()=>Mv,sensor_mixgo_button_is_pressed:()=>Tv,sensor_mixgo_button_was_pressed:()=>hv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>CY,sensor_mixgo_cc_mmc5603_get_angle:()=>gY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>cY,sensor_mixgo_light:()=>KY,sensor_mixgo_nova_LTR308:()=>Xv,sensor_mixgo_nova_pin_near:()=>Yv,sensor_mixgo_pin_near:()=>vv,sensor_mixgo_pin_near_double:()=>Pv,sensor_mixgo_pin_near_single:()=>Fv,sensor_mixgo_pin_pressed:()=>$v,sensor_mixgo_touch_slide:()=>Zv,sensor_mixgocar42_button_attachInterrupt:()=>cv,sensor_mixgocar42_button_get_presses:()=>Rv,sensor_mixgocar42_button_is_pressed:()=>Ov,sensor_mixgocar42_button_was_pressed:()=>Ev,sensor_mixgocar_battery_left:()=>xY,sensor_mixgocar_pin_near:()=>vY,sensor_mixgocar_pin_near_line:()=>PY,sensor_mixgocar_pin_near_state_change:()=>YY,sensor_mixgoce_pin_pressed:()=>jv,sensor_mixgoce_temperature:()=>AY,sensor_mixgome_temperature:()=>SY,sensor_mpu9250_calibrate_compass:()=>sY,sensor_mpu9250_field_strength:()=>_Y,sensor_mpu9250_gesture:()=>Qv,sensor_mpu9250_get_acceleration:()=>zv,sensor_mpu9250_get_gyro:()=>nY,sensor_mpu9250_get_magnetic:()=>iY,sensor_mpu9250_temperature:()=>oY,sensor_mpython_pin_pressed:()=>tY,sensor_mpython_qmi8658_get_gyro:()=>LY,sensor_mpython_qmi8658_temperature:()=>NY,sensor_onboard_compass_reset:()=>hY,sensor_onboard_mpu9250_calibrate_compass:()=>dY,sensor_onboard_mpu9250_field_strength:()=>TY,sensor_onboard_mpu9250_gesture:()=>pY,sensor_onboard_mpu9250_get_acceleration:()=>uY,sensor_onboard_mpu9250_get_gyro:()=>lY,sensor_onboard_mpu9250_get_magnetic:()=>rY,sensor_onboard_mpu9250_temperature:()=>IY,sensor_pin_near:()=>WY,sensor_pin_pressed:()=>HY,sensor_rm_acc:()=>FY,sensor_rm_battery_left:()=>fY,sensor_rm_pin_near_double:()=>DY,sensor_sound:()=>Bv});var pt={};t.r(pt),t.d(pt,{serial_any:()=>$Y,serial_print:()=>QY,serial_print_byte:()=>zY,serial_print_hex:()=>ZY,serial_println:()=>jY,serial_read_from_ai:()=>rx,serial_readline:()=>ex,serial_readstr:()=>tx,serial_send_to_ai:()=>ux,serial_softserial:()=>ix,serial_softserial_new:()=>nx,system_input:()=>sx,system_print:()=>ox,system_print_end:()=>ax,system_print_inline:()=>_x,system_print_many:()=>px});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>gx,Timer_init:()=>yx,base_delay:()=>Gx,controls_delay:()=>Nx,controls_delay_new:()=>Dx,controls_end_program:()=>Sx,controls_millis:()=>Cx,controls_uname:()=>Lx,reset:()=>Ax,system_bitbot_shutdown:()=>bx,system_device_name:()=>Rx,system_device_serial_number:()=>cx,system_event_bus_source:()=>Ox,system_event_bus_value:()=>Ex,system_machine_reset:()=>Xx,system_on_event:()=>hx,system_raise_event:()=>Tx,system_reset:()=>dx,system_run_in_background:()=>lx,system_ticks_diff:()=>Px,system_timer:()=>Fx,system_timer_init:()=>vx,system_timestamp:()=>Mx,system_value:()=>mx,system_wait:()=>Ix,system_wdt_feed:()=>xx,system_wdt_init:()=>Yx,time_ticks_diff:()=>Bx,timer:()=>fx,timer2:()=>Vx});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>wx,WEATHER_HOUR:()=>kx,WEATHER_NOW:()=>Ux});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>IX,inout_analog_atten:()=>eX,inout_analog_read:()=>tX,inout_analog_read_init:()=>aX,inout_analog_write:()=>jx,inout_analog_write_init:()=>_X,inout_analog_write_set:()=>Zx,inout_analog_write_set_freq:()=>rX,inout_digital_init:()=>sX,inout_digital_read:()=>Qx,inout_digital_write:()=>qx,inout_highlow:()=>Jx,inout_pinMode:()=>uX,inout_pin_attachInterrupt:()=>nX,inout_pin_pressed:()=>iX,inout_pin_pressed_init:()=>pX,inout_pwm_analog_write:()=>zx,inout_pwm_analog_write_init:()=>oX,inout_pwm_analog_write_set_freq:()=>$x,pin_pressed:()=>dX,pin_pressed_init:()=>lX});var dt={};t.r(dt),t.d(dt,{me_g1_aht11:()=>hX,me_g1_hp203:()=>MX,me_g1_rfid_readcontent:()=>EX,me_g1_rfid_readid:()=>OX,me_g1_rfid_status:()=>gX,me_g1_rfid_write:()=>RX,me_g1_rfid_write_outcome:()=>cX,me_g1_varistor:()=>mX});var It={};t.r(It),t.d(It,{analog_input:()=>PX,analog_output:()=>YX,espnow_channel:()=>DX,haskylens_model:()=>fX,i2c_A_pin:()=>xX,i2c_B_pin:()=>XX,pins_analog:()=>GX,pins_analog_pin:()=>UX,pins_axis:()=>sb,pins_brightness:()=>ob,pins_builtinimg:()=>jX,pins_builtinimg_extern:()=>ZX,pins_button:()=>HX,pins_buttonB:()=>WX,pins_dac:()=>wX,pins_dac_pin:()=>kX,pins_digital:()=>SX,pins_digital_dot:()=>Ib,pins_digital_pin:()=>AX,pins_exlcdh:()=>ib,pins_exlcdv:()=>nb,pins_imglist:()=>$X,pins_input_pin:()=>LX,pins_one_more:()=>db,pins_output_pin:()=>NX,pins_playlist:()=>tb,pins_playlist_extern:()=>eb,pins_pwm:()=>KX,pins_pwm_pin:()=>JX,pins_radio_datarate:()=>lb,pins_radio_power:()=>rb,pins_serial:()=>zX,pins_tone_notes:()=>ub,pins_touch:()=>QX,pins_touch_pin:()=>qX,pins_tts_bgmusic:()=>pb,pins_tts_builtin_music:()=>ab,pins_tts_voice:()=>_b,pwm_input:()=>FX,pwm_output:()=>vX,spi_A_pin:()=>bX,spi_B_pin:()=>yX,spi_C_pin:()=>VX,spi_D_pin:()=>BX});var Tt={};t.r(Tt),t.d(Tt,{inout_analog_atten:()=>Db,inout_analog_read:()=>cb,inout_analog_read_init:()=>Nb,inout_analog_write:()=>Ob,inout_analog_write_init:()=>Lb,inout_analog_write_set:()=>Eb,inout_digital_init:()=>Sb,inout_digital_read:()=>Mb,inout_digital_write:()=>hb,inout_highlow:()=>Tb,inout_pin_attachInterrupt:()=>Cb,inout_pin_pressed:()=>gb,inout_pin_pressed_init:()=>fb,inout_pwm_analog_write:()=>mb,inout_pwm_analog_write_init:()=>Ab,inout_pwm_analog_write_set_freq:()=>Rb});var ht={};t.r(ht),t.d(ht,{me_g1_aht11:()=>Fb,me_g1_hp203:()=>Pb,me_g1_rfid_readcontent:()=>xb,me_g1_rfid_readid:()=>Yb,me_g1_rfid_status:()=>yb,me_g1_rfid_write:()=>Xb,me_g1_rfid_write_outcome:()=>bb,me_g1_varistor:()=>vb});var Mt={};t.r(Mt),t.d(Mt,{analog_input:()=>Jb,analog_output:()=>Qb,espnow_channel:()=>Wb,haskylens_model:()=>Kb,i2c_A_pin:()=>zb,i2c_B_pin:()=>jb,pins_analog:()=>ny,pins_analog_pin:()=>iy,pins_axis:()=>my,pins_brightness:()=>Ry,pins_builtinimg:()=>dy,pins_builtinimg_extern:()=>Iy,pins_button:()=>Bb,pins_buttonB:()=>Gb,pins_dac:()=>ay,pins_dac_pin:()=>_y,pins_digital:()=>Vb,pins_digital_dot:()=>Dy,pins_digital_pin:()=>Ub,pins_exlcdh:()=>Oy,pins_exlcdv:()=>Ey,pins_imglist:()=>Ty,pins_input_pin:()=>wb,pins_interrupt:()=>ry,pins_one_more:()=>Ny,pins_output_pin:()=>kb,pins_playlist:()=>hy,pins_playlist_extern:()=>My,pins_pwm:()=>oy,pins_pwm_input:()=>Hb,pins_pwm_pin:()=>sy,pins_radio_datarate:()=>Ly,pins_radio_power:()=>Ay,pins_serial:()=>ly,pins_tone_notes:()=>Sy,pins_touch:()=>uy,pins_touch_pin:()=>py,pins_tts_bgmusic:()=>Cy,pins_tts_builtin_music:()=>gy,pins_tts_voice:()=>cy,pwm_output:()=>qb,spi_A_pin:()=>Zb,spi_B_pin:()=>$b,spi_C_pin:()=>ty,spi_D_pin:()=>ey});const mt=Blockly,Ot=Mixly,Et={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Rt=Et; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(Ft),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},yt={init:function(){this.setColour(Ft),this.appendValueInput("LIST").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(mt.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Vt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Bt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Gt={init:function(){this.setColour(Ft);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Ut={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Vt.OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],Gt.OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Qt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},qt={init:function(){this.jsonInit({message0:mt.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Ft,tooltip:mt.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:mt.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},zt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_STAT),this.setOutput(!0)}},jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Zt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},$t={init:function(){this.appendDummyInput().appendField(mt.Msg.CONTROLS_REPEAT_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(mt.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new mt.FieldDropdown([[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Ft),this.setTooltip("do-while loop"),this.setHelpUrl("")}},te={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ee={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},ie={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ne={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_GET_UNIQUE_IDEN)}},se=230;mt.FieldTextInput.math_number_validator=function(t){return String(t)},mt.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const oe={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},_e={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},ae={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},pe={init:function(){this.setColour(se),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ue={init:function(){this.setColour(se),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},re={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new mt.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},le={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:mt.Msg.MATH_TRIG_TOOLTIP_SIN,COS:mt.Msg.MATH_TRIG_TOOLTIP_COS,TAN:mt.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:mt.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:mt.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:mt.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:mt.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},de={init:function(){var t=[[mt.Msg.MATH_BIN,"bin"],[mt.Msg.MATH_OCT,"oct"],[mt.Msg.MATH_HEX,"hex"]];this.setColour(se),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:mt.Msg.MATH_DEC_TOOLTIP_BIN,oct:mt.Msg.MATH_DEC_TOOLTIP_OCT,hex:mt.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},Ie={init:function(){var t=[[mt.Msg.LANG_MATH_TO_ROUND,"round"],[mt.Msg.LANG_MATH_TO_CEIL,"ceil"],[mt.Msg.LANG_MATH_TO_FLOOR,"floor"],[mt.Msg.MATH_ABS,"fabs"],[mt.Msg.MATH_SQRT,"sqrt"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:mt.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:mt.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:mt.Msg.MATH_SINGLE_TOOLTIP_SQ,round:mt.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:mt.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:mt.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Te={init:function(){var t=[[mt.Msg.MIXLY_MAX,"max"],[mt.Msg.MIXLY_MIN,"min"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:mt.Msg.MIXLY_TOOLTIP_MATH_MAX,min:mt.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},he={init:function(){var t=[[mt.Msg.MATH_TWO,"two"],[mt.Msg.MATH_EIGHT,"eight"],[mt.Msg.MATH_TEN,"ten"],[mt.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(se),this.appendDummyInput("").appendField(mt.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new mt.FieldDropdown(t),"OP").appendField(mt.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MATH_ZHW).appendField(new mt.FieldDropdown(t),"OP2").appendField(mt.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:mt.Msg.MATH_Before_two,eight:mt.Msg.MATH_Before_eight,ten:mt.Msg.MATH_Before_ten,sixteen:mt.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:mt.Msg.MATH_Behind_two,eight:mt.Msg.MATH_Behind_eight,ten:mt.Msg.MATH_Behind_ten,sixteen:mt.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Me={init:function(){var t=[[mt.Msg.LANG_MATH_INT,"int"],[mt.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(se),this.setOutput(!0,Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_RANDOM).appendField(new mt.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:mt.Msg.LANG_MATH_INT,float:mt.Msg.LANG_MATH_FLOAT_RANDOM};return mt.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},me={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_CONSTRAIN_TOOLTIP)}},Oe={init:function(){this.setColour(se),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(mt.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(mt.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Ee={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},Re={init:function(){this.setColour(se),this.appendValueInput("NUM").setCheck(Number).appendField(mt.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},ce={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MATH_ROUND).appendField(mt.Msg.TEXT_KEEP),this.appendDummyInput().appendField(mt.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_ROUND_NEW_TOOLTIP)}},ge={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"],[mt.Msg.MIXLY_TO_BITES,"b"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:mt.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ce={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:mt.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Se=Oe,Ae=160,Le={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}},Ne={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}};mt.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const De={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput("",mt.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(mt.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new mt.FieldImage(e,7,12,'"')}},fe={init:function(){this.setColour(Ae),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(mt.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},Fe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Pe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String).appendField(mt.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},ve={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ye={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},xe={init:function(){this.WHERE_OPTIONS=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.TEXT_GET_INDEX_RANDOM+1+mt.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.LISTS_GET_INDEX_GET,"MODE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(mt.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+mt.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",mt.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:mt.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:mt.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:mt.Msg.TEXT_GET_INDEX_RANDOM};return mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+mt.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==mt.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new mt.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Xe={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.LISTS_GET_INDEX_FROM_START+"n"+mt.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(mt.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(mt.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},ye={init:function(){this.WHERE_OPTIONS_1=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[mt.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==mt.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new mt.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ve={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(mt.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Be={init:function(){var t=[[mt.Msg.MIXLY_EQUALS,"==="],[mt.Msg.MIXLY_STARTSWITH,"startswith"],[mt.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new mt.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Ge={init:function(){this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_COMPARETO_HELP)}},Ue={init:function(){var t=[[mt.Msg.TEXT_UPPER,"upper"],[mt.Msg.TEXT_TITLE,"title"],[mt.Msg.TEXT_CAPITALIZE,"capitalize"],[mt.Msg.TEXT_SWAPCASE,"swapcase"],[mt.Msg.TEXT_LOWER,"lower"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:mt.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:mt.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:mt.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:mt.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:mt.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},we={init:function(){var t=[[mt.Msg.TEXT_LJUST,"ljust"],[mt.Msg.TEXT_CENTER,"center"],[mt.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(mt.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(mt.Msg.MIXLY_MID+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(mt.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},He={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},We={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(mt.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(mt.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(mt.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Je={init:function(){var t=[[mt.Msg.TEXT_TRIM_BOTH,"strip"],[mt.Msg.TEXT_TRIM_LEFT,"lstrip"],[mt.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ae),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(mt.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:mt.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:mt.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:mt.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Qe={init:function(){this.setColour(Ae),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new mt.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Hi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Wi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Ki={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_KEYS),this.setTooltip(mt.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_TOOLTIP)}},Qi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},qi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},zi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_DELETE_TOOLTIP)}},ji={init:function(){this.setColour(wi),this.appendValueInput("DICT2").setCheck("Dict").appendField(mt.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(mt.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MID),this.setTooltip(mt.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_CLEAR),this.setTooltip(mt.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$i={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_ITEMS),this.setTooltip(mt.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},tn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_VALUES),this.setTooltip(mt.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},en={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LENGTH),this.setTooltip(mt.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},nn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_DELDICT),this.setTooltip(mt.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sn={init:function(){this.MODE=[[mt.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[mt.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(mt.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=mt.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=mt.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new mt.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},on={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setTooltip(mt.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},_n={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_SETDEFAULT_TOOLTIP)}},an={init:function(){this.setColour(wi),this.appendDummyInput("").appendField(new mt.FieldLabel(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new mt.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},pn={init:function(){this.setColour(wi),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},un={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TO_JSON),this.setTooltip(mt.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},rn={init:function(){this.setColour(wi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(mt.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ln=210,dn={init:function(){var t=mt.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:mt.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:mt.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},In={init:function(){var t=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new mt.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Tn={init:function(){var t=[[mt.Msg.LOGIC_OPERATION_AND,"AND"],[mt.Msg.LOGIC_OPERATION_OR,"OR"],[mt.Msg.LOGIC_OPERATION_NOR,"NOR"],[mt.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:mt.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:mt.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},hn={init:function(){this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(mt.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(mt.Msg.LOGIC_NEGATE_TOOLTIP)}},Mn={init:function(){var t=[[mt.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[mt.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new mt.FieldDropdown(t),"BOOL"),this.setTooltip(mt.Msg.LOGIC_BOOLEAN_TOOLTIP)}},mn={init:function(){this.setColour(ln),this.setOutput(!0),this.appendDummyInput().appendField(mt.Msg.LOGIC_NULL),this.setTooltip(mt.Msg.LOGIC_NULL_TOOLTIP)}},On={init:function(){this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(mt.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(mt.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},En={init:function(){var t=[[mt.Msg.TEXT_APPEND_TO,"in"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new mt.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(mt.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.IN)}},Rn={init:function(){var t=[[mt.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},cn={init:function(){this.setColour(ln),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},gn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(mt.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXPY_TEXT_ENCODE).appendField(new mt.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Ln={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MICROBIT_PYTHON_TYPE)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.HTML_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Bn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+mt.Msg.MIXLY_ESP32_SET+{mkdir:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(mt.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Un={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.HTML_FILE,"isfile"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},kn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(mt.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Hn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(mt.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Wn={};Wn.NAME_TYPE=mt.PROCEDURE_CATEGORY_NAME,Wn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Us={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_FORM_CONTENT).appendField(new mt.FieldDropdown([[mt.Msg.HTML_TEXT,"text"],[mt.Msg.HTML_EMAIL,"email"],[mt.Msg.HTML_NUMBER,"number"],[mt.Msg.HTML_PASSWORD,"password"],[mt.Msg.HTML_CHECKBOX,"checkbox"],[mt.Msg.HTML_RADIOBUTTON,"radiobutton"],[mt.Msg.HTML_BUTTON,"button"],[mt.Msg.HTML_COLOUR,"colour"],[mt.Msg.HTML_DATE,"date"],[mt.Msg.HTML_LOCALTIME,"local time"],[mt.Msg.HTML_FILE,"file"],[mt.Msg.HTML_HIDDEN,"hidden"],[mt.Msg.HTML_IMAGE,"image"],[mt.Msg.HTML_MONTH,"month"],[mt.Msg.HTML_RANGE,"range"],[mt.Msg.HTML_RESET,"reset"],[mt.Msg.HTML_SEARCH,"search"],[mt.Msg.HTML_SUBMIT,"submit"],[mt.Msg.HTML_TELEPHONENUMBER,"telephone number"],[mt.Msg.HTML_TIME,"time"],[mt.Msg.HTML_URL,"url"],[mt.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(mt.Msg.HTML_NAME).appendField(new mt.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(mt.Msg.HTML_VALUE).appendField(new mt.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks={init:function(){this.setColour(xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_TEXT).appendField(new mt.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws=160,Ks={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new mt.FieldTable(""),"TEXT")}},Js={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT")}},Qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},qs={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},zs={init:function(){this.setColour(Ws),this.appendDummyInput().appendTitle("Comment:").appendTitle(new mt.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},js={init:function(){this.setColour(Ws),this.appendValueInput("VALUE").appendField(mt.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Zs={init:function(){this.setColour(Ws),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(mt.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=mt.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+p()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},mt.isNumber(n)&&mt.isNumber(s)&&mt.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const ba=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},ya=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Va=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Ba=function(t,e){return["None",e.ORDER_ATOMIC]},Ga=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Ua=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},wa=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},ka=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Ha=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Wa=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Ka=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Ja=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Qa=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},qa=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},za=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ja=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Za=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},$a=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},tp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},ep=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ip=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},np=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},op=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},_p=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ap=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},pp=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},up=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},rp=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},lp=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},dp=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},Ip=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),mt.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Jp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Qp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},qp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},zp=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},jp=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Zp=function(t,e){return'"},$p=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},tu=function(){return this.getFieldValue("TEXT")+"\n"},eu=function(t){return t.getFieldValue("TEXT")+"\n"},iu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},nu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},su=function(){return""},ou=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},_u=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},pu.scrubNakedValue=function(t){return t+"\n"},pu.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},pu.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},pu.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=mt.utils.string.wrap(o,pu.COMMENT_WRAP-3),n+=pu.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+a+" + "+s+")":s<0?"int("+a+" - "+-s+")":"int("+a+")",n&&(a="-"+a)),a};const uu="#74A55B",ru={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},lu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},du={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Iu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Tu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},hu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ou={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},Eu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ru={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},cu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},gu={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField("360°"+mt.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Au={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Nu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Du={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new mt.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(mt.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[mt.Msg.MOTOR_N,"ms32006.MOT_N"],[mt.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Pu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new mt.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},vu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},Yu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+mt.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},yu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Bu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},Gu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Uu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_TRAFFIC_LIGHT).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[mt.Msg.MIXLY_SPEED,"[1]"],[mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[mt.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[mt.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[mt.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},er={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir="#6C9858",nr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},sr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"1"],[mt.Msg.MIXLY_ESP32_OFF,"0"],[mt.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},or={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},_r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LIGHT_OFF,"0"],[mt.Msg.MIXLY_LIGHT_RED,"1"],[mt.Msg.MIXLY_LIGHT_GREEN,"2"],[mt.Msg.MIXLY_LIGHT_BLUE,"3"],[mt.Msg.MIXLY_LIGHT_YELLOW,"4"],[mt.Msg.MIXLY_LIGHT_CYAN,"5"],[mt.Msg.MIXLY_LIGHT_PURPLE,"6"],[mt.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},rr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ir={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Tr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},hr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Or={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Er={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},Rr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},cr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},gr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Cr={init:function(){this.setColour(ir),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Sr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},Lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Nr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fr={init:function(){this.setColour(ir),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Fr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"1"],[mt.Msg.TEXT_TRIM_RIGHT,"2"],[mt.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"0"],[mt.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_RECORD_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},jr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},$r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},tl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.MIXLY_ALL+mt.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(mt.ALIGN_RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},el={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(mt.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(mt.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},il={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_SPECIAL_KEY1,"1"],[mt.Msg.MIXLY_SPECIAL_KEY2,"2"],[mt.Msg.MIXLY_SPECIAL_KEY1,"4"],[mt.Msg.MIXLY_SPECIAL_KEY8,"8"],[mt.Msg.MIXLY_SPECIAL_KEY16,"16"],[mt.Msg.MIXLY_SPECIAL_KEY32,"32"],[mt.Msg.MIXLY_SPECIAL_KEY64,"64"],[mt.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},nl={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},sl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(mt.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(mt.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(mt.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},ol={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[mt.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[mt.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},_l={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(mt.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(mt.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},al="#90A244",pl={init:function(){this.setColour(al),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+mt.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ul={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_QR_CODE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},rl={init:function(){this.setColour(al),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_QR_CODE+mt.Msg.MIXPY_OBJECT,"qrcode"],[mt.Msg.MIXLY_BAR_CODE+mt.Msg.MIXPY_OBJECT,"barcode"],[mt.Msg.MIXLY_TAG+mt.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},ll={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},dl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().appendField(mt.Msg.SOFT_RESET+mt.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},Il={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(mt.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},Tl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_BAR_CODE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},hl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},Ml={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TAG+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},ml={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},Ol={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LINE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LINE_ANGLE,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},El={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},Rl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_CIRCLE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},cl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},gl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_RECT+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},Cl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Sl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["RGB"+mt.Msg.HTML_COLOUR,"[0]"],["LAB"+mt.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},Al={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Ll={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_COLOR_CHASE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Nl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+mt.Msg.MIXLY_COLOR_LAB).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Dl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_OBJECT_LIST).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+mt.Msg.MIXLY_MODEL_NAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_TRAIN_TIME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},fl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_OBJECT_LIST).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MODEL_NAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},Fl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LOCAL_CLASS+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},Pl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXPY_AI_AUDIO_TIME).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},vl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MP3_VOL).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ANCHOR).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MODEL_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},xl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_YOLO_RECOGNIZE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},Xl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setAlign(mt.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},bl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LICENSEPLATE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},yl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},Vl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_FACE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Bl={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},Gl={init:function(){this.setColour(al),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_20OBJECTS+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},Ul={init:function(){this.setColour(al),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},wl={init:function(){this.setColour(205),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_AipSpeech_asr,"ASR"],[mt.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},kl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_AI_UNIT).appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(mt.Msg.OLED_STRING).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},Hl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_AipSpeech_asr).appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(mt.Msg.MIXPY_AI_AUDIO_TIME).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LANGUAGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[mt.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[mt.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},Wl="#2FAD7A",Kl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Ql={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},ql={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},Zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},$l={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},td={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},ed={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},id={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},nd={init:function(){this.jsonInit({message0:mt.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[mt.Msg.MIXLY_PYTHON_PERIODIC,"False"],[mt.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},sd={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},od={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},_d={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},ad={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+" CC_G1"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},pd={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_BATTERY),this.setOutput(!0,Number),this.setInputsInline(!0)}},ud={init:function(){this.setColour(40),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_JOYSTICK).appendField(new mt.FieldDropdown([["x","[0]"],["y","[1]"],["(x,y)",""]]),"VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0)}},rd={init:function(){this.setColour(40),this.appendDummyInput().appendField(mt.Msg.MIXLY_BUTTON).appendField(new mt.FieldDropdown([["A","0"],["B","1"],["C","2"],["D","3"],["POWER","4"],["SELECT","5"]]),"VAR"),this.appendDummyInput("").appendField(mt.Msg.WHETHER_IS_PRESSED),this.setOutput(!0,Number),this.setInputsInline(!0)}},ld={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_HANDLE_SHUTDOWN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dd=100,Id={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXGO_LEFT_FRONT+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[0]"],[mt.Msg.MIXGO_RIGHT_FRONT+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[1]"],[mt.Msg.MIXGO_LEFT_BACK+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[3]"],[mt.Msg.MIXGO_RIGHT_BACK+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[2]"],[mt.Msg.MIXGO_LEFT_FRONT+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[0]"],[mt.Msg.MIXGO_RIGHT_FRONT+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[1]"],[mt.Msg.MIXGO_LEFT_BACK+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[3]"],[mt.Msg.MIXGO_RIGHT_BACK+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[2]"],[mt.Msg.ME_GO_LIGHT_HEADLIGHT,"WLED"]]),"op"),this.setOutput(!0)}},Td={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},hd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Md={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},md={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Od={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ed={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Rd={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"0"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"1"],[mt.Msg.ME_GO_MOTOR_EXTERN,"2"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.ROTATION_FORWARD,"CW"],[mt.Msg.ROTATION_BACKWARD,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_INTERRUPT).appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},gd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP),this.appendDummyInput("").appendField(new mt.FieldDropdown([["turns","turns"],["distance","distance"],["turns,distance","all"]]),"args"),this.appendValueInput("num").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("").appendField(new mt.FieldDropdown([["turns","turns"],["distance","distance"],["speed","speed"]]),"args"),this.setOutput(!0),this.setInputsInline(!0)}},Sd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"[0]"],[mt.Msg.MIXGO_LEFT_MID,"[1]"],[mt.Msg.MIXGO_RIGHT_MID,"[2]"],[mt.Msg.TEXT_TRIM_RIGHT,"[3]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ESP32_NEAR}))}},Ad={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXGO_LEFT_FRONT,"[0]"],[mt.Msg.MIXGO_RIGHT_FRONT,"[1]"],[mt.Msg.MIXGO_LEFT_BACK,"[3]"],[mt.Msg.MIXGO_RIGHT_BACK,"[2]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ESP32_NEAR}))}},Ld={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ME_GO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[mt.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[mt.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"],[mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_ONLY,"LS"],[mt.Msg.ME_GO_SENSOR_MODE_OFF,"CL"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.ME_GO_PITCH,"[0]"],[mt.Msg.ME_GO_ROLL,"[1]"],[mt.Msg.ME_GO_PITCH+", "+mt.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Dd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"[0]"],[mt.Msg.MIXGO_LEFT_MID,"[1]"],[mt.Msg.MIXGO_RIGHT_MID,"[2]"],[mt.Msg.TEXT_TRIM_RIGHT,"[3]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR}))}},fd=140,Fd={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},Pd={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},vd={init:function(){this.setColour(fd),this.appendValueInput("SUB").appendField("I2C "+mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_INIT)}},Yd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},xd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},Xd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_I2C_SCAN1+mt.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_SCAN)}},bd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},yd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_SET)}},Vd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_SET+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},Bd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READ)}},Gd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.LANG_MATH_BYTE+" "+mt.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},Ud={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(mt.Msg.MIXLY_SERIAL_READ+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READINTO)}},wd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(mt.Msg.MIXLY_SERIAL_READ+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},kd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_WRITE)}},Hd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(mt.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},Wd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},Kd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_READ+mt.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},Jd={init:function(){this.setColour(fd),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Qd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+mt.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_INIT)}},qd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_SCAN)}},zd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_READ)}},jd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_WRITE).appendField(new mt.FieldDropdown([[mt.Msg.LANG_MATH_STRING,"write"],[mt.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_WRITE)}},Zd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_SELECT)}},$d={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_RESET)}},tI={init:function(){this.setColour(fd),this.appendValueInput("PIN").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_INPUT1,"8"],[mt.Msg.MIXLY_IR_INPUT2,"16"],[mt.Msg.MIXLY_IR_INPUT3,"0"],[mt.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},eI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_CMD_CODE,"0"],[mt.Msg.MIXLY_IR_ADDR_CODE,"1"],[mt.Msg.MIXLY_IR_RAW_CODE,"2"],[mt.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},iI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN).appendField(new mt.FieldDropdown([[mt.Msg.MILY_PAUSE,"True"],[mt.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},sI={init:function(){this.setColour(fd),this.appendValueInput("time").appendField(mt.Msg.MIXlY_RECV_FUN).appendField(mt.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oI={init:function(){this.setColour(fd),this.appendValueInput("PIN").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_IR_SEND).appendField(mt.Msg.MIXLY_PIN),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_SEND_samsung1,"False"],[mt.Msg.MIXLY_IR_SEND_samsung2,"True"],[mt.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(mt.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_I={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(mt.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(mt.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},aI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_IR_PULSE).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},pI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(mt.Msg.MIXLY_IR_RAW_CODE).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},uI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},rI={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField(mt.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catEthernet_init+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+mt.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},lI={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField(mt.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catEthernet_init+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+mt.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},dI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_SCAN+mt.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},II={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},TI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_TEXT_JOIN+mt.Msg.MSG.catBLE).appendField(new mt.FieldDropdown([[mt.Msg.HTML_NAME,"name"],[mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},hI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},MI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catBLE+mt.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(mt.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},mI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catBLE+mt.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},OI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},EI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},RI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+mt.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(mt.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TX_POWER).appendField(new mt.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},gI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+mt.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(mt.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},CI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},SI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},AI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new mt.FieldDropdown([["("+mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+mt.Msg.OLED_STRING+")",""],[mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[mt.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},LI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},NI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},DI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},fI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MP_ESPNOW_RADIO+mt.Msg.MIXLY_TX_POWER).appendField(new mt.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},FI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},PI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},YI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},xI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},XI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},bI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new mt.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},yI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},VI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new mt.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},BI={init:function(){this.setColour(fd),this.appendValueInput("SUB").appendField("Lora"+mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(mt.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(mt.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(mt.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(mt.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new mt.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_LORA_INIT_TOOLTIP)}},GI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_PACKAGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[mt.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},UI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},kI={init:function(){this.setColour(fd),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},HI={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(fd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},WI={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(fd),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},KI=vd,JI=Yd,QI=xd,qI=Xd,zI=bd,jI=yd,ZI=Vd,$I=Bd,tT=Gd,eT=Ud,iT=wd,nT=kd,sT=Hd,oT=Wd,_T=Kd,aT=120;({init:function(){this.setColour(aT),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}}).OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(aT);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const pT="5BA5A5",uT={init:function(){this.setColour(pT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},rT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},lT={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},dT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},TT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},MT={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},mT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},OT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},ET={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},RT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},cT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},gT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new mt.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},CT={init:function(){var t=[[mt.Msg.MICROBIT_DISPLAY_UNION,"add"],[mt.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(mt.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":mt.Msg.MIXLY_MICROBIT_image_add,"-":mt.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},ST={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(pT),this.appendValueInput("A").setCheck("esp32_image").appendField(mt.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},AT={init:function(){this.setColour(pT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},LT={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.OLEDDISPLAY+mt.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(pT),this.setTooltip(mt.Msg.MIXLY_DF_LCD+mt.Msg.OLEDDISPLAY+mt.Msg.MIXLY_MICROBIT_TYPE_STRING)}},NT={init:function(){var t=[[mt.Msg.MIXLY_HEIGHT,"height"],[mt.Msg.MIXLY_WIDTH,"width"]];this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_MICROBIT_IMAGE+{height:mt.Msg.MIXLY_HEIGHT,width:mt.Msg.MIXLY_WIDTH}[t]}))}},DT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RECT).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_OLED_RECT)}},fT={init:function(){this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_DISPLAY_DRAW).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_DISPLAY_RLINE,"hline"],[mt.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE)}},FT={init:function(){this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE_ARBIT)}},PT={init:function(){this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(mt.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},vT={init:function(){this.setColour(pT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},YT={init:function(){this.setColour(pT),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B)}},xT={init:function(){this.setColour(pT),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"ON"],[mt.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},XT={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:mt.Msg.MIXLY_LCD_STAT_CLEAR,1:mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return mt.Msg.MIXLY_DF_LCD+i[e]}))}},bT={init:function(){this.setColour(pT),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new mt.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},yT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},VT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_DISPLAY_DRAW+mt.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_DISPLAY_DRAW+mt.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},BT={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(mt.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},GT={init:function(){this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(mt.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(mt.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(mt.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(mt.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.OLED_SHOW_BMP_TOOLTIP)}},UT={init:function(){this.setColour(pT),this.appendValueInput("VAR").appendField(mt.Msg.OLED),this.appendDummyInput("").appendField(mt.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(mt.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(mt.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.OLED_DRAW_PIXE_TOOLTIP)}},wT={init:function(){this.setColour(pT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[e]}))}},kT={init:function(){this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ON,"on"],[mt.Msg.MIXLY_OFF,"off"],[mt.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},HT={init:function(){this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},WT={init:function(){this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},KT={init:function(){this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},JT={init:function(){this.setColour(pT),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+mt.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(mt.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.blockpy_turtle_rotate).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_NO,"0"],[mt.Msg.ANTI_CLOCKWISE+"90°","1"],[mt.Msg.ANTI_CLOCKWISE+"180°","2"],[mt.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},QT={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},qT={init:function(){this.setColour(pT);let t=new mt.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(t,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},zT={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},jT={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},ZT={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$T={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catTFT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:mt.Msg.MIXLY_LCD_STAT_CLEAR,1:mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return mt.Msg.MIXLY_DF_LCD+i[e]}))}},th={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE_ARBIT)}},eh={init:function(){this.setColour(pT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(mt.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},ih={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.array2_rows),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},nh={init:function(){this.setColour(pT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_SERIAL_PRINT+mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catLCD),this.appendDummyInput().appendField(mt.Msg.TFT_Brightness).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={1:mt.Msg.MIXLY_MICROBIT_Turn_on_display,0:mt.Msg.MIXLY_MICROBIT_Turn_off_display};return mt.Msg.MSG.catLCD+mt.Msg.TFT_Brightness+i[e]}))}},oh={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catLCD),this.setColour(pT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},_h={init:function(){this.setColour(pT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(mt.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},ah={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},ph={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},uh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},rh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},lh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},Ih={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Th={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hh={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},Mh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},mh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Oh={init:function(){this.setColour(pT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},Eh={init:function(){this.jsonInit({colour:pT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},Rh={init:function(){this.jsonInit({colour:pT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},ch={init:function(){this.jsonInit({colour:pT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.mpython_display_hline_1,"1"],[mt.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},gh="#569A98",Ch={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==Ot.Boards.getSelectedBoardKey()&&this.setTooltip(mt.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},Sh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ah={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Lh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Dh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<32;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},Fh={init:function(){this.jsonInit({colour:gh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:mt.Msg.MIXLY_MICROBIT_Built_in_image1,message0:mt.Msg.MIXLY_MICROBIT_Built_in_image})}},Ph={init:function(){this.jsonInit({colour:gh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:mt.Msg.MIXLY_MICROBIT_Built_in_image1,message0:mt.Msg.MIXLY_MICROBIT_Built_in_image})}},vh={init:function(){var t=[[mt.Msg.MICROBIT_DISPLAY_UNION,"add"],[mt.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(gh),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(mt.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":mt.Msg.MIXLY_MICROBIT_image_add,"-":mt.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},Yh={init:function(){this.setColour(gh),this.appendValueInput("A").setCheck("esp32_image").appendField(mt.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},xh={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(gh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:mt.Msg.MIXLY_UP,shift_down:mt.Msg.MIXLY_DOWN,shift_left:mt.Msg.MIXLY_LEFT,shift_right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},Xh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},bh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},yh={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Vh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},Bh={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},Gh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<8;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},Uh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},wh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<16;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0,"esp32_image"),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},kh={init:function(){var t=[["4x5"+mt.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+mt.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+mt.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.OLED_SET_FONT).appendField(new mt.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hh={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Wh={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Kh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Jh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Qh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},qh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},jh={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},Zh={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},$h={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.mpython_display_hline_1,"1"],[mt.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},tM={init:function(){this.jsonInit({colour:gh,args0:[{type:"field_label",name:"size_image",text:mt.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},eM={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<5;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},iM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},nM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},sM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},oM={init:function(){var t=[[mt.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[mt.Msg.CLOCKWISE+"90"+mt.Msg.blockpy_setheading_degree,"1"],[mt.Msg.CLOCKWISE+"180"+mt.Msg.blockpy_setheading_degree,"2"],[mt.Msg.CLOCKWISE+"270"+mt.Msg.blockpy_setheading_degree,"3"]];this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new mt.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_M={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},aM={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},pM={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},uM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},rM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},lM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},dM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},TM={init:function(){this.jsonInit({colour:gh,args0:[{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},hM={init:function(){this.jsonInit({colour:gh,args0:[{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},MM={init:function(){this.jsonInit({colour:gh,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},mM={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(gh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},OM={init:function(){this.setColour(gh),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},EM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},RM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},cM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},gM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},CM={init:function(){this.setColour(gh),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},SM={init:function(){this.setColour(gh),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(mt.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},AM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},LM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(mt.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(mt.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(mt.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},NM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fM={init:function(){this.jsonInit({colour:gh,args0:[{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,message0:mt.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},FM="#777777",PM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField("from ").appendField(new mt.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new mt.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField("import ").appendField(new mt.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},YM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField(new mt.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;ee?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Rm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},cm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},gm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Cm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(mt.Msg.MIXLY_WIFI_USERNAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.MIXLY_IOT_PASSWORD).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_PROJECT).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Sm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(mt.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Am={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_SUBSCRIBE+mt.Msg.MIXLY_MICROBIT_MSG).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},Lm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Dm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},Fm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},Pm={init:function(){this.setColour(Im),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},vm={init:function(){this.setColour(Im),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},Ym={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},xm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(mt.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Xm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+mt.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ym={init:function(){this.VISITOR_ID=Ot.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Im),this.appendDummyInput("").appendField(new mt.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Vm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},Bm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(mt.Msg.MIXLY_REQUESTS_GET).appendField(mt.Msg.MIXLY_GET_CURRENT_TIME).appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Um={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(mt.Msg.MIXLY_INIT_SUBSCRIBE).appendField(mt.Msg.MQTT_Topic).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},wm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},km=Tm,Hm=hm,Wm=Mm,Km=mm,Jm=Em,Qm=225,qm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(mt.Msg.MIXLY_NETWORK_MODE).appendField(new mt.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},zm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[mt.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=mt.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:mt.Msg.MIXLY_NETWORK_WIFI_OPEN,False:mt.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},jm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Zm={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:mt.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},$m={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},tO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_CONNECT+mt.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},eO={init:function(){this.setColour(Qm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},iO={init:function(){this.setColour(Qm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},nO={init:function(){this.setColour(Qm),this.appendValueInput("url").appendField(mt.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},sO={init:function(){this.setColour(Qm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},oO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[mt.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:mt.Msg.MIXLY_ESP32_NETWORK_IP,1:mt.Msg.MIXLY_ESP32_NETWORK_MASK,2:mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},_O={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},aO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},pO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(mt.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},uO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},rO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},lO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},dO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},IO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},TO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},hO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},MO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},mO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},OO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},EO={init:function(){this.setColour(Qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},RO={init:function(){this.setColour(Qm),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},cO={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Qm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},gO={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Qm),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:mt.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:mt.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},CO={init:function(){this.setColour(Qm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(mt.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},SO={init:function(){this.setColour(Qm),this.appendDummyInput("").appendField(new mt.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},AO="#A58C5B",LO={init:function(){this.setColour(AO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_IS_PRESSED)}},NO={init:function(){this.setColour(AO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_WAS_PRESSED)}},DO={init:function(){this.setColour(AO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_BUTTON+mt.Msg.MIXLY_GET_PRESSES)}},fO={init:function(){this.setColour(AO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},FO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"],[mt.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down,freefall:mt.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},PO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},vO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},YO={init:function(){var t=[[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(AO),this.appendValueInput("PIN",Number).appendField(new mt.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},xO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},XO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},bO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"left"],[mt.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(mt.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=mt.Msg.MIXLY_ESP32_NEAR;return i+{left:mt.Msg.TEXT_TRIM_LEFT,right:mt.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},yO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[mt.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},VO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[mt.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},BO={init:function(){this.setColour(AO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},GO={init:function(){this.setColour(AO),this.appendDummyInput("").appendField("LM35"+mt.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LM35)}},UO={init:function(){this.setColour(AO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},wO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[mt.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[mt.Msg.MIXLY_ESP32_MAX30102_IR+","+mt.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},kO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[mt.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[mt.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},HO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},WO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET+mt.Msg.HTML_COLOUR,"[2]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_IR_STRENGTH,"[1]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},KO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_ENV_LIGHT,"E"],[mt.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},JO={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},QO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},qO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},zO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},jO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MIXGOPE_FIELD+mt.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[mt.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},$O={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},tE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET+mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},eE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},iE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},nE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_GETTEMPERATUE)}},sE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},oE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},_E={init:function(){this.setColour(AO),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},aE={init:function(){this.setColour(AO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[mt.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},pE={init:function(){this.setColour(AO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},uE={init:function(){this.setColour(AO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},rE={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},lE={init:function(){this.setColour(AO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},dE={init:function(){this.setColour(AO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},IE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},TE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},hE={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ME={init:function(){this.setColour(AO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+a+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},ZL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},$L=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},tN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},eN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},iN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},nN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},sN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},oN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},_N=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},aN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},pN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},uN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},rN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},lN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},dN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},IN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},TN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},hN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},MN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),a="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(a){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+p+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+p+")\n"}},mN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},ON=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},EN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},RN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},cN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},gN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+a+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+a+")\n"}},CN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),a=e.valueToCode(this,"x2",e.ORDER_ATOMIC),p=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+a+", "+p+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+a+", "+p+", "+r+")\n"}},SN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},AN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},LN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},NN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},DN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},fN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},FN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},PN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),a=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+a+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},vN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},YN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},xN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==p.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+u+",color="+p+")\n";else{const t=p.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},XN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var a=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\n"}return a},bN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color="+p+")\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},yN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},VN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=i+".line("+n+", "+s+", "+o+", "+_+", color="+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},BN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},GN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},UN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},wN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},kN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},HN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Ot.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},WN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},KN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},JN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},QN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},qN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},zN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},jN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ZN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},$N=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},tD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},eD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},iD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},nD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),a=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+a+")\n"+i+".show()\n"},sD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},oD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},_D=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},aD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},pD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},uD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},rD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},lD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},dD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},ID=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},TD=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,a=0;for(let n=0;n<32;n++)n<8?a=7-n:n<16?a=23-n:n<24?a=39-n:n<32&&(a=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-a);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},KD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+p+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+p+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},JD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},QD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var a="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\n"}return a},qD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},zD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color="+p+")\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},jD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==a.slice(0,2))var u="onboard_tft."+p+"("+n+", "+s+", "+o+", "+_+", "+a+")\nonboard_tft.show()\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+p+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},ZD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var p="onboard_tft."+("0"==a?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft."+("0"==a?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return p},$D=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+a+")\nonboard_tft.show()\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return p},tf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},ef=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},nf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},sf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},of=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},_f=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},af=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},pf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=_+"=Clock("+n+","+s+","+o+","+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},uf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},lf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},df=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},If=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==_.slice(0,2))var p="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+a+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+a+")\nonboard_tft.show()\n"}return p},Tf=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},hf=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},Mf=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},px=function(){return"control.reset()\n"},ux=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},rx=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},lx=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},dx=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},Ix=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},Tx=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},hx=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},Mx=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},mx=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},Ox=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},Ex=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},Rx=function(){return"while True:\n pass\n"},cx=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},gx=function(t,e){return e.definitions_.import_os="import os","os.uname()"},Cx=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},Sx=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},Ax=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Lx=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Nx=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},Dx=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},fx=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},Fx=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},Px=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},vx=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},Yx=Dx,xx=Lx,Xx=Nx,bx=Cx,yx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Vx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Bx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Gx={};Gx["MixGo CC"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-31"]),exlcdv:Ot.Profile.generate(["0-11"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Gx["MixGo ME"]={description:"MicroPython[ESP32C3 MixGo ME]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-7"]),exlcdv:Ot.Profile.generate(["0-4"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Gx["MixGo Car 4.2"]={description:"MicroPython[ESP32]",digital_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["20","20"],["21","21"]],digital:[["pin0","pin0"],["pin1","pin1"],["pin2","pin2"],["pin3","pin3"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin20","pin20"],["pin21","pin21"]],pwm_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["20","20"],["21","21"]],pwm:[["pwm0","pwm0"],["pwm1","pwm1"],["pwm2","pwm2"],["pwm3","pwm3"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm6","pwm6"],["pwm7","pwm7"],["pwm8","pwm8"],["pwm9","pwm9"],["pwm10","pwm10"],["pwm20","pwm20"],["pwm21","pwm21"]],espnow_channel:[["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"]],i2c_A_pin:[["6","6"],["9","9"]],i2c_B_pin:[["7","7"],["10","10"]],spi_A_pin:[["6","6"],["9","9"]],spi_B_pin:[["7","7"],["10","10"]],spi_C_pin:[["9","9"],["20","20"]],spi_D_pin:[["10","10"],["21","21"]],analog_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],analog:[["adc0","adc0"],["adc1","adc1"],["adc2","adc2"],["adc3","adc3"],["adc4","adc4"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],buttonB:[["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["24","24"],["25","25"],["26","26"],["27","27"],["28","28"],["29","29"],["30","30"],["31","31"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],builtinimg:[["HEART","matrix.Image.HEART"],["HEART_SMALL","matrix.Image.HEART_SMALL"],["HAPPY","matrix.Image.HAPPY"],["SAD","matrix.Image.SAD"],["SMILE","matrix.Image.SMILE"],["SILLY","matrix.Image.SILLY"],["FABULOUS","matrix.Image.FABULOUS"],["SURPRISED","matrix.Image.SURPRISED"],["ASLEEP","matrix.Image.ASLEEP"],["ANGRY","matrix.Image.ANGRY"],["CONFUSED","matrix.Image.CONFUSED"],["NO","matrix.Image.NO"],["YES","matrix.Image.YES"],["LEFT_ARROW","matrix.Image.LEFT_ARROW"],["RIGHT_ARROW","matrix.Image.RIGHT_ARROW"],["DRESS","matrix.Image.DRESS"],["TRANSFORMERS","matrix.Image.TRANSFORMERS"],["SCISSORS","matrix.Image.SCISSORS"],["EXIT","matrix.Image.EXIT"],["TREE","matrix.Image.TREE"],["PACMAN","matrix.Image.PACMAN"],["TARGET","matrix.Image.TARGET"],["TSHIRT","matrix.Image.TSHIRT"],["ROLLERSKATE","matrix.Image.ROLLERSKATE"],["DUCK","matrix.Image.DUCK"],["HOUSE","matrix.Image.HOUSE"],["TORTOISE","matrix.Image.TORTOISE"],["BUTTERFLY","matrix.Image.BUTTERFLY"],["STICKFIGURE","matrix.Image.STICKFIGURE"],["GHOST","matrix.Image.GHOST"],["PITCHFORK","matrix.Image.PITCHFORK"],["MUSIC_QUAVERS","matrix.Image.MUSIC_QUAVERS"],["MUSIC_QUAVER","matrix.Image.MUSIC_QUAVER"],["MUSIC_CROTCHET","matrix.Image.MUSIC_CROTCHET"],["COW","matrix.Image.COW"],["RABBIT","matrix.Image.RABBIT"],["SQUARE_SMALL","matrix.Image.SQUARE_SMALL"],["SQUARE","matrix.Image.SQUARE"],["DIAMOND_SMALL","matrix.Image.DIAMOND_SMALL"],["DIAMOND","matrix.Image.DIAMOND"],["CHESSBOARD","matrix.Image.CHESSBOARD"],["TRIANGLE_LEFT","matrix.Image.TRIANGLE_LEFT"],["TRIANGLE","matrix.Image.TRIANGLE"],["SNAKE","matrix.Image.SNAKE"],["UMBRELLA","matrix.Image.UMBRELLA"],["SKULL","matrix.Image.SKULL"],["GIRAFFE","matrix.Image.GIRAFFE"],["SWORD","matrix.Image.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","music.DADADADUM"],["ENTERTAINER","music.ENTERTAINER"],["PRELUDE","music.PRELUDE"],["ODE","music.ODE"],["NYAN","music.NYAN"],["RINGTONE","music.RINGTONE"],["FUNK","music.FUNK"],["BLUES","music.BLUES"],["BIRTHDAY","music.BIRTHDAY"],["WEDDING","music.WEDDING"],["FUNERAL","music.FUNERAL"],["PUNCHLINE","music.PUNCHLINE"],["PYTHON","music.PYTHON"],["BADDY","music.BADDY"],["CHASE","music.CHASE"],["BA_DING","music.BA_DING"],["WAWAWAWAA","music.WAWAWAWAA"],["JUMP_UP","music.JUMP_UP"],["JUMP_DOWN","music.JUMP_DOWN"],["POWER_UP","music.POWER_UP"],["POWER_DOWN","music.POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Gx["ESP32C3 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-31"]),exlcdv:Ot.Profile.generate(["0-11"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const Ux=Gx,wx=20,kx={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_HIGH,"HIGH"],[mt.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},Hx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},Wx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},Kx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},Jx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},Qx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_mSecond,"period"],[mt.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},qx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_FREQUENCY+mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},zx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},jx={init:function(){this.setColour(wx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_REF_VOLTAGE+mt.Msg.MIXLY_STAT).appendField(new mt.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},Zx={init:function(){this.setColour(wx),this.appendValueInput("pin").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},$x={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},tX={init:function(){this.setColour(20),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_AS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[mt.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[mt.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[mt.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},eX={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pwm#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},iX={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("dac#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},nX={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("adc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},sX={init:function(){this.setColour(wx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("tc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},oX=tX,_X=qx,aX=sX,pX=Zx,uX=$x,rX=40,lX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput("").appendField(t).appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},dX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput("").appendField(t).appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},IX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},TX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},hX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,Number),this.setInputsInline(!0)}},MX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},mX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0)}},OX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(rX),this.appendDummyInput().appendField(t).appendField("RFID"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},EX=230,RX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital),"PIN"),this.setOutput(!0)}},cX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},gX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},CX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},SX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},AX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},LX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},NX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},DX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},fX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},FX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},PX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},vX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},YX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},xX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},XX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},bX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog),"PIN"),this.setOutput(!0)}},yX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},VX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac),"PIN"),this.setOutput(!0)}},BX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},GX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},UX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},wX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm),"PIN"),this.setOutput(!0)}},kX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},HX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},WX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch),"PIN"),this.setOutput(!0)}},KX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},JX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},QX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},qX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.imglist),"PIN"),this.setOutput(!0)}},zX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist),"PIN"),this.setOutput(!0)}},jX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},ZX={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},$X={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},tb={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},eb={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},ib={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},nb={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},sb={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},ob={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},_b={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},ab={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},pb={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.one_more),"PIN"),this.setOutput(!0)}},ub={init:function(){this.setColour(EX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},rb=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},lb=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},db=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},Ib=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Tb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},hb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},Mb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},mb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Ob=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Eb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},Rb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},cb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},gb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},Cb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},Sb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},Ab=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},Lb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_ahtx0."+i+"()",e.ORDER_ATOMIC]},Nb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_hp203x."+i,e.ORDER_ATOMIC]},Db=function(t,e){e.definitions_.import_me_g1="import me_g1";return["me_g1.varistor()",e.ORDER_ATOMIC]},fb=function(t,e){e.definitions_.import_me_g1="import me_g1";return['me_g1.ext_rc522.read_card(0, x="id")',e.ORDER_ATOMIC]},Fb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.read_card("+i+")",e.ORDER_ATOMIC]},Pb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),n=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1","me_g1.ext_rc522.write_card("+n+","+i+")\n"},vb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),n=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.write_card("+n+","+i+")",e.ORDER_ATOMIC]},Yb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.scan_card()=="+i,e.ORDER_ATOMIC]},xb=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},Xb=xb,bb=xb,yb=xb,Vb=xb,Bb=xb,Gb=xb,Ub=xb,wb=xb,kb=xb,Hb=xb,Wb=xb,Kb=xb,Jb=xb,Qb=xb,qb=xb,zb=xb,jb=xb,Zb=xb,$b=xb,ty=xb,ey=xb,iy=xb,ny=xb,sy=xb,oy=xb,_y=xb,ay=xb,py=xb,uy=xb,ry=xb,ly=xb,dy=xb,Iy=xb,Ty=xb,hy=xb,My=xb,my=xb,Oy=xb,Ey=xb,Ry=xb,cy=xb,gy=xb,Cy=xb,Sy=xb;Object.assign(mt.Variables,Rt),Object.assign(mt.Procedures,Kn),mt.Python=pu,mt.generator=pu,Ot.Profile.default={},Object.assign(Ot.Profile,Ux),Object.assign(Ot.Profile.default,Ux["MixGo CC"]),Object.assign(mt.Blocks,e,i,n,s,o,_,a,p,u,r,l,d,I,V,H,k,x,B,W,f,w,U,G,F,D,N,b,X,y,P,v,Y,lt,dt,It),Object.assign(mt.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,nt,ut,pt,$,st,rt,Q,at,_t,ot,q,J,K,et,tt,it,z,j,Z,Tt,ht,Mt)})(); \ No newline at end of file +class ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(Ft),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},yt={init:function(){this.setColour(Ft),this.appendValueInput("LIST").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(mt.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Vt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Bt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Gt={init:function(){this.setColour(Ft);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Ut={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Vt.OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],Gt.OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},qt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Qt={init:function(){this.jsonInit({message0:mt.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Ft,tooltip:mt.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:mt.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},zt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_STAT),this.setOutput(!0)}},jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Zt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},$t={init:function(){this.appendDummyInput().appendField(mt.Msg.CONTROLS_REPEAT_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(mt.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new mt.FieldDropdown([[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Ft),this.setTooltip("do-while loop"),this.setHelpUrl("")}},te={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ee={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},ie={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ne={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_GET_UNIQUE_IDEN)}},se=230;mt.FieldTextInput.math_number_validator=function(t){return String(t)},mt.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const oe={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},_e={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},ae={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},pe={init:function(){this.setColour(se),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ue={init:function(){this.setColour(se),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},re={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new mt.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},le={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:mt.Msg.MATH_TRIG_TOOLTIP_SIN,COS:mt.Msg.MATH_TRIG_TOOLTIP_COS,TAN:mt.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:mt.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:mt.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:mt.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:mt.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},de={init:function(){var t=[[mt.Msg.MATH_BIN,"bin"],[mt.Msg.MATH_OCT,"oct"],[mt.Msg.MATH_HEX,"hex"]];this.setColour(se),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:mt.Msg.MATH_DEC_TOOLTIP_BIN,oct:mt.Msg.MATH_DEC_TOOLTIP_OCT,hex:mt.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},Ie={init:function(){var t=[[mt.Msg.LANG_MATH_TO_ROUND,"round"],[mt.Msg.LANG_MATH_TO_CEIL,"ceil"],[mt.Msg.LANG_MATH_TO_FLOOR,"floor"],[mt.Msg.MATH_ABS,"fabs"],[mt.Msg.MATH_SQRT,"sqrt"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:mt.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:mt.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:mt.Msg.MATH_SINGLE_TOOLTIP_SQ,round:mt.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:mt.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:mt.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Te={init:function(){var t=[[mt.Msg.MIXLY_MAX,"max"],[mt.Msg.MIXLY_MIN,"min"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:mt.Msg.MIXLY_TOOLTIP_MATH_MAX,min:mt.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},he={init:function(){var t=[[mt.Msg.MATH_TWO,"two"],[mt.Msg.MATH_EIGHT,"eight"],[mt.Msg.MATH_TEN,"ten"],[mt.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(se),this.appendDummyInput("").appendField(mt.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new mt.FieldDropdown(t),"OP").appendField(mt.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MATH_ZHW).appendField(new mt.FieldDropdown(t),"OP2").appendField(mt.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:mt.Msg.MATH_Before_two,eight:mt.Msg.MATH_Before_eight,ten:mt.Msg.MATH_Before_ten,sixteen:mt.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:mt.Msg.MATH_Behind_two,eight:mt.Msg.MATH_Behind_eight,ten:mt.Msg.MATH_Behind_ten,sixteen:mt.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Me={init:function(){var t=[[mt.Msg.LANG_MATH_INT,"int"],[mt.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(se),this.setOutput(!0,Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_RANDOM).appendField(new mt.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:mt.Msg.LANG_MATH_INT,float:mt.Msg.LANG_MATH_FLOAT_RANDOM};return mt.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},me={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_CONSTRAIN_TOOLTIP)}},Oe={init:function(){this.setColour(se),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(mt.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(mt.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Ee={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},Re={init:function(){this.setColour(se),this.appendValueInput("NUM").setCheck(Number).appendField(mt.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},ce={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MATH_ROUND).appendField(mt.Msg.TEXT_KEEP),this.appendDummyInput().appendField(mt.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_ROUND_NEW_TOOLTIP)}},ge={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"],[mt.Msg.MIXLY_TO_BITES,"b"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:mt.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ce={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:mt.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Se=Oe,Ae=160,Le={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}},Ne={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}};mt.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const De={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput("",mt.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(mt.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new mt.FieldImage(e,7,12,'"')}},fe={init:function(){this.setColour(Ae),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(mt.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},Fe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Pe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String).appendField(mt.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},ve={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ye={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},xe={init:function(){this.WHERE_OPTIONS=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.TEXT_GET_INDEX_RANDOM+1+mt.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.LISTS_GET_INDEX_GET,"MODE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(mt.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+mt.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",mt.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:mt.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:mt.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:mt.Msg.TEXT_GET_INDEX_RANDOM};return mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+mt.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==mt.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new mt.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Xe={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.LISTS_GET_INDEX_FROM_START+"n"+mt.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(mt.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(mt.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},ye={init:function(){this.WHERE_OPTIONS_1=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[mt.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==mt.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new mt.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ve={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(mt.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Be={init:function(){var t=[[mt.Msg.MIXLY_EQUALS,"==="],[mt.Msg.MIXLY_STARTSWITH,"startswith"],[mt.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new mt.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Ge={init:function(){this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_COMPARETO_HELP)}},Ue={init:function(){var t=[[mt.Msg.TEXT_UPPER,"upper"],[mt.Msg.TEXT_TITLE,"title"],[mt.Msg.TEXT_CAPITALIZE,"capitalize"],[mt.Msg.TEXT_SWAPCASE,"swapcase"],[mt.Msg.TEXT_LOWER,"lower"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:mt.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:mt.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:mt.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:mt.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:mt.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},we={init:function(){var t=[[mt.Msg.TEXT_LJUST,"ljust"],[mt.Msg.TEXT_CENTER,"center"],[mt.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(mt.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(mt.Msg.MIXLY_MID+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(mt.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},He={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},We={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(mt.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(mt.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(mt.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Je={init:function(){var t=[[mt.Msg.TEXT_TRIM_BOTH,"strip"],[mt.Msg.TEXT_TRIM_LEFT,"lstrip"],[mt.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ae),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(mt.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:mt.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:mt.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:mt.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},qe={init:function(){this.setColour(Ae),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new mt.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Hi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Wi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Ki={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_KEYS),this.setTooltip(mt.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_TOOLTIP)}},qi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Qi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},zi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_DELETE_TOOLTIP)}},ji={init:function(){this.setColour(wi),this.appendValueInput("DICT2").setCheck("Dict").appendField(mt.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(mt.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MID),this.setTooltip(mt.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_CLEAR),this.setTooltip(mt.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$i={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_ITEMS),this.setTooltip(mt.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},tn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_VALUES),this.setTooltip(mt.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},en={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LENGTH),this.setTooltip(mt.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},nn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_DELDICT),this.setTooltip(mt.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sn={init:function(){this.MODE=[[mt.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[mt.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(mt.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=mt.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=mt.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new mt.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},on={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setTooltip(mt.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},_n={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_SETDEFAULT_TOOLTIP)}},an={init:function(){this.setColour(wi),this.appendDummyInput("").appendField(new mt.FieldLabel(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new mt.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},pn={init:function(){this.setColour(wi),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},un={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TO_JSON),this.setTooltip(mt.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},rn={init:function(){this.setColour(wi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(mt.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ln=210,dn={init:function(){var t=mt.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:mt.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:mt.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},In={init:function(){var t=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new mt.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Tn={init:function(){var t=[[mt.Msg.LOGIC_OPERATION_AND,"AND"],[mt.Msg.LOGIC_OPERATION_OR,"OR"],[mt.Msg.LOGIC_OPERATION_NOR,"NOR"],[mt.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:mt.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:mt.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},hn={init:function(){this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(mt.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(mt.Msg.LOGIC_NEGATE_TOOLTIP)}},Mn={init:function(){var t=[[mt.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[mt.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new mt.FieldDropdown(t),"BOOL"),this.setTooltip(mt.Msg.LOGIC_BOOLEAN_TOOLTIP)}},mn={init:function(){this.setColour(ln),this.setOutput(!0),this.appendDummyInput().appendField(mt.Msg.LOGIC_NULL),this.setTooltip(mt.Msg.LOGIC_NULL_TOOLTIP)}},On={init:function(){this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(mt.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(mt.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},En={init:function(){var t=[[mt.Msg.TEXT_APPEND_TO,"in"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new mt.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(mt.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.IN)}},Rn={init:function(){var t=[[mt.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},cn={init:function(){this.setColour(ln),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},gn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(mt.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXPY_TEXT_ENCODE).appendField(new mt.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Ln={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MICROBIT_PYTHON_TYPE)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.HTML_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Bn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+mt.Msg.MIXLY_ESP32_SET+{mkdir:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(mt.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Un={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.HTML_FILE,"isfile"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},kn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(mt.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Hn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(mt.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Wn={};Wn.NAME_TYPE=mt.PROCEDURE_CATEGORY_NAME,Wn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Us={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_FORM_CONTENT).appendField(new mt.FieldDropdown([[mt.Msg.HTML_TEXT,"text"],[mt.Msg.HTML_EMAIL,"email"],[mt.Msg.HTML_NUMBER,"number"],[mt.Msg.HTML_PASSWORD,"password"],[mt.Msg.HTML_CHECKBOX,"checkbox"],[mt.Msg.HTML_RADIOBUTTON,"radiobutton"],[mt.Msg.HTML_BUTTON,"button"],[mt.Msg.HTML_COLOUR,"colour"],[mt.Msg.HTML_DATE,"date"],[mt.Msg.HTML_LOCALTIME,"local time"],[mt.Msg.HTML_FILE,"file"],[mt.Msg.HTML_HIDDEN,"hidden"],[mt.Msg.HTML_IMAGE,"image"],[mt.Msg.HTML_MONTH,"month"],[mt.Msg.HTML_RANGE,"range"],[mt.Msg.HTML_RESET,"reset"],[mt.Msg.HTML_SEARCH,"search"],[mt.Msg.HTML_SUBMIT,"submit"],[mt.Msg.HTML_TELEPHONENUMBER,"telephone number"],[mt.Msg.HTML_TIME,"time"],[mt.Msg.HTML_URL,"url"],[mt.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(mt.Msg.HTML_NAME).appendField(new mt.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(mt.Msg.HTML_VALUE).appendField(new mt.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks={init:function(){this.setColour(xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(xs),this.appendDummyInput().appendField(mt.Msg.HTML_TEXT).appendField(new mt.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws=160,Ks={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new mt.FieldTable(""),"TEXT")}},Js={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT")}},qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Qs={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},zs={init:function(){this.setColour(Ws),this.appendDummyInput().appendTitle("Comment:").appendTitle(new mt.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},js={init:function(){this.setColour(Ws),this.appendValueInput("VALUE").appendField(mt.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Zs={init:function(){this.setColour(Ws),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(mt.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=mt.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+p()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},mt.isNumber(n)&&mt.isNumber(s)&&mt.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const ba=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},ya=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Va=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Ba=function(t,e){return["None",e.ORDER_ATOMIC]},Ga=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Ua=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},wa=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},ka=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Ha=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Wa=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Ka=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Ja=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},qa=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Qa=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},za=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ja=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Za=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},$a=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},tp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},ep=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ip=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},np=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},op=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},_p=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ap=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},pp=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},up=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},rp=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},lp=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},dp=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},Ip=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),mt.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Jp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},qp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},Qp=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},zp=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},jp=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Zp=function(t,e){return'"},$p=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},tu=function(){return this.getFieldValue("TEXT")+"\n"},eu=function(t){return t.getFieldValue("TEXT")+"\n"},iu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},nu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},su=function(){return""},ou=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},_u=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},pu.scrubNakedValue=function(t){return t+"\n"},pu.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},pu.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},pu.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=mt.utils.string.wrap(o,pu.COMMENT_WRAP-3),n+=pu.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+a+" + "+s+")":s<0?"int("+a+" - "+-s+")":"int("+a+")",n&&(a="-"+a)),a};const uu="#74A55B",ru={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},lu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},du={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Iu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Tu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},hu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ou={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},Eu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ru={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},cu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},gu={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField("360°"+mt.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Au={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Nu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Du={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new mt.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(mt.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[mt.Msg.MOTOR_N,"ms32006.MOT_N"],[mt.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Pu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new mt.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},vu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},Yu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+mt.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},yu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Bu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},Gu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Uu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_TRAFFIC_LIGHT).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[mt.Msg.MIXLY_SPEED,"[1]"],[mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[mt.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[mt.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[mt.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},er={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir="#6C9858",nr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},sr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"1"],[mt.Msg.MIXLY_ESP32_OFF,"0"],[mt.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},or={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},_r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LIGHT_RED,"1"],[mt.Msg.MIXLY_LIGHT_GREEN,"2"],[mt.Msg.MIXLY_LIGHT_BLUE,"3"],[mt.Msg.MIXLY_LIGHT_YELLOW,"4"],[mt.Msg.MIXLY_LIGHT_CYAN,"5"],[mt.Msg.MIXLY_LIGHT_PURPLE,"6"],[mt.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},rr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ir={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Tr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},hr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Or={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Er={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},Rr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},cr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},gr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Cr={init:function(){this.setColour(ir),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Sr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},Lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Nr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fr={init:function(){this.setColour(ir),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Fr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"1"],[mt.Msg.TEXT_TRIM_RIGHT,"2"],[mt.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"0"],[mt.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_RECORD_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},jr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},$r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},tl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.MIXLY_ALL+mt.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(mt.ALIGN_RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},el={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},il={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SPECIAL_KEY).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_SPECIAL_KEY1,"1"],[mt.Msg.MIXLY_SPECIAL_KEY2,"2"],[mt.Msg.MIXLY_SPECIAL_KEY1,"4"],[mt.Msg.MIXLY_SPECIAL_KEY8,"8"],[mt.Msg.MIXLY_SPECIAL_KEY16,"16"],[mt.Msg.MIXLY_SPECIAL_KEY32,"32"],[mt.Msg.MIXLY_SPECIAL_KEY64,"64"],[mt.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},nl={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GENERAL_KEY).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},sl={init:function(){this.setColour(ir),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new mt.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(mt.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("generalkey_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Cm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Sm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Am={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Lm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(mt.Msg.MIXLY_WIFI_USERNAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.MIXLY_IOT_PASSWORD).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_PROJECT).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(mt.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Dm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_SUBSCRIBE+mt.Msg.MIXLY_MICROBIT_MSG).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},fm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Fm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},Ym={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},xm={init:function(){this.setColour(Mm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},Xm={init:function(){this.setColour(Mm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},bm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},ym={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(mt.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Vm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+mt.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Bm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gm={init:function(){this.VISITOR_ID=Ot.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Mm),this.appendDummyInput("").appendField(new mt.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Um={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},wm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(mt.Msg.MIXLY_REQUESTS_GET).appendField(mt.Msg.MIXLY_GET_CURRENT_TIME).appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},km={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Hm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(mt.Msg.MIXLY_INIT_SUBSCRIBE).appendField(mt.Msg.MQTT_Topic).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Km=mm,Jm=Om,qm=Em,Qm=Rm,zm=gm,jm=225,Zm={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(mt.Msg.MIXLY_NETWORK_MODE).appendField(new mt.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},$m={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[mt.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=mt.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:mt.Msg.MIXLY_NETWORK_WIFI_OPEN,False:mt.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},tO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},eO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:mt.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},iO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},nO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_CONNECT+mt.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},sO={init:function(){this.setColour(jm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},oO={init:function(){this.setColour(jm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},_O={init:function(){this.setColour(jm),this.appendValueInput("url").appendField(mt.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},aO={init:function(){this.setColour(jm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},pO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[mt.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:mt.Msg.MIXLY_ESP32_NETWORK_IP,1:mt.Msg.MIXLY_ESP32_NETWORK_MASK,2:mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},uO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},rO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},lO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(mt.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},dO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},IO={init:function(){this.setColour(jm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},TO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},hO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},MO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},mO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},OO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},EO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},RO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},cO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},gO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},CO={init:function(){this.setColour(jm),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},SO={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},AO={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:mt.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:mt.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},LO={init:function(){this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(mt.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},NO={init:function(){this.setColour(jm),this.appendDummyInput("").appendField(new mt.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},DO="#A58C5B",fO={init:function(){this.setColour(DO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_IS_PRESSED)}},FO={init:function(){this.setColour(DO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_WAS_PRESSED)}},PO={init:function(){this.setColour(DO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_BUTTON+mt.Msg.MIXLY_GET_PRESSES)}},vO={init:function(){this.setColour(DO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},YO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"],[mt.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down,freefall:mt.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},xO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},XO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},bO={init:function(){var t=[[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(DO),this.appendValueInput("PIN",Number).appendField(new mt.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},yO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},VO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},BO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"left"],[mt.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(mt.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=mt.Msg.MIXLY_ESP32_NEAR;return i+{left:mt.Msg.TEXT_TRIM_LEFT,right:mt.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},GO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[mt.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},UO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[mt.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},wO={init:function(){this.setColour(DO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},kO={init:function(){this.setColour(DO),this.appendDummyInput("").appendField("LM35"+mt.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LM35)}},HO={init:function(){this.setColour(DO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},WO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[mt.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[mt.Msg.MIXLY_ESP32_MAX30102_IR+","+mt.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},KO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[mt.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[mt.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},JO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},qO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET+mt.Msg.HTML_COLOUR,"[2]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_IR_STRENGTH,"[1]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},QO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_ENV_LIGHT,"E"],[mt.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},zO={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},jO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},ZO={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},$O={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},tE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MIXGOPE_FIELD+mt.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[mt.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},eE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},iE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},nE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET+mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},sE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},oE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},_E={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_GETTEMPERATUE)}},aE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},pE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},uE={init:function(){this.setColour(DO),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},rE={init:function(){this.setColour(DO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[mt.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},lE={init:function(){this.setColour(DO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},dE={init:function(){this.setColour(DO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},IE={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},TE={init:function(){this.setColour(DO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},hE={init:function(){this.setColour(DO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ME={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},mE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},OE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},EE={init:function(){this.setColour(DO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+a+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},iN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},nN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},sN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},oN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},_N=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},aN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},pN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},uN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},rN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},lN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},dN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},IN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},TN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},hN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},MN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},mN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},ON=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},EN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},RN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),a="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(a){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+p+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+p+")\n"}},cN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},gN=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},CN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},SN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},AN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},LN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+a+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+a+")\n"}},NN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),a=e.valueToCode(this,"x2",e.ORDER_ATOMIC),p=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+a+", "+p+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+a+", "+p+", "+r+")\n"}},DN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},fN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},FN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},PN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},vN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},YN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},xN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},XN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),a=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+a+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},bN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},yN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},VN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==p.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+u+",color="+p+")\n";else{const t=p.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},BN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var a=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\n"}return a},GN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color="+p+")\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},UN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},wN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=i+".line("+n+", "+s+", "+o+", "+_+", color="+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},kN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},HN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},WN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},KN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},JN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},qN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Ot.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},QN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},zN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},jN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ZN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},$N=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},tD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},eD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},iD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},nD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},sD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},oD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},_D=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},aD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),a=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+a+")\n"+i+".show()\n"},pD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},uD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},rD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},lD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},dD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},ID=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},TD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},hD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},MD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},mD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},OD=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,a=0;for(let n=0;n<32;n++)n<8?a=7-n:n<16?a=23-n:n<24?a=39-n:n<32&&(a=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-a);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},zD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+p+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+a+",center = "+p+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},jD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},ZD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var a="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\n"}return a},$D=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},tf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color="+p+")\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+a+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},ef=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==a.slice(0,2))var u="onboard_tft."+p+"("+n+", "+s+", "+o+", "+_+", "+a+")\nonboard_tft.show()\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+p+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},nf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var p="onboard_tft."+("0"==a?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft."+("0"==a?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return p},sf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+a+")\nonboard_tft.show()\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return p},of=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},_f=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},af=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},pf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},uf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},lf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},df=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var p=_+"=Clock("+n+","+s+","+o+","+a+")\n";else{const t=a.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return p},If=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},Tf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},hf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},Mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==_.slice(0,2))var p="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+a+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+a+")\nonboard_tft.show()\n"}return p},Of=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},Ef=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},Rf=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},dx=function(){return"control.reset()\n"},Ix=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},Tx=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},hx=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},Mx=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},mx=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},Ox=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},Ex=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},Rx=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},cx=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},gx=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},Cx=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},Sx=function(){return"while True:\n pass\n"},Ax=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},Lx=function(t,e){return e.definitions_.import_os="import os","os.uname()"},Nx=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},Dx=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},fx=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Fx=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Px=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},vx=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},Yx=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},xx=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},Xx=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},bx=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},yx=vx,Vx=Fx,Bx=Px,Gx=Nx,Ux=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},wx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},kx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Hx={};Hx["MixGo CC"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-31"]),exlcdv:Ot.Profile.generate(["0-11"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Hx["MixGo ME"]={description:"MicroPython[ESP32C3 MixGo ME]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-7"]),exlcdv:Ot.Profile.generate(["0-4"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Hx["MixGo Car 4.2"]={description:"MicroPython[ESP32]",digital_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["20","20"],["21","21"]],digital:[["pin0","pin0"],["pin1","pin1"],["pin2","pin2"],["pin3","pin3"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin20","pin20"],["pin21","pin21"]],pwm_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["20","20"],["21","21"]],pwm:[["pwm0","pwm0"],["pwm1","pwm1"],["pwm2","pwm2"],["pwm3","pwm3"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm6","pwm6"],["pwm7","pwm7"],["pwm8","pwm8"],["pwm9","pwm9"],["pwm10","pwm10"],["pwm20","pwm20"],["pwm21","pwm21"]],espnow_channel:[["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"]],i2c_A_pin:[["6","6"],["9","9"]],i2c_B_pin:[["7","7"],["10","10"]],spi_A_pin:[["6","6"],["9","9"]],spi_B_pin:[["7","7"],["10","10"]],spi_C_pin:[["9","9"],["20","20"]],spi_D_pin:[["10","10"],["21","21"]],analog_pin:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],analog:[["adc0","adc0"],["adc1","adc1"],["adc2","adc2"],["adc3","adc3"],["adc4","adc4"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],buttonB:[["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["24","24"],["25","25"],["26","26"],["27","27"],["28","28"],["29","29"],["30","30"],["31","31"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],builtinimg:[["HEART","matrix.Image.HEART"],["HEART_SMALL","matrix.Image.HEART_SMALL"],["HAPPY","matrix.Image.HAPPY"],["SAD","matrix.Image.SAD"],["SMILE","matrix.Image.SMILE"],["SILLY","matrix.Image.SILLY"],["FABULOUS","matrix.Image.FABULOUS"],["SURPRISED","matrix.Image.SURPRISED"],["ASLEEP","matrix.Image.ASLEEP"],["ANGRY","matrix.Image.ANGRY"],["CONFUSED","matrix.Image.CONFUSED"],["NO","matrix.Image.NO"],["YES","matrix.Image.YES"],["LEFT_ARROW","matrix.Image.LEFT_ARROW"],["RIGHT_ARROW","matrix.Image.RIGHT_ARROW"],["DRESS","matrix.Image.DRESS"],["TRANSFORMERS","matrix.Image.TRANSFORMERS"],["SCISSORS","matrix.Image.SCISSORS"],["EXIT","matrix.Image.EXIT"],["TREE","matrix.Image.TREE"],["PACMAN","matrix.Image.PACMAN"],["TARGET","matrix.Image.TARGET"],["TSHIRT","matrix.Image.TSHIRT"],["ROLLERSKATE","matrix.Image.ROLLERSKATE"],["DUCK","matrix.Image.DUCK"],["HOUSE","matrix.Image.HOUSE"],["TORTOISE","matrix.Image.TORTOISE"],["BUTTERFLY","matrix.Image.BUTTERFLY"],["STICKFIGURE","matrix.Image.STICKFIGURE"],["GHOST","matrix.Image.GHOST"],["PITCHFORK","matrix.Image.PITCHFORK"],["MUSIC_QUAVERS","matrix.Image.MUSIC_QUAVERS"],["MUSIC_QUAVER","matrix.Image.MUSIC_QUAVER"],["MUSIC_CROTCHET","matrix.Image.MUSIC_CROTCHET"],["COW","matrix.Image.COW"],["RABBIT","matrix.Image.RABBIT"],["SQUARE_SMALL","matrix.Image.SQUARE_SMALL"],["SQUARE","matrix.Image.SQUARE"],["DIAMOND_SMALL","matrix.Image.DIAMOND_SMALL"],["DIAMOND","matrix.Image.DIAMOND"],["CHESSBOARD","matrix.Image.CHESSBOARD"],["TRIANGLE_LEFT","matrix.Image.TRIANGLE_LEFT"],["TRIANGLE","matrix.Image.TRIANGLE"],["SNAKE","matrix.Image.SNAKE"],["UMBRELLA","matrix.Image.UMBRELLA"],["SKULL","matrix.Image.SKULL"],["GIRAFFE","matrix.Image.GIRAFFE"],["SWORD","matrix.Image.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","music.DADADADUM"],["ENTERTAINER","music.ENTERTAINER"],["PRELUDE","music.PRELUDE"],["ODE","music.ODE"],["NYAN","music.NYAN"],["RINGTONE","music.RINGTONE"],["FUNK","music.FUNK"],["BLUES","music.BLUES"],["BIRTHDAY","music.BIRTHDAY"],["WEDDING","music.WEDDING"],["FUNERAL","music.FUNERAL"],["PUNCHLINE","music.PUNCHLINE"],["PYTHON","music.PYTHON"],["BADDY","music.BADDY"],["CHASE","music.CHASE"],["BA_DING","music.BA_DING"],["WAWAWAWAA","music.WAWAWAWAA"],["JUMP_UP","music.JUMP_UP"],["JUMP_DOWN","music.JUMP_DOWN"],["POWER_UP","music.POWER_UP"],["POWER_DOWN","music.POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Hx["ESP32C3 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-11","18-21"]),input_pin:Ot.Profile.generate(["0-11","18-21"]),output_pin:Ot.Profile.generate(["0-11","18-21"]),pwm_input:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-5"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-5"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-11","18-21"]),pwm:Ot.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["0-5"]),analog:Ot.Profile.generate(["0-5"],"adc","adc"),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-31"]),exlcdv:Ot.Profile.generate(["0-11"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const Wx=Hx,Kx=20,Jx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_HIGH,"HIGH"],[mt.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},qx={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},Qx={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},zx={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},jx={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},Zx={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_mSecond,"period"],[mt.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},$x={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_FREQUENCY+mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},tX={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},eX={init:function(){this.setColour(Kx),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_REF_VOLTAGE+mt.Msg.MIXLY_STAT).appendField(new mt.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},iX={init:function(){this.setColour(Kx),this.appendValueInput("pin").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},nX={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},sX={init:function(){this.setColour(20),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_AS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[mt.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[mt.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[mt.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},oX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pwm#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},_X={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("dac#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},aX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("adc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},pX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("tc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},uX=sX,rX=$x,lX=pX,dX=iX,IX=nX,TX=40,hX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput("").appendField(t).appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[t]}))}},MX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput("").appendField(t).appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},mX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},OX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},EX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,Number),this.setInputsInline(!0)}},RX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},cX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0)}},gX={init:function(){if("mixgo_me"==Ot.Boards.getSelectedBoardKey().split(":")[2])var t="ME G1";this.setColour(TX),this.appendDummyInput().appendField(t).appendField("RFID"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},CX=230,SX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital),"PIN"),this.setOutput(!0)}},AX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},LX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},NX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},DX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},fX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},FX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},PX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},vX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},YX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},xX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},XX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},bX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},yX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},VX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},BX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},GX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog),"PIN"),this.setOutput(!0)}},UX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},wX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac),"PIN"),this.setOutput(!0)}},kX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},HX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},WX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},KX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm),"PIN"),this.setOutput(!0)}},JX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},qX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},QX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch),"PIN"),this.setOutput(!0)}},zX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},jX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},ZX={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},$X={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.imglist),"PIN"),this.setOutput(!0)}},tb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist),"PIN"),this.setOutput(!0)}},eb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},ib={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},nb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},sb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},ob={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},_b={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},ab={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},pb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},ub={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},rb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},lb={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},db={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.one_more),"PIN"),this.setOutput(!0)}},Ib={init:function(){this.setColour(CX),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},Tb=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},hb=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},Mb=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},mb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Ob=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Eb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},Rb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},cb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},gb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Cb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},Sb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},Ab=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},Lb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},Nb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},Db=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},fb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},Fb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_ahtx0."+i+"()",e.ORDER_ATOMIC]},Pb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_hp203x."+i,e.ORDER_ATOMIC]},vb=function(t,e){e.definitions_.import_me_g1="import me_g1";return["me_g1.varistor()",e.ORDER_ATOMIC]},Yb=function(t,e){e.definitions_.import_me_g1="import me_g1";return['me_g1.ext_rc522.read_card(0, x="id")',e.ORDER_ATOMIC]},xb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.read_card("+i+")",e.ORDER_ATOMIC]},Xb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),n=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1","me_g1.ext_rc522.write_card("+n+","+i+")\n"},bb=function(t,e){var i=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),n=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.write_card("+n+","+i+")",e.ORDER_ATOMIC]},yb=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_me_g1="import me_g1",["me_g1.ext_rc522.scan_card()=="+i,e.ORDER_ATOMIC]},Vb=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},Bb=Vb,Gb=Vb,Ub=Vb,wb=Vb,kb=Vb,Hb=Vb,Wb=Vb,Kb=Vb,Jb=Vb,qb=Vb,Qb=Vb,zb=Vb,jb=Vb,Zb=Vb,$b=Vb,ty=Vb,ey=Vb,iy=Vb,ny=Vb,sy=Vb,oy=Vb,_y=Vb,ay=Vb,py=Vb,uy=Vb,ry=Vb,ly=Vb,dy=Vb,Iy=Vb,Ty=Vb,hy=Vb,My=Vb,my=Vb,Oy=Vb,Ey=Vb,Ry=Vb,cy=Vb,gy=Vb,Cy=Vb,Sy=Vb,Ay=Vb,Ly=Vb,Ny=Vb,Dy=Vb;Object.assign(mt.Variables,Rt),Object.assign(mt.Procedures,Kn),mt.Python=pu,mt.generator=pu,Ot.Profile.default={},Object.assign(Ot.Profile,Wx),Object.assign(Ot.Profile.default,Wx["MixGo CC"]),Object.assign(mt.Blocks,e,i,n,s,o,_,a,p,u,r,l,d,I,V,H,k,x,B,W,f,w,U,G,F,D,N,b,X,y,P,v,Y,lt,dt,It),Object.assign(mt.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,nt,ut,pt,$,st,rt,q,at,_t,ot,Q,J,K,et,tt,it,z,j,Z,Tt,ht,Mt)})(); \ No newline at end of file diff --git a/boards/default/micropython_esp32c3/styles/main.ef8a80ae.css b/boards/default/micropython_esp32c3/styles/main.9bd681ce.css similarity index 100% rename from boards/default/micropython_esp32c3/styles/main.ef8a80ae.css rename to boards/default/micropython_esp32c3/styles/main.9bd681ce.css diff --git a/boards/default/micropython_esp32s2/index.xml b/boards/default/micropython_esp32s2/index.xml index 254346bc..28cf22dc 100644 --- a/boards/default/micropython_esp32s2/index.xml +++ b/boards/default/micropython_esp32s2/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func010,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_func2022711420452023,1,1,12,0,018029100440440100004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistancei2c_extend1718400000g6i2c_extendg6g6100g6g6100g6g6100g6wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.cn/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSfsxo7MfAaNO1U_Pq北京Sfsxo7MfAaNO1U_Pq北京1Sfsxo7MfAaNO1U_Pq北京243820000391000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr124ws_wrws_wrws_wr360010zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi10000001246spi45tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func010,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_func2022711420452023,1,1,12,0,018029100440440100004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.51001001000interrupt_funcinterrupt_functurnsdistancei2c_extend1718400000g6i2c_extendg6g6100g6g6100g6g6100g6wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.cn/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSfsxo7MfAaNO1U_Pq北京Sfsxo7MfAaNO1U_Pq北京1Sfsxo7MfAaNO1U_Pq北京243820000391000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr124ws_wrws_wrws_wr360010zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi10000001246spi45tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file diff --git a/boards/default/micropython_esp32s2/main.bundle.js b/boards/default/micropython_esp32s2/main.bundle.js index 9133956b..fbd2f0f6 100644 --- a/boards/default/micropython_esp32s2/main.bundle.js +++ b/boards/default/micropython_esp32s2/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Dt,controls_typeLists:()=>ft,variables_change:()=>Lt,variables_get:()=>St,variables_global:()=>Nt,variables_set:()=>At});var i={};t.r(i),t.d(i,{base_setup:()=>vt,controls_delay:()=>Yt,controls_end_program:()=>Xt,controls_except:()=>Jt,controls_finally:()=>qt,controls_flow_statements:()=>Gt,controls_for:()=>Ut,controls_forEach:()=>yt,controls_for_range:()=>wt,controls_if:()=>xt,controls_if_else:()=>Wt,controls_if_elseif:()=>Ht,controls_if_if:()=>kt,controls_lambda:()=>Qt,controls_main:()=>Pt,controls_pass:()=>jt,controls_range:()=>bt,controls_repeat_ext:()=>zt,controls_thread:()=>Zt,controls_try:()=>Kt,controls_try_finally:()=>Bt,controls_whileUntil:()=>Vt,do_while:()=>$t,garbage_collection:()=>te,get_mem_alloc:()=>ee,get_mem_free:()=>ie,get_unique_identifier:()=>ne});var n={};t.r(n),t.d(n,{base_map:()=>Se,math_arithmetic:()=>ae,math_bit:()=>re,math_constant:()=>_e,math_constant_mp:()=>pe,math_constrain:()=>me,math_dec:()=>de,math_indexer_number:()=>Ee,math_map:()=>Oe,math_max_min:()=>Te,math_number:()=>oe,math_number_base_conversion:()=>he,math_random:()=>Me,math_random_seed:()=>Re,math_round:()=>ce,math_selfcalcu:()=>ue,math_to_int:()=>Ie,math_trig:()=>le,text_to_number:()=>ge,text_to_number_skulpt:()=>Ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>Fe,char_to_ascii:()=>Pe,number_to_text:()=>ve,os_system:()=>ni,text:()=>Le,text_capital:()=>Ue,text_center:()=>we,text_char:()=>De,text_char_at:()=>xe,text_char_at2:()=>Xe,text_char_at3:()=>$e,text_compareTo:()=>Ze,text_compare_to:()=>Ge,text_create_with_container:()=>ze,text_create_with_item:()=>Qe,text_encode:()=>ei,text_equals_starts_ends:()=>Be,text_eval:()=>ii,text_find:()=>ke,text_format:()=>qe,text_format_noreturn:()=>ti,text_join:()=>fe,text_join_seq:()=>He,text_length:()=>Ye,text_random_char:()=>be,text_replace:()=>We,text_split:()=>Ke,text_strip:()=>Je,text_substring:()=>Ve,text_substring2:()=>ye,text_substring3:()=>je,text_textarea:()=>Ne});var o={};t.r(o),t.d(o,{list_many_input:()=>Li,list_tolist:()=>Yi,list_tolist2:()=>Ui,list_trig:()=>Ci,lists_2d_get_col_row_data:()=>ai,lists_2d_get_data_with_col_row:()=>pi,lists_append_extend:()=>Ti,lists_change_to:()=>Ai,lists_change_to_general:()=>Di,lists_clear:()=>Ei,lists_create_with:()=>ui,lists_create_with2:()=>Xi,lists_create_with_container:()=>li,lists_create_with_item:()=>di,lists_create_with_noreturn:()=>Ni,lists_create_with_text:()=>ri,lists_create_with_text2:()=>xi,lists_del_general:()=>fi,lists_find:()=>gi,lists_getIndex3:()=>bi,lists_getSublist3:()=>yi,lists_get_index:()=>oi,lists_get_random_item:()=>hi,lists_get_random_sublist:()=>Mi,lists_get_sublist:()=>_i,lists_insert_value:()=>mi,lists_insert_value2:()=>Bi,lists_pop:()=>ci,lists_remove_at:()=>Ri,lists_remove_at2:()=>Gi,lists_reverse:()=>Oi,lists_setIndex3:()=>Vi,lists_set_index:()=>Ii,lists_sort:()=>Si,lists_zip:()=>Fi,lists_zip_container:()=>Pi,lists_zip_item:()=>vi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>sn,dicts_add_or_change:()=>zi,dicts_clear:()=>Zi,dicts_create_with:()=>ki,dicts_create_with_container:()=>Hi,dicts_create_with_item:()=>Wi,dicts_create_with_noreturn:()=>pn,dicts_deldict:()=>nn,dicts_delete:()=>Qi,dicts_get:()=>Ji,dicts_get_default:()=>qi,dicts_items:()=>$i,dicts_keys:()=>Ki,dicts_length:()=>en,dicts_pop:()=>on,dicts_setdefault:()=>_n,dicts_to_json:()=>un,dicts_todict:()=>an,dicts_update:()=>ji,dicts_values:()=>tn,json_to_dicts:()=>rn});var p={};t.r(p),t.d(p,{logic_boolean:()=>Mn,logic_compare:()=>dn,logic_compare_continous:()=>In,logic_is:()=>Rn,logic_is_in:()=>En,logic_negate:()=>hn,logic_null:()=>mn,logic_operation:()=>Tn,logic_tobool:()=>cn,logic_true_or_false:()=>On});var a={};t.r(a),t.d(a,{sdcard_mount:()=>Hn,sdcard_use_spi_init:()=>kn,storage_can_write_ornot:()=>Fn,storage_change_dir:()=>Un,storage_close_file:()=>vn,storage_delete_file:()=>Xn,storage_file_seek:()=>yn,storage_file_tell:()=>bn,storage_file_write:()=>Ln,storage_fileopen:()=>Cn,storage_fileopen_new:()=>Sn,storage_fileopen_new_encoding:()=>An,storage_get_a_line:()=>fn,storage_get_contents:()=>Dn,storage_get_contents_without_para:()=>Nn,storage_get_current_dir:()=>Vn,storage_get_file_size:()=>xn,storage_get_filename:()=>Pn,storage_is_file:()=>wn,storage_list_all_files:()=>Yn,storage_make_dir:()=>Bn,storage_open_file_with_os:()=>gn,storage_rename:()=>Gn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>jn,procedures_callreturn:()=>Zn,procedures_defnoreturn:()=>Jn,procedures_defreturn:()=>qn,procedures_ifreturn:()=>$n,procedures_mutatorarg:()=>Qn,procedures_mutatorcontainer:()=>zn,procedures_return:()=>ts});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ds,tuple_create_with:()=>is,tuple_create_with_container:()=>ns,tuple_create_with_item:()=>ss,tuple_create_with_noreturn:()=>Ms,tuple_create_with_text2:()=>os,tuple_create_with_text_return:()=>_s,tuple_del:()=>us,tuple_find:()=>Is,tuple_getIndex:()=>ps,tuple_getSublist:()=>hs,tuple_get_random_item:()=>Os,tuple_get_sublist:()=>ms,tuple_join:()=>rs,tuple_length:()=>as,tuple_max:()=>ls,tuple_totuple:()=>Es,tuple_trig:()=>Ts});var l={};t.r(l),t.d(l,{set_add_discard:()=>fs,set_clear:()=>Ls,set_create_with:()=>cs,set_create_with_container:()=>gs,set_create_with_item:()=>Cs,set_create_with_text_return:()=>vs,set_length:()=>Ss,set_operate:()=>Ns,set_operate_update:()=>Ds,set_pop:()=>As,set_sub:()=>Fs,set_toset:()=>Ys,set_update:()=>Ps});var d={};t.r(d),t.d(d,{html_content:()=>Vs,html_content_more:()=>Bs,html_document:()=>xs,html_form:()=>Us,html_head_body:()=>ys,html_style:()=>Gs,html_style_color:()=>ks,html_style_content:()=>ws,html_text:()=>Hs,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>so,function_call:()=>eo,function_call_container:()=>io,function_call_item:()=>no,raw_block:()=>Js,raw_empty:()=>zs,raw_expression:()=>qs,raw_table:()=>Ks,text_comment:()=>Qs,text_print_multiple:()=>Zs,text_print_multiple_container:()=>$s,text_print_multiple_item:()=>to,type_check:()=>js});var T={};t.r(T),t.d(T,{controls_type:()=>uo,controls_typeLists:()=>ro,variables_change:()=>po,variables_get:()=>oo,variables_global:()=>ao,variables_set:()=>_o});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>co,base_setup:()=>Io,controls_delay:()=>Ro,controls_flow_statements:()=>Eo,controls_for:()=>Mo,controls_forEach:()=>Lo,controls_for_range:()=>mo,controls_if:()=>To,controls_interrupts:()=>So,controls_lambda:()=>Do,controls_main:()=>lo,controls_millis:()=>go,controls_nointerrupts:()=>Ao,controls_pass:()=>Fo,controls_range:()=>No,controls_repeat:()=>Vo,controls_repeat_ext:()=>Yo,controls_thread:()=>Po,controls_try_finally:()=>ho,controls_whileUntil:()=>Oo,do_while:()=>vo,garbage_collection:()=>Xo,get_mem_alloc:()=>xo,get_mem_free:()=>bo,get_unique_identifier:()=>yo,reset:()=>Co,time_sleep:()=>fo});var M={};t.r(M),t.d(M,{base_map:()=>o_,math_arithmetic:()=>ko,math_bit:()=>wo,math_constant:()=>Go,math_constant_mp:()=>Uo,math_constrain:()=>Zo,math_dec:()=>Jo,math_indexer_number:()=>e_,math_map:()=>jo,math_max_min:()=>zo,math_number:()=>Bo,math_number_base_conversion:()=>$o,math_random:()=>Qo,math_random_seed:()=>t_,math_round:()=>i_,math_selfcalcu:()=>Ho,math_single:()=>Wo,math_to_int:()=>qo,math_trig:()=>Ko,text_to_number:()=>n_,text_to_number_skulpt:()=>s_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>r_,char_to_ascii:()=>l_,number_to_text:()=>d_,os_system:()=>x_,text:()=>__,text_capital:()=>c_,text_center:()=>g_,text_char:()=>a_,text_char_at:()=>h_,text_char_at2:()=>T_,text_char_at3:()=>v_,text_compareTo:()=>P_,text_compare_to:()=>O_,text_encode:()=>Y_,text_equals_starts_ends:()=>m_,text_eval:()=>X_,text_find:()=>C_,text_format:()=>D_,text_format_noreturn:()=>f_,text_join:()=>u_,text_join_seq:()=>S_,text_length:()=>I_,text_random_char:()=>M_,text_replace:()=>A_,text_split:()=>L_,text_strip:()=>N_,text_substring:()=>R_,text_substring2:()=>E_,text_substring3:()=>F_,text_textarea:()=>p_});var O={};t.r(O),t.d(O,{list_many_input:()=>ep,list_tolist:()=>Ip,list_tolist2:()=>Tp,list_trig:()=>Z_,lists_2d_get_col_row_data:()=>V_,lists_2d_get_data_with_col_row:()=>y_,lists_append_extend:()=>k_,lists_change_to:()=>tp,lists_change_to_general:()=>np,lists_clear:()=>q_,lists_create_with:()=>B_,lists_create_with2:()=>op,lists_create_with_noreturn:()=>ip,lists_create_with_text:()=>G_,lists_create_with_text2:()=>_p,lists_del_general:()=>sp,lists_find:()=>z_,lists_getIndex3:()=>pp,lists_getSublist3:()=>ap,lists_get_index:()=>U_,lists_get_random_item:()=>H_,lists_get_random_sublist:()=>W_,lists_get_sublist:()=>b_,lists_insert_value:()=>K_,lists_insert_value2:()=>rp,lists_pop:()=>j_,lists_remove_at:()=>Q_,lists_remove_at2:()=>lp,lists_reverse:()=>J_,lists_setIndex3:()=>up,lists_set_index:()=>w_,lists_sort:()=>$_,lists_zip:()=>dp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Np,dicts_add_or_change:()=>Ep,dicts_clear:()=>gp,dicts_create_with:()=>hp,dicts_create_with_noreturn:()=>Fp,dicts_deldict:()=>Lp,dicts_delete:()=>Rp,dicts_get:()=>mp,dicts_get_default:()=>Op,dicts_items:()=>Cp,dicts_keys:()=>Mp,dicts_length:()=>Ap,dicts_pop:()=>Dp,dicts_setdefault:()=>fp,dicts_to_json:()=>vp,dicts_todict:()=>Pp,dicts_update:()=>cp,dicts_values:()=>Sp,json_to_dicts:()=>Yp});var R={};t.r(R),t.d(R,{logic_boolean:()=>Vp,logic_compare:()=>Xp,logic_compare_continous:()=>xp,logic_is:()=>wp,logic_is_in:()=>Up,logic_negate:()=>yp,logic_null:()=>Bp,logic_operation:()=>bp,logic_tobool:()=>kp,logic_true_or_false:()=>Gp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>da,sdcard_use_spi_init:()=>la,storage_can_write_ornot:()=>Zp,storage_change_dir:()=>_a,storage_close_file:()=>ta,storage_delete_file:()=>ia,storage_file_seek:()=>oa,storage_file_tell:()=>sa,storage_file_write:()=>qp,storage_fileopen:()=>Wp,storage_fileopen_new:()=>Kp,storage_fileopen_new_encoding:()=>Jp,storage_get_a_line:()=>jp,storage_get_contents:()=>Qp,storage_get_contents_without_para:()=>zp,storage_get_current_dir:()=>pa,storage_get_file_size:()=>na,storage_get_filename:()=>$p,storage_is_file:()=>ra,storage_list_all_files:()=>ea,storage_make_dir:()=>aa,storage_open_file_with_os:()=>Hp,storage_rename:()=>ua});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Ma,procedures_callreturn:()=>ha,procedures_defnoreturn:()=>Ta,procedures_defreturn:()=>Ia,procedures_ifreturn:()=>ma,procedures_return:()=>Oa});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Na,tuple_create_with:()=>Ea,tuple_create_with_noreturn:()=>Pa,tuple_create_with_text2:()=>Ra,tuple_create_with_text_return:()=>ca,tuple_del:()=>Sa,tuple_find:()=>Da,tuple_getIndex:()=>ga,tuple_getSublist:()=>Fa,tuple_get_random_item:()=>Ya,tuple_get_sublist:()=>va,tuple_join:()=>Aa,tuple_length:()=>Ca,tuple_max:()=>La,tuple_totuple:()=>Xa,tuple_trig:()=>fa});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ua,set_clear:()=>Va,set_create_with:()=>xa,set_create_with_text_return:()=>Ha,set_length:()=>ba,set_operate:()=>Ba,set_operate_update:()=>Ga,set_pop:()=>ya,set_sub:()=>wa,set_toset:()=>Wa,set_update:()=>ka});var A={};t.r(A),t.d(A,{html_content:()=>za,html_content_more:()=>Qa,html_document:()=>Ka,html_form:()=>Za,html_head_body:()=>qa,html_style:()=>ja,html_style_content:()=>$a,html_text:()=>tu,html_title:()=>Ja});var L={};t.r(L),t.d(L,{attribute_access:()=>pu,function_call:()=>_u,raw_block:()=>eu,raw_empty:()=>nu,raw_expression:()=>iu,raw_table:()=>su,type_check:()=>ou});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>Eu,actuator_extern_get_led_state:()=>Ru,actuator_extern_led_bright:()=>Ou,actuator_extern_led_brightness:()=>cu,actuator_ms32006_dcmotor:()=>Fu,actuator_ms32006_init:()=>fu,actuator_ms32006_stepper:()=>Pu,actuator_neopixel_init:()=>vu,actuator_neopixel_rgb:()=>Yu,actuator_neopixel_rgb_all:()=>Xu,actuator_neopixel_write:()=>xu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>hu,esp32_music_pitch:()=>lu,esp32_music_pitch_init:()=>ru,esp32_music_pitch_with_time:()=>du,esp32_music_play_list:()=>Iu,esp32_music_reset_extern:()=>Mu,esp32_music_set_tempo_extern:()=>Tu,esp32_music_stop:()=>mu,mixbot_actuator_extern_get_addr:()=>tr,mixbot_actuator_extern_set_addr:()=>er,mixbot_addr_extern:()=>Uu,robot_led_extern:()=>Wu,robot_led_extern_get_value:()=>Ku,robot_motor_extern:()=>wu,robot_motor_extern_get_speed:()=>ku,robot_servo_extern_absolute_run:()=>Qu,robot_servo_extern_get_status:()=>Ju,robot_servo_extern_relative_continue:()=>$u,robot_servo_extern_relative_origin:()=>ju,robot_servo_extern_relative_run:()=>Zu,robot_servo_extern_stop:()=>zu,robot_servo_extern_stop_mode:()=>qu,robot_traffic_light_extern:()=>Hu,servo_get_angle:()=>Nu,servo_get_speed:()=>Du,servo_init:()=>gu,servo_move:()=>Cu,servo_set_angle:()=>Au,servo_set_speed:()=>Lu,servo_speed_360:()=>Su,syn6288_builtin_voice:()=>Bu,syn6288_get_voice:()=>Vu,syn6288_set_voice:()=>yu,syn6288_tts_play:()=>Gu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Yr,actuator_dc_motor_stop:()=>Xr,actuator_get_led_bright:()=>_r,actuator_get_led_state:()=>pr,actuator_led_bright:()=>or,actuator_led_brightness:()=>ar,actuator_mixbot_buzzer_on_off:()=>Br,actuator_mixgo_nova_mic_get:()=>Hr,actuator_mixgo_nova_mic_set:()=>kr,actuator_mixgo_nova_onboard_music_pitch:()=>Qr,actuator_mixgo_nova_onboard_music_stop:()=>jr,actuator_mixgo_nova_play_audio:()=>qr,actuator_mixgo_nova_play_online_audio:()=>zr,actuator_mixgo_nova_record_audio:()=>Jr,actuator_mixgo_nova_voice_get:()=>Kr,actuator_mixgo_nova_voice_set:()=>Wr,actuator_mixgo_zero_led_color:()=>ur,actuator_onboard_neopixel_rgb:()=>hr,actuator_onboard_neopixel_rgb_all:()=>Mr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Or,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>mr,actuator_onboard_neopixel_write:()=>Er,actuator_rm_onboard_neopixel_rgb:()=>Rr,actuator_rm_onboard_neopixel_rgb_all:()=>cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>gr,actuator_stepper_keep:()=>Pr,actuator_stepper_stop:()=>vr,analog_keyboard_input:()=>el,analog_keyboard_str:()=>_l,analog_mouse_input:()=>sl,bitbot_motor:()=>wr,bitbot_move:()=>Gr,bitbot_stop:()=>Ur,cc_number:()=>Tr,esp32_music_get_tempo:()=>Sr,esp32_music_reset:()=>Ar,esp32_music_set_tempo:()=>Cr,esp32_onboard_music_pitch:()=>Lr,esp32_onboard_music_pitch_with_time:()=>Nr,esp32_onboard_music_play_list:()=>fr,esp32_onboard_music_stop:()=>Dr,general_key:()=>nl,get_power_output:()=>$r,ledswitch:()=>sr,mixbot_motor:()=>Vr,mixbot_motor_status:()=>xr,mixbot_move:()=>br,mixbot_stop:()=>yr,mouse_key:()=>ol,number:()=>nr,rm_actuator_get_led_bright:()=>lr,rm_actuator_get_led_state:()=>dr,rm_actuator_led_bright:()=>rr,rm_actuator_led_brightness:()=>Ir,rm_motor:()=>Fr,set_all_power_output:()=>tl,set_power_output:()=>Zr,special_key:()=>il});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>Gl,ai_sensor_ailocal_class:()=>fl,ai_sensor_ailocal_class_result:()=>Fl,ai_sensor_ailocal_train:()=>Dl,ai_sensor_asr_recognize:()=>xl,ai_sensor_audio_play:()=>vl,ai_sensor_audio_record:()=>Pl,ai_sensor_barcode:()=>Tl,ai_sensor_circle:()=>Rl,ai_sensor_classifier_faces:()=>Bl,ai_sensor_color:()=>Sl,ai_sensor_color_chases:()=>Nl,ai_sensor_color_chases_result:()=>Ll,ai_sensor_config:()=>dl,ai_sensor_face:()=>Vl,ai_sensor_find_20objects:()=>Ul,ai_sensor_find_barcodes:()=>hl,ai_sensor_find_circles:()=>cl,ai_sensor_find_colors:()=>Al,ai_sensor_find_licenseplates:()=>yl,ai_sensor_find_lines:()=>El,ai_sensor_find_qrcodes:()=>ll,ai_sensor_find_rects:()=>Cl,ai_sensor_find_tags:()=>ml,ai_sensor_licenseplate:()=>bl,ai_sensor_line:()=>Ol,ai_sensor_qrcode:()=>ul,ai_sensor_qrcode_lite:()=>rl,ai_sensor_rect:()=>gl,ai_sensor_rgb:()=>Il,ai_sensor_tag:()=>Ml,ai_sensor_use_uart_init:()=>al,ai_sensor_yolo_recognize:()=>Yl,ai_sensor_yolo_recognize_result:()=>Xl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Hl,MICROPYTHON_AI_Speech_unit:()=>kl,MICROPYTHON_AI_client:()=>wl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>od,mpython_blynk_app_notify:()=>Zl,mpython_blynk_email:()=>ed,mpython_blynk_get_timers:()=>id,mpython_blynk_on_connected:()=>zl,mpython_blynk_on_disconnected:()=>ql,mpython_blynk_run:()=>jl,mpython_blynk_sensor_data_to_app:()=>sd,mpython_blynk_set_property:()=>td,mpython_blynk_setup:()=>_d,mpython_blynk_stop_timers:()=>$l,mpython_blynk_sync_virtual:()=>Jl,mpython_blynk_terminal_widget_vpin:()=>Kl,mpython_blynktimer:()=>nd,mpython_blynktimer_run:()=>Ql});var v={};t.r(v),t.d(v,{cc_g1_init:()=>pd,cc_g1_read_bat:()=>ad,cc_g1_read_joystick:()=>ud,cc_g1_read_key:()=>rd,cc_g1_turnoff:()=>ld});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>Rd,ce_go_get_led_bright:()=>hd,ce_go_get_led_state:()=>Md,ce_go_hall_attachInterrupt:()=>cd,ce_go_hall_data:()=>Cd,ce_go_hall_initialize:()=>gd,ce_go_led_bright:()=>Td,ce_go_led_brightness:()=>md,ce_go_light_number:()=>Id,ce_go_pin_light:()=>Dd,ce_go_pin_near:()=>Ad,ce_go_pin_near_line:()=>Sd,ce_go_pin_near_state_change:()=>Ld,ce_go_stepper_keep:()=>Od,ce_go_stepper_stop:()=>Ed,sensor_mixgome_eulerangles:()=>Nd});var X={};t.r(X),t.d(X,{communicate_bluetooth_central_init:()=>rI,communicate_bluetooth_connect:()=>TI,communicate_bluetooth_disconnect:()=>hI,communicate_bluetooth_handle:()=>RI,communicate_bluetooth_is_connected:()=>mI,communicate_bluetooth_mac:()=>II,communicate_bluetooth_peripheral_init:()=>lI,communicate_bluetooth_recv:()=>OI,communicate_bluetooth_recv_only:()=>EI,communicate_bluetooth_scan:()=>dI,communicate_bluetooth_send:()=>MI,communicate_espnow_init:()=>cI,communicate_espnow_init_new:()=>gI,communicate_i2c_available:()=>Kd,communicate_i2c_init:()=>vd,communicate_i2c_master_read:()=>Wd,communicate_i2c_onboard:()=>Fd,communicate_i2c_read:()=>Yd,communicate_i2c_scan:()=>xd,communicate_i2c_write:()=>Xd,communicate_ir_recv_init:()=>tI,communicate_ir_send_init:()=>oI,communicate_ow_init:()=>qd,communicate_ow_read:()=>Qd,communicate_ow_reset:()=>$d,communicate_ow_scan:()=>zd,communicate_ow_select:()=>Zd,communicate_ow_write:()=>jd,communicate_spi_buffer:()=>Vd,communicate_spi_init:()=>bd,communicate_spi_onboard:()=>Pd,communicate_spi_read:()=>Bd,communicate_spi_read_output:()=>Gd,communicate_spi_readinto:()=>Ud,communicate_spi_readinto_output:()=>wd,communicate_spi_set:()=>yd,communicate_spi_write:()=>kd,communicate_spi_write_readinto:()=>Hd,espnow_radio_channel:()=>DI,espnow_radio_channel_new:()=>FI,espnow_radio_on_off:()=>PI,espnow_radio_rec:()=>YI,espnow_radio_recv:()=>xI,espnow_radio_recv_certain_msg:()=>bI,espnow_radio_recv_certain_msg_new:()=>VI,espnow_radio_recv_msg:()=>XI,espnow_radio_recv_new:()=>yI,espnow_radio_send:()=>vI,espnow_radio_txpower:()=>fI,i2c_available:()=>_T,i2c_init:()=>KI,i2c_master_reader2:()=>oT,i2c_read:()=>JI,i2c_scan:()=>zI,i2c_slave_onreceive:()=>Jd,i2c_write:()=>qI,internal_variable:()=>eI,ir_recv_timeout:()=>sI,ir_transmit_busy:()=>uI,ir_transmit_conventional_data:()=>_I,ir_transmit_raw_code:()=>aI,ir_transmit_study_code:()=>pI,ir_whether_recv:()=>nI,lora_init:()=>BI,lora_packet:()=>GI,lora_recv:()=>wI,lora_send:()=>UI,network_espnow_info:()=>SI,network_espnow_mac:()=>CI,network_espnow_recv:()=>AI,network_espnow_recv_handle:()=>NI,network_espnow_send:()=>LI,recv_fun:()=>iI,spi_buffer:()=>ZI,spi_init:()=>QI,spi_read:()=>$I,spi_read_output:()=>tT,spi_readinto:()=>eT,spi_readinto_output:()=>iT,spi_set:()=>jI,spi_write:()=>nT,spi_write_readinto:()=>sT,urequests_attribute:()=>HI,urequests_get:()=>kI,urequests_method:()=>WI});var x={};t.r(x),t.d(x,{display_animate:()=>bT,display_blink_rate:()=>vT,display_circle:()=>yT,display_color_seclet:()=>zT,display_draw_4strings:()=>LT,display_fill:()=>xT,display_get_screen_image:()=>PT,display_help:()=>BT,display_image_size:()=>NT,display_lcd_use_i2c_init:()=>eh,display_line:()=>fT,display_line_arbitrarily:()=>FT,display_matrix_extern_bright_point:()=>OT,display_matrix_extern_bright_screen:()=>RT,display_matrix_extern_clear:()=>cT,display_matrix_extern_get_pixel:()=>mT,display_matrix_extern_get_screen_pixel:()=>ET,display_matrix_extern_image_builtins:()=>gT,display_matrix_extern_scroll_string:()=>dT,display_matrix_extern_scroll_string_delay:()=>IT,display_matrix_extern_shift:()=>MT,display_matrix_extern_show_frame_string:()=>TT,display_matrix_extern_show_frame_string_delay:()=>hT,display_matrix_extern_show_image:()=>rT,display_matrix_extern_show_image_or_string_delay:()=>lT,display_matrix_use_i2c_init:()=>uT,display_oled_drawPixel:()=>UT,display_oled_showBitmap:()=>GT,display_oled_use_i2c_init:()=>_h,display_onoff:()=>XT,display_rect:()=>DT,display_rgb_color:()=>YT,display_tm1650_power:()=>kT,display_tm1650_set_brightness:()=>KT,display_tm1650_show_dot:()=>WT,display_tm1650_show_num:()=>HT,display_tm_use_i2c_init:()=>wT,display_triangle:()=>VT,display_use_i2c_init:()=>AT,extern_oled_bright_point:()=>mh,extern_oled_clear:()=>Oh,extern_oled_get_pixel:()=>Mh,extern_oled_hvline:()=>Rh,extern_oled_line:()=>ch,extern_oled_scroll_string:()=>lh,extern_oled_scroll_string_delay:()=>dh,extern_oled_shape_rect:()=>Eh,extern_oled_shift:()=>hh,extern_oled_show_frame_string:()=>Ih,extern_oled_show_frame_string_delay:()=>Th,extern_oled_show_image:()=>ph,extern_oled_show_image_or_string_delay:()=>rh,extern_oled_show_image_xy:()=>ah,extern_oled_show_string:()=>uh,lcd_backlight:()=>sh,lcd_clear:()=>oh,lcd_print_string:()=>nh,lcd_show_image_or_string_delay:()=>ih,matrix_extern_image_arithmetic:()=>CT,matrix_extern_image_invert:()=>ST,tft_fill:()=>$T,tft_line_arbitrarily:()=>th,tft_scroll_string_delay:()=>jT,tft_show_frame_string_delay:()=>ZT,tft_show_image_or_string_delay:()=>QT,tft_show_image_xy:()=>qT,tft_use_spi_init:()=>JT});var b={};t.r(b),t.d(b,{bitbot_display_image_create:()=>_M,display_bright_point:()=>bh,display_bright_screen:()=>Vh,display_clear:()=>Bh,display_get_pixel:()=>xh,display_get_screen_pixel:()=>yh,display_image_builtins:()=>Fh,display_image_builtins_all:()=>Ph,display_image_create:()=>fh,display_scroll_string:()=>Ah,display_scroll_string_delay:()=>Lh,display_shift:()=>Xh,display_show_frame_string:()=>Nh,display_show_frame_string_delay:()=>Dh,display_show_image:()=>Ch,display_show_image_or_string_delay:()=>Sh,image_arithmetic:()=>vh,image_invert:()=>Yh,mixbot_display_bright_screen:()=>sM,mixbot_display_get_ambientbright:()=>nM,mixbot_display_get_screen_pixel:()=>iM,mixbot_display_image_create:()=>eM,mixbot_display_rotate:()=>oM,mixgo_display_image_create_new:()=>wh,mixgome_display_font:()=>kh,mixgome_display_image_create:()=>Gh,mixgomini_display_image_create:()=>Uh,mpython_display_hvline:()=>Zh,mpython_display_line:()=>$h,mpython_display_shape_rect:()=>jh,mpython_pbm_image:()=>tM,onboard_oled_bright_point:()=>Qh,onboard_oled_scroll_string_delay:()=>qh,onboard_oled_show_frame_string_delay:()=>zh,onboard_oled_show_image:()=>Hh,onboard_oled_show_image_or_string_delay:()=>Jh,onboard_oled_show_image_xy:()=>Wh,onboard_oled_show_string:()=>Kh,onboard_tft_bright_point:()=>EM,onboard_tft_bright_screen:()=>gM,onboard_tft_clear:()=>RM,onboard_tft_clock_clear:()=>DM,onboard_tft_clock_draw:()=>NM,onboard_tft_clock_get_rtctime:()=>AM,onboard_tft_clock_init:()=>SM,onboard_tft_clock_set_time:()=>LM,onboard_tft_display_hvline:()=>hM,onboard_tft_display_line:()=>MM,onboard_tft_display_shape_circle:()=>fM,onboard_tft_display_shape_rect:()=>TM,onboard_tft_fill:()=>CM,onboard_tft_get_pixel:()=>OM,onboard_tft_get_screen_pixel:()=>cM,onboard_tft_scroll_string:()=>rM,onboard_tft_scroll_string_delay:()=>lM,onboard_tft_shift:()=>mM,onboard_tft_show_frame_string:()=>dM,onboard_tft_show_frame_string_delay:()=>IM,onboard_tft_show_image:()=>pM,onboard_tft_show_image_or_string_delay:()=>uM,onboard_tft_show_image_xy:()=>aM});var y={};t.r(y),t.d(y,{factory_block:()=>GM,factory_block_return:()=>UM,factory_block_return_with_textarea:()=>kM,factory_block_with_textarea:()=>wM,factory_callMethod_noreturn:()=>VM,factory_callMethod_return:()=>BM,factory_create_with_container:()=>XM,factory_create_with_item:()=>xM,factory_declare:()=>yM,factory_from_import:()=>PM,factory_function_noreturn:()=>YM,factory_function_return:()=>bM,factory_import:()=>vM,folding_block:()=>HM});var V={};t.r(V),t.d(V,{controls_pin_attachInterrupt:()=>dm,inout_analog_atten:()=>tm,inout_analog_read:()=>$M,inout_analog_read_init:()=>_m,inout_analog_write:()=>QM,inout_analog_write_init:()=>om,inout_analog_write_set:()=>jM,inout_analog_write_set_freq:()=>um,inout_digital_init:()=>nm,inout_digital_read:()=>qM,inout_digital_write:()=>JM,inout_highlow:()=>KM,inout_pinMode:()=>am,inout_pin_attachInterrupt:()=>im,inout_pin_pressed:()=>em,inout_pin_pressed_init:()=>pm,inout_pwm_analog_write:()=>zM,inout_pwm_analog_write_init:()=>sm,inout_pwm_analog_write_set_freq:()=>ZM,pin_pressed:()=>lm,pin_pressed_init:()=>rm});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>bm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>xm,IOT_EMQX_PING:()=>Ym,IOT_FORMATTING:()=>Pm,IOT_FORMAT_STRING:()=>vm,IOT_MIXIO_NTP:()=>Xm,IOT_MIXIO_PUBLISH:()=>Sm,IOT_MIXIO_SUBSCRIBE:()=>Am,iot_checkonenet:()=>Km,iot_client_onboard:()=>Vm,iot_create_with_item:()=>gm,iot_http_client:()=>Bm,iot_http_data:()=>Gm,iot_mixio_check:()=>Dm,iot_mixio_connect:()=>Cm,iot_mixio_connect_only:()=>Nm,iot_mixio_disconnect:()=>Lm,iot_mixio_format_msg:()=>Fm,iot_mixio_format_topic:()=>fm,iot_mixly_key:()=>ym,iot_mqtt_client:()=>Um,iot_mqtt_data:()=>wm,iot_onenet_check:()=>mm,iot_onenet_connect:()=>hm,iot_onenet_disconnect:()=>Mm,iot_onenet_publish:()=>Em,iot_onenet_publish_dict:()=>Om,iot_onenetconnect:()=>Hm,iot_onenetdisconnect:()=>Wm,iot_publish:()=>Jm,iot_publish_container:()=>Rm,iot_publish_item:()=>cm,iot_wifi_connect:()=>Tm,iot_wificonnect:()=>km});var G={};t.r(G),t.d(G,{network_ap_connect:()=>aO,network_connect:()=>$m,network_get_connect:()=>oO,network_get_wifi:()=>pO,network_init:()=>zm,network_is_active:()=>jm,network_open:()=>Qm,network_scan:()=>Zm,network_server:()=>uO,network_socket_accept:()=>TO,network_socket_bind:()=>lO,network_socket_close:()=>EO,network_socket_connect:()=>dO,network_socket_init:()=>rO,network_socket_listen:()=>IO,network_socket_receive:()=>hO,network_socket_receive_from:()=>mO,network_socket_send:()=>MO,network_socket_send_to:()=>OO,network_stop:()=>_O,network_wifi_connect:()=>tO,ntptime_address:()=>SO,ntptime_time:()=>CO,requests_attribute:()=>cO,requests_get:()=>RO,requests_method:()=>gO,urequests_connect_url:()=>nO,urequests_response:()=>sO,urequests_wifi_connect:()=>eO,urequests_wifi_url:()=>iO});var U={};t.r(U),t.d(U,{pe_g1_battery_left:()=>NO,pe_g1_dc_motor:()=>DO,pe_g1_dc_motor_speed:()=>fO,pe_g1_servo_get_angle:()=>vO,pe_g1_servo_get_speed:()=>YO,pe_g1_servo_set_angle:()=>FO,pe_g1_servo_set_speed:()=>PO,pe_g1_use_i2c_init:()=>LO});var w={};t.r(w),t.d(w,{HCSR04:()=>XE,PS2_Button:()=>VE,PS2_Buttons:()=>GE,PS2_Buttons_new:()=>HE,PS2_State:()=>BE,PS2_init:()=>xE,PS2_init_new:()=>wE,PS2_stk:()=>UE,PS2_stk_new:()=>WE,PS2_vibration:()=>yE,PS2_vibration_new:()=>kE,esp32_s2_weather_init:()=>FE,esp32_s2_weather_rain:()=>vE,esp32_s2_weather_wd:()=>PE,esp32_s2_weather_ws:()=>YE,extern_rfid_read:()=>ME,extern_rfid_readcontent:()=>OE,extern_rfid_readid:()=>mE,extern_rfid_status:()=>cE,extern_rfid_write:()=>EE,extern_rfid_write_return:()=>RE,gnss_get_data:()=>zE,gnss_have_data:()=>qE,mixbot_sensor_extern_get_addr:()=>iR,mixbot_sensor_extern_set_addr:()=>nR,pm25_get_data:()=>JE,robot_button_extern_get_value:()=>QE,robot_color_extern_get_value:()=>eR,robot_infrared_extern_get_value:()=>ZE,robot_infrared_extern_grey_get_value:()=>$E,robot_potentiometer_extern_get_value:()=>tR,robot_sonar_extern_get_value:()=>sR,robot_sonar_extern_led:()=>oR,robot_touch_extern_get_value:()=>jE,sensor_APDS9960_extern:()=>ZO,sensor_LTR308_extern:()=>$O,sensor_LTR390UV_extern:()=>eE,sensor_MAX30102_extern:()=>jO,sensor_QMC5883L_extern:()=>_E,sensor_VL530LX_extern:()=>iE,sensor_adxl345_get_acceleration:()=>GO,sensor_aht11_extern:()=>sE,sensor_bmp:()=>KO,sensor_compass_reset:()=>TE,sensor_dht11:()=>wO,sensor_ds18x20:()=>qO,sensor_hp203_extern:()=>oE,sensor_light_level:()=>UO,sensor_lm35:()=>zO,sensor_ltr381_extern:()=>tE,sensor_mixgo_extern_button_attachInterrupt:()=>VO,sensor_mixgo_extern_button_get_presses:()=>yO,sensor_mixgo_extern_button_is_pressed:()=>xO,sensor_mixgo_extern_button_was_pressed:()=>bO,sensor_mixgo_extern_light:()=>kO,sensor_mixgo_extern_pin_near:()=>WO,sensor_mixgo_extern_sound:()=>HO,sensor_mixgoce_hot_wheel_degrees:()=>fE,sensor_mixgoce_hot_wheel_is_touched:()=>DE,sensor_mpu9250_attachGestureInterrupt:()=>BO,sensor_mpu9250_calibrate_compass:()=>lE,sensor_mpu9250_field_strength:()=>IE,sensor_mpu9250_gesture:()=>pE,sensor_mpu9250_get_acceleration:()=>aE,sensor_mpu9250_get_gyro:()=>rE,sensor_mpu9250_get_magnetic:()=>uE,sensor_mpu9250_temperature:()=>dE,sensor_sht:()=>JO,sensor_shtc3_extern:()=>nE,sensor_use_i2c_init:()=>QO,sensor_use_spi_init:()=>hE,sensor_use_uart_init:()=>KE,sensor_weather_solo_init:()=>_R,sensor_weather_solo_rain:()=>uR,sensor_weather_solo_wd:()=>pR,sensor_weather_solo_ws:()=>aR,weather_data:()=>gE,weather_have_data:()=>CE,weather_set_label:()=>AE,weather_set_label_container:()=>LE,weather_set_label_item:()=>NE,weather_uart_mixio:()=>SE});var k={};t.r(k),t.d(k,{HCSR04:()=>LR,RTC_set_date:()=>AR,RTC_set_time:()=>SR,bitbot_als_num:()=>Pc,dht11:()=>Vc,number1:()=>DR,number2:()=>fR,number3:()=>FR,number4:()=>PR,number5:()=>vR,number6:()=>YR,number7:()=>XR,onboard_RTC_get_time:()=>UR,onboard_RTC_get_timestamp:()=>wR,onboard_RTC_set_datetime:()=>WR,onboard_RTC_settime_string:()=>HR,onboard_RTC_timestamp_totuple:()=>kR,rfid_readcontent:()=>$R,rfid_readid:()=>ZR,rfid_write:()=>tc,rfid_write_return:()=>ec,sensor_LTR308:()=>JR,sensor_aht11:()=>zR,sensor_bitbot_ALS:()=>Fc,sensor_button_get_presses:()=>Xc,sensor_button_is_pressed:()=>vc,sensor_button_was_pressed:()=>Yc,sensor_distance_hrsc04:()=>CR,sensor_eulerangles:()=>nc,sensor_field_strength:()=>Bc,sensor_get_acceleration:()=>ic,sensor_get_temperature:()=>QR,sensor_hp203:()=>jR,sensor_light:()=>yc,sensor_mixbot_get_gyro:()=>fc,sensor_mixbot_patrol_calibrate:()=>Lc,sensor_mixbot_patrol_value:()=>Nc,sensor_mixbot_temperature:()=>Dc,sensor_mixgo_LTR308:()=>GR,sensor_mixgo_button_attachInterrupt:()=>TR,sensor_mixgo_button_get_presses:()=>IR,sensor_mixgo_button_is_pressed:()=>lR,sensor_mixgo_button_was_pressed:()=>dR,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Tc,sensor_mixgo_cc_mmc5603_get_angle:()=>Ic,sensor_mixgo_cc_mmc5603_get_magnetic:()=>dc,sensor_mixgo_light:()=>NR,sensor_mixgo_nova_LTR308:()=>BR,sensor_mixgo_nova_pin_near:()=>VR,sensor_mixgo_pin_near:()=>yR,sensor_mixgo_pin_near_double:()=>bR,sensor_mixgo_pin_near_single:()=>xR,sensor_mixgo_pin_pressed:()=>ER,sensor_mixgo_touch_slide:()=>gR,sensor_mixgocar42_button_attachInterrupt:()=>OR,sensor_mixgocar42_button_get_presses:()=>mR,sensor_mixgocar42_button_is_pressed:()=>hR,sensor_mixgocar42_button_was_pressed:()=>MR,sensor_mixgocar_battery_left:()=>Ac,sensor_mixgocar_pin_near:()=>Cc,sensor_mixgocar_pin_near_line:()=>gc,sensor_mixgocar_pin_near_state_change:()=>Sc,sensor_mixgoce_pin_pressed:()=>RR,sensor_mixgoce_temperature:()=>Mc,sensor_mixgome_temperature:()=>hc,sensor_mpython_pin_pressed:()=>cR,sensor_mpython_qmi8658_get_gyro:()=>mc,sensor_mpython_qmi8658_temperature:()=>Oc,sensor_onboard_compass_reset:()=>lc,sensor_onboard_mpu9250_calibrate_compass:()=>ac,sensor_onboard_mpu9250_field_strength:()=>rc,sensor_onboard_mpu9250_gesture:()=>sc,sensor_onboard_mpu9250_get_acceleration:()=>oc,sensor_onboard_mpu9250_get_gyro:()=>pc,sensor_onboard_mpu9250_get_magnetic:()=>_c,sensor_onboard_mpu9250_temperature:()=>uc,sensor_pin_near:()=>bc,sensor_pin_pressed:()=>xc,sensor_rm_acc:()=>cc,sensor_rm_battery_left:()=>Rc,sensor_rm_pin_near_double:()=>Ec,sensor_rtc_init:()=>KR,sensor_sound:()=>qR,sensor_temperature:()=>Gc});var H={};t.r(H),t.d(H,{serial_any:()=>qc,serial_begin:()=>$c,serial_print:()=>kc,serial_print_byte:()=>wc,serial_print_hex:()=>Wc,serial_println:()=>Hc,serial_read_from_ai:()=>ag,serial_readline:()=>zc,serial_readstr:()=>Jc,serial_readstr_until:()=>Qc,serial_receive_data_event:()=>Kc,serial_send_to_ai:()=>pg,serial_softserial:()=>Zc,serial_softserial_new:()=>jc,system_input:()=>tg,system_print:()=>eg,system_print_container:()=>og,system_print_end:()=>ng,system_print_inline:()=>ig,system_print_item:()=>_g,system_print_many:()=>sg});var W={};t.r(W),t.d(W,{Panic_with_status_code:()=>dg,Timer_init:()=>Ag,base_delay:()=>Dg,controls_delay:()=>lg,controls_delay_new:()=>rg,controls_millis:()=>Tg,controls_uname:()=>Mg,raw_block:()=>hg,reset:()=>Ig,system_bitbot_shutdown:()=>Sg,system_machine_reset:()=>Cg,system_ticks_diff:()=>Eg,system_timer:()=>Og,system_timer_init:()=>Rg,system_wdt_feed:()=>gg,system_wdt_init:()=>cg,time_ticks_diff:()=>Ng,timer:()=>mg,timer2:()=>Lg});var K={};t.r(K),t.d(K,{WEATHER_DAILY:()=>Pg,WEATHER_HOUR:()=>vg,WEATHER_NOW:()=>Fg});var J={};t.r(J),t.d(J,{actuator_extern_get_led_bright:()=>Zg,actuator_extern_get_led_state:()=>$g,actuator_extern_led_bright:()=>jg,actuator_extern_led_brightness:()=>tC,actuator_ms32006_dcmotor:()=>Gg,actuator_ms32006_init:()=>Bg,actuator_ms32006_stepper:()=>Ug,actuator_neopixel_init:()=>eC,actuator_neopixel_rgb:()=>sC,actuator_neopixel_rgb_all:()=>iC,actuator_neopixel_write:()=>nC,actuator_use_uart_init:()=>oC,esp32_music_get_tempo_extern:()=>Jg,esp32_music_pitch:()=>kg,esp32_music_pitch_init:()=>wg,esp32_music_pitch_with_time:()=>Hg,esp32_music_play_list:()=>qg,esp32_music_reset_extern:()=>zg,esp32_music_set_tempo_extern:()=>Kg,esp32_music_stop:()=>Wg,mixbot_actuator_extern_get_addr:()=>CC,mixbot_actuator_extern_set_addr:()=>SC,mixbot_addr_extern:()=>rC,robot_led_extern:()=>TC,robot_led_extern_get_value:()=>hC,robot_motor_extern:()=>lC,robot_motor_extern_get_speed:()=>dC,robot_servo_extern_absolute_run:()=>EC,robot_servo_extern_get_status:()=>MC,robot_servo_extern_relative_continue:()=>gC,robot_servo_extern_relative_origin:()=>RC,robot_servo_extern_relative_run:()=>cC,robot_servo_extern_stop:()=>OC,robot_servo_extern_stop_mode:()=>mC,robot_traffic_light_extern:()=>IC,servo_get_angle:()=>yg,servo_get_speed:()=>Vg,servo_init:()=>Yg,servo_move:()=>Qg,servo_set_angle:()=>xg,servo_set_speed:()=>bg,servo_speed_360:()=>Xg,syn6288_builtin_voice:()=>aC,syn6288_get_voice:()=>pC,syn6288_set_voice:()=>_C,syn6288_tts_play:()=>uC});var q={};t.r(q),t.d(q,{actuator_dc_motor:()=>ZC,actuator_dc_motor_stop:()=>$C,actuator_get_led_bright:()=>xC,actuator_get_led_state:()=>bC,actuator_led_bright:()=>XC,actuator_led_brightness:()=>yC,actuator_mixbot_buzzer_on_off:()=>sS,actuator_mixgo_nova_mic_get:()=>uS,actuator_mixgo_nova_mic_set:()=>aS,actuator_mixgo_nova_onboard_music_pitch:()=>hS,actuator_mixgo_nova_onboard_music_stop:()=>MS,actuator_mixgo_nova_play_audio:()=>IS,actuator_mixgo_nova_play_online_audio:()=>TS,actuator_mixgo_nova_record_audio:()=>dS,actuator_mixgo_nova_voice_get:()=>lS,actuator_mixgo_nova_voice_set:()=>rS,actuator_mixgo_zero_led_color:()=>VC,actuator_onboard_neopixel_rgb:()=>WC,actuator_onboard_neopixel_rgb_all:()=>KC,actuator_onboard_neopixel_rgb_show_all_chase:()=>JC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>qC,actuator_onboard_neopixel_write:()=>HC,actuator_stepper_keep:()=>QC,actuator_stepper_stop:()=>jC,analog_keyboard_input:()=>RS,analog_keyboard_str:()=>AS,analog_mouse_input:()=>CS,bitbot_motor:()=>pS,bitbot_move:()=>oS,bitbot_stop:()=>_S,cc_number:()=>BC,esp32_music_get_tempo:()=>LC,esp32_music_reset:()=>PC,esp32_music_set_tempo:()=>AC,esp32_onboard_music_pitch:()=>NC,esp32_onboard_music_pitch_with_time:()=>DC,esp32_onboard_music_play_list:()=>FC,esp32_onboard_music_stop:()=>fC,general_key:()=>gS,get_power_output:()=>OS,ledswitch:()=>YC,mixbot_motor:()=>nS,mixbot_motor_status:()=>tS,mixbot_move:()=>eS,mixbot_stop:()=>iS,mouse_key:()=>SS,number:()=>vC,rm_actuator_get_led_bright:()=>UC,rm_actuator_get_led_state:()=>wC,rm_actuator_led_bright:()=>GC,rm_actuator_led_brightness:()=>kC,rm_motor:()=>zC,set_all_power_output:()=>ES,set_power_output:()=>mS,special_key:()=>cS});var z={};t.r(z),t.d(z,{ai_sensor_20object:()=>sA,ai_sensor_ailocal_class:()=>JS,ai_sensor_ailocal_class_result:()=>qS,ai_sensor_ailocal_train:()=>KS,ai_sensor_asr_recognize:()=>$S,ai_sensor_audio_play:()=>QS,ai_sensor_audio_record:()=>zS,ai_sensor_barcode:()=>vS,ai_sensor_circle:()=>VS,ai_sensor_classifier_faces:()=>nA,ai_sensor_color:()=>wS,ai_sensor_color_chases:()=>WS,ai_sensor_color_chases_result:()=>HS,ai_sensor_config:()=>DS,ai_sensor_face:()=>iA,ai_sensor_find_20objects:()=>oA,ai_sensor_find_barcodes:()=>YS,ai_sensor_find_circles:()=>BS,ai_sensor_find_colors:()=>kS,ai_sensor_find_licenseplates:()=>eA,ai_sensor_find_lines:()=>yS,ai_sensor_find_qrcodes:()=>PS,ai_sensor_find_rects:()=>US,ai_sensor_find_tags:()=>xS,ai_sensor_licenseplate:()=>tA,ai_sensor_line:()=>bS,ai_sensor_qrcode:()=>FS,ai_sensor_qrcode_lite:()=>NS,ai_sensor_rect:()=>GS,ai_sensor_rgb:()=>fS,ai_sensor_tag:()=>XS,ai_sensor_use_uart_init:()=>LS,ai_sensor_yolo_recognize:()=>jS,ai_sensor_yolo_recognize_result:()=>ZS});var Q={};t.r(Q),t.d(Q,{MICROPYTHON_AI_Speech_asr:()=>aA,MICROPYTHON_AI_Speech_unit:()=>pA,MICROPYTHON_AI_client:()=>_A});var j={};t.r(j),t.d(j,{mpython_blynk_app_data:()=>RA,mpython_blynk_app_notify:()=>hA,mpython_blynk_email:()=>cA,mpython_blynk_get_timers:()=>mA,mpython_blynk_on_connected:()=>dA,mpython_blynk_on_disconnected:()=>lA,mpython_blynk_run:()=>TA,mpython_blynk_sensor_data_to_app:()=>EA,mpython_blynk_set_property:()=>gA,mpython_blynk_setup:()=>CA,mpython_blynk_stop_timers:()=>MA,mpython_blynk_sync_virtual:()=>rA,mpython_blynk_terminal_widget_vpin:()=>uA,mpython_blynktimer:()=>OA,mpython_blynktimer_run:()=>IA});var Z={};t.r(Z),t.d(Z,{cc_g1_read_bat:()=>SA,cc_g1_read_joystick:()=>AA,cc_g1_read_key:()=>LA,cc_g1_turnoff:()=>NA});var $={};t.r($),t.d($,{ce_go_dc_motor:()=>xA,ce_go_get_led_bright:()=>FA,ce_go_get_led_state:()=>PA,ce_go_hall_attachInterrupt:()=>bA,ce_go_hall_data:()=>VA,ce_go_hall_initialize:()=>yA,ce_go_led_bright:()=>fA,ce_go_led_brightness:()=>vA,ce_go_light_number:()=>DA,ce_go_pin_light:()=>kA,ce_go_pin_near:()=>GA,ce_go_pin_near_line:()=>BA,ce_go_pin_near_state_change:()=>UA,ce_go_stepper_keep:()=>YA,ce_go_stepper_stop:()=>XA,sensor_mixgome_eulerangles:()=>wA});var tt={};t.r(tt),t.d(tt,{communicate_bluetooth_central_init:()=>SL,communicate_bluetooth_connect:()=>NL,communicate_bluetooth_disconnect:()=>DL,communicate_bluetooth_handle:()=>XL,communicate_bluetooth_is_connected:()=>FL,communicate_bluetooth_mac:()=>fL,communicate_bluetooth_peripheral_init:()=>AL,communicate_bluetooth_recv:()=>YL,communicate_bluetooth_recv_only:()=>vL,communicate_bluetooth_scan:()=>LL,communicate_bluetooth_send:()=>PL,communicate_espnow_init:()=>xL,communicate_espnow_init_new:()=>bL,communicate_i2c_available:()=>jA,communicate_i2c_init:()=>KA,communicate_i2c_master_read:()=>QA,communicate_i2c_onboard:()=>HA,communicate_i2c_read:()=>JA,communicate_i2c_scan:()=>zA,communicate_i2c_write:()=>qA,communicate_ir_recv_init:()=>TL,communicate_ir_send_init:()=>EL,communicate_ow_init:()=>aL,communicate_ow_read:()=>lL,communicate_ow_reset:()=>rL,communicate_ow_scan:()=>uL,communicate_ow_select:()=>IL,communicate_ow_write:()=>dL,communicate_spi_buffer:()=>eL,communicate_spi_init:()=>$A,communicate_spi_onboard:()=>WA,communicate_spi_read:()=>iL,communicate_spi_read_output:()=>nL,communicate_spi_readinto:()=>sL,communicate_spi_readinto_output:()=>oL,communicate_spi_set:()=>tL,communicate_spi_write:()=>_L,communicate_spi_write_readinto:()=>pL,espnow_radio_channel:()=>wL,espnow_radio_channel_new:()=>HL,espnow_radio_on_off:()=>WL,espnow_radio_rec:()=>JL,espnow_radio_recv:()=>zL,espnow_radio_recv_certain_msg:()=>QL,espnow_radio_recv_certain_msg_new:()=>ZL,espnow_radio_recv_msg:()=>qL,espnow_radio_recv_new:()=>jL,espnow_radio_send:()=>KL,espnow_radio_txpower:()=>kL,i2c_slave_onreceive:()=>ZA,internal_variable:()=>hL,ir_recv_timeout:()=>OL,ir_transmit_busy:()=>CL,ir_transmit_conventional_data:()=>RL,ir_transmit_raw_code:()=>gL,ir_transmit_study_code:()=>cL,ir_whether_recv:()=>mL,lora_init:()=>$L,lora_packet:()=>tN,lora_recv:()=>iN,lora_send:()=>eN,network_espnow_info:()=>VL,network_espnow_mac:()=>yL,network_espnow_recv:()=>BL,network_espnow_recv_handle:()=>UL,network_espnow_send:()=>GL,recv_fun:()=>ML,urequests_attribute:()=>sN,urequests_get:()=>nN,urequests_method:()=>oN});var et={};t.r(et),t.d(et,{display_animate:()=>FN,display_circle:()=>PN,display_color_seclet:()=>wN,display_draw_4strings:()=>CN,display_fill:()=>fN,display_lcd_use_i2c_init:()=>qN,display_line:()=>LN,display_line_arbitrarily:()=>SN,display_matrix_extern_bright_point:()=>MN,display_matrix_extern_bright_screen:()=>ON,display_matrix_extern_clear:()=>IN,display_matrix_extern_get_pixel:()=>hN,display_matrix_extern_get_screen_pixel:()=>mN,display_matrix_extern_image_builtins:()=>EN,display_matrix_extern_scroll_string:()=>lN,display_matrix_extern_scroll_string_delay:()=>dN,display_matrix_extern_shift:()=>TN,display_matrix_extern_show_frame_string:()=>uN,display_matrix_extern_show_frame_string_delay:()=>rN,display_matrix_extern_show_image:()=>pN,display_matrix_extern_show_image_or_string_delay:()=>aN,display_matrix_use_i2c_init:()=>_N,display_oled_drawPixel:()=>XN,display_oled_showBitmap:()=>YN,display_oled_use_i2c_init:()=>$N,display_onoff:()=>NN,display_rect:()=>AN,display_tm1650_power:()=>bN,display_tm1650_set_brightness:()=>BN,display_tm1650_show_dot:()=>VN,display_tm1650_show_num:()=>yN,display_tm_use_i2c_init:()=>xN,display_triangle:()=>vN,display_use_i2c_init:()=>gN,extern_oled_bright_point:()=>lD,extern_oled_clear:()=>aD,extern_oled_get_pixel:()=>rD,extern_oled_hvline:()=>ID,extern_oled_line:()=>TD,extern_oled_scroll_string:()=>_D,extern_oled_scroll_string_delay:()=>pD,extern_oled_shape_rect:()=>dD,extern_oled_shift:()=>uD,extern_oled_show_frame_string:()=>sD,extern_oled_show_frame_string_delay:()=>oD,extern_oled_show_image:()=>tD,extern_oled_show_image_or_string_delay:()=>nD,extern_oled_show_image_xy:()=>eD,extern_oled_show_string:()=>iD,image_shift:()=>DN,lcd_backlight:()=>jN,lcd_clear:()=>ZN,lcd_print_string:()=>QN,lcd_show_image_or_string_delay:()=>zN,matrix_extern_image_arithmetic:()=>RN,matrix_extern_image_invert:()=>cN,tft_fill:()=>KN,tft_line_arbitrarily:()=>JN,tft_scroll_string_delay:()=>WN,tft_show_frame_string_delay:()=>HN,tft_show_image_or_string_delay:()=>kN,tft_show_image_xy:()=>UN,tft_use_spi_init:()=>GN});var it={};t.r(it),t.d(it,{bitbot_display_image_create:()=>ZD,display_bright_point:()=>fD,display_bright_screen:()=>PD,display_clear:()=>SD,display_get_pixel:()=>DD,display_get_screen_pixel:()=>FD,display_image_builtins:()=>cD,display_image_builtins_all:()=>gD,display_image_create:()=>CD,display_scroll_string:()=>ED,display_scroll_string_delay:()=>RD,display_shift:()=>ND,display_show_frame_string:()=>mD,display_show_frame_string_delay:()=>OD,display_show_image:()=>hD,display_show_image_or_string_delay:()=>MD,image_arithmetic:()=>AD,image_invert:()=>LD,mixbot_display_bright_screen:()=>QD,mixbot_display_get_ambientbright:()=>zD,mixbot_display_get_screen_pixel:()=>qD,mixbot_display_image_create:()=>JD,mixbot_display_rotate:()=>jD,mixgo_display_image_create_new:()=>xD,mixgome_display_font:()=>XD,mixgome_display_image_create:()=>vD,mixgomini_display_image_create:()=>YD,mpython_display_hvline:()=>WD,mpython_display_line:()=>KD,mpython_display_shape_rect:()=>HD,mpython_pbm_image:()=>bD,onboard_oled_bright_point:()=>kD,onboard_oled_scroll_string_delay:()=>wD,onboard_oled_show_frame_string_delay:()=>UD,onboard_oled_show_image:()=>yD,onboard_oled_show_image_or_string_delay:()=>GD,onboard_oled_show_image_xy:()=>VD,onboard_oled_show_string:()=>BD,onboard_tft_bright_point:()=>If,onboard_tft_bright_screen:()=>hf,onboard_tft_clear:()=>rf,onboard_tft_clock_clear:()=>cf,onboard_tft_clock_draw:()=>Rf,onboard_tft_clock_get_rtctime:()=>Of,onboard_tft_clock_init:()=>mf,onboard_tft_clock_set_time:()=>Ef,onboard_tft_display_hvline:()=>af,onboard_tft_display_line:()=>uf,onboard_tft_display_shape_circle:()=>gf,onboard_tft_display_shape_rect:()=>pf,onboard_tft_fill:()=>Mf,onboard_tft_get_pixel:()=>df,onboard_tft_get_screen_pixel:()=>Tf,onboard_tft_scroll_string:()=>of,onboard_tft_scroll_string_delay:()=>_f,onboard_tft_shift:()=>lf,onboard_tft_show_frame_string:()=>nf,onboard_tft_show_frame_string_delay:()=>sf,onboard_tft_show_image:()=>$D,onboard_tft_show_image_or_string_delay:()=>ef,onboard_tft_show_image_xy:()=>tf});var nt={};t.r(nt),t.d(nt,{factory_block:()=>Ff,factory_block_return:()=>Pf,factory_block_return_with_textarea:()=>Yf,factory_block_with_textarea:()=>vf,factory_callMethod_noreturn:()=>Df,factory_callMethod_return:()=>ff,factory_declare:()=>Nf,factory_from_import:()=>Cf,factory_function_noreturn:()=>Af,factory_function_return:()=>Lf,factory_import:()=>Sf,folding_block:()=>Xf});var st={};t.r(st),t.d(st,{inout_analog_atten:()=>zf,inout_analog_read:()=>wf,inout_analog_read_init:()=>qf,inout_analog_write:()=>Bf,inout_analog_write_init:()=>Jf,inout_analog_write_set:()=>Gf,inout_digital_init:()=>Wf,inout_digital_read:()=>yf,inout_digital_write:()=>bf,inout_highlow:()=>xf,inout_pin_attachInterrupt:()=>Hf,inout_pin_pressed:()=>kf,inout_pin_pressed_init:()=>Qf,inout_pwm_analog_write:()=>Vf,inout_pwm_analog_write_init:()=>Kf,inout_pwm_analog_write_set_freq:()=>Uf});var ot={};t.r(ot),t.d(ot,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>hF,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>IF,IOT_EMQX_PING:()=>MF,IOT_FORMATTING:()=>lF,IOT_FORMAT_STRING:()=>dF,IOT_MIXIO_NTP:()=>mF,IOT_MIXIO_PUBLISH:()=>sF,IOT_MIXIO_SUBSCRIBE:()=>oF,iot_client_onboard:()=>OF,iot_http_client:()=>EF,iot_http_data:()=>RF,iot_mixio_check:()=>aF,iot_mixio_connect:()=>nF,iot_mixio_connect_only:()=>pF,iot_mixio_disconnect:()=>_F,iot_mixio_format_msg:()=>rF,iot_mixio_format_topic:()=>uF,iot_mixly_key:()=>TF,iot_mqtt_client:()=>cF,iot_mqtt_data:()=>gF,iot_onenet_check:()=>eF,iot_onenet_connect:()=>Zf,iot_onenet_disconnect:()=>$f,iot_onenet_publish:()=>iF,iot_onenet_publish_dict:()=>tF,iot_wifi_connect:()=>jf});var _t={};t.r(_t),t.d(_t,{network_ap_connect:()=>PF,network_connect:()=>SF,network_get_connect:()=>LF,network_get_wifi:()=>FF,network_init:()=>CF,network_is_active:()=>fF,network_open:()=>DF,network_scan:()=>vF,network_server:()=>YF,network_socket_accept:()=>VF,network_socket_bind:()=>xF,network_socket_close:()=>kF,network_socket_connect:()=>bF,network_socket_init:()=>XF,network_socket_listen:()=>yF,network_socket_receive:()=>BF,network_socket_receive_from:()=>UF,network_socket_send:()=>GF,network_socket_send_to:()=>wF,network_stop:()=>NF,network_wifi_connect:()=>AF,ntptime_address:()=>qF,ntptime_time:()=>JF,requests_attribute:()=>WF,requests_get:()=>HF,requests_method:()=>KF,urequests_connect_url:()=>jF,urequests_response:()=>ZF,urequests_wifi_connect:()=>zF,urequests_wifi_url:()=>QF});var pt={};t.r(pt),t.d(pt,{pe_g1_battery_left:()=>tP,pe_g1_dc_motor:()=>eP,pe_g1_dc_motor_speed:()=>iP,pe_g1_servo_get_angle:()=>oP,pe_g1_servo_get_speed:()=>_P,pe_g1_servo_set_angle:()=>nP,pe_g1_servo_set_speed:()=>sP,pe_g1_use_i2c_init:()=>$F});var at={};t.r(at),t.d(at,{HCSR04:()=>zP,PS2_Button:()=>ZP,PS2_Buttons:()=>$P,PS2_Buttons_new:()=>pv,PS2_State:()=>tv,PS2_init:()=>QP,PS2_init_new:()=>ov,PS2_stk:()=>ev,PS2_stk_new:()=>av,PS2_vibration:()=>jP,PS2_vibration_new:()=>_v,RTC_get_time:()=>nv,RTC_set_date:()=>TP,RTC_set_datetime:()=>iv,RTC_set_time:()=>IP,esp32_s2_weather_init:()=>WP,esp32_s2_weather_rain:()=>JP,esp32_s2_weather_wd:()=>KP,esp32_s2_weather_ws:()=>qP,extern_rfid_read:()=>YP,extern_rfid_readcontent:()=>xP,extern_rfid_readid:()=>XP,extern_rfid_status:()=>VP,extern_rfid_write:()=>bP,extern_rfid_write_return:()=>yP,gnss_get_data:()=>lv,gnss_have_data:()=>dv,mixbot_sensor_extern_get_addr:()=>cv,mixbot_sensor_extern_set_addr:()=>gv,pm25_get_data:()=>rv,robot_button_extern_get_value:()=>Iv,robot_color_extern_get_value:()=>Ov,robot_infrared_extern_get_value:()=>hv,robot_infrared_extern_grey_get_value:()=>Mv,robot_potentiometer_extern_get_value:()=>mv,robot_sonar_extern_get_value:()=>Ev,robot_sonar_extern_led:()=>Rv,robot_touch_extern_get_value:()=>Tv,sensor_APDS9960_extern:()=>CP,sensor_LTR308_extern:()=>SP,sensor_LTR390UV_extern:()=>NP,sensor_MAX30102_extern:()=>gP,sensor_QMC5883L_extern:()=>DP,sensor_VL530LX_extern:()=>PP,sensor_aht11_extern:()=>FP,sensor_bmp:()=>EP,sensor_dht11:()=>sv,sensor_distance_hrsc04:()=>dP,sensor_hp203_extern:()=>AP,sensor_ltr381_extern:()=>LP,sensor_mixgo_extern_button_attachInterrupt:()=>rP,sensor_mixgo_extern_button_get_presses:()=>uP,sensor_mixgo_extern_button_is_pressed:()=>pP,sensor_mixgo_extern_button_was_pressed:()=>aP,sensor_mixgo_extern_light:()=>hP,sensor_mixgo_extern_pin_near:()=>mP,sensor_mixgo_extern_sound:()=>MP,sensor_mixgoce_hot_wheel_degrees:()=>HP,sensor_mixgoce_hot_wheel_is_touched:()=>kP,sensor_mpu9250_attachGestureInterrupt:()=>lP,sensor_rtc_init:()=>OP,sensor_sht:()=>RP,sensor_shtc3_extern:()=>fP,sensor_use_i2c_init:()=>cP,sensor_use_spi_init:()=>vP,sensor_use_uart_init:()=>uv,sensor_weather_solo_init:()=>Cv,sensor_weather_solo_rain:()=>Lv,sensor_weather_solo_wd:()=>Sv,sensor_weather_solo_ws:()=>Av,weather_data:()=>BP,weather_have_data:()=>GP,weather_set_label:()=>wP,weather_uart_mixio:()=>UP});var ut={};t.r(ut),t.d(ut,{HCSR04:()=>xv,bitbot_als_num:()=>$Y,dht11:()=>pX,number1:()=>bv,number2:()=>yv,number3:()=>Vv,number4:()=>Bv,number5:()=>Gv,number6:()=>Uv,number7:()=>wv,onboard_RTC_get_time:()=>PY,onboard_RTC_get_timestamp:()=>vY,onboard_RTC_set_datetime:()=>fY,onboard_RTC_settime_string:()=>FY,onboard_RTC_timestamp_totuple:()=>YY,rfid_readcontent:()=>nY,rfid_readid:()=>iY,rfid_write:()=>sY,rfid_write_return:()=>oY,sensor_LTR308:()=>jv,sensor_adxl345_get_acceleration:()=>TY,sensor_aht11:()=>tY,sensor_bitbot_ALS:()=>ZY,sensor_button_get_presses:()=>iX,sensor_button_is_pressed:()=>tX,sensor_button_was_pressed:()=>eX,sensor_compass_reset:()=>RY,sensor_ds18x20:()=>zv,sensor_eulerangles:()=>pY,sensor_get_acceleration:()=>_Y,sensor_get_temperature:()=>eY,sensor_hp203:()=>$v,sensor_light:()=>_X,sensor_lm35:()=>Qv,sensor_mixbot_get_gyro:()=>jY,sensor_mixbot_patrol_calibrate:()=>qY,sensor_mixbot_patrol_value:()=>zY,sensor_mixbot_temperature:()=>QY,sensor_mixgo_LTR308:()=>Jv,sensor_mixgo_button_attachInterrupt:()=>Fv,sensor_mixgo_button_get_presses:()=>fv,sensor_mixgo_button_is_pressed:()=>Nv,sensor_mixgo_button_was_pressed:()=>Dv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>bY,sensor_mixgo_cc_mmc5603_get_angle:()=>xY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>XY,sensor_mixgo_light:()=>oX,sensor_mixgo_nova_LTR308:()=>qv,sensor_mixgo_nova_pin_near:()=>Kv,sensor_mixgo_pin_near:()=>Wv,sensor_mixgo_pin_near_double:()=>Hv,sensor_mixgo_pin_near_single:()=>kv,sensor_mixgo_pin_pressed:()=>dY,sensor_mixgo_touch_slide:()=>lY,sensor_mixgocar42_button_attachInterrupt:()=>Xv,sensor_mixgocar42_button_get_presses:()=>Yv,sensor_mixgocar42_button_is_pressed:()=>Pv,sensor_mixgocar42_button_was_pressed:()=>vv,sensor_mixgocar_battery_left:()=>JY,sensor_mixgocar_pin_near:()=>WY,sensor_mixgocar_pin_near_line:()=>HY,sensor_mixgocar_pin_near_state_change:()=>KY,sensor_mixgoce_pin_pressed:()=>rY,sensor_mixgoce_temperature:()=>VY,sensor_mixgome_temperature:()=>yY,sensor_mpu9250_calibrate_compass:()=>mY,sensor_mpu9250_field_strength:()=>EY,sensor_mpu9250_gesture:()=>aY,sensor_mpu9250_get_acceleration:()=>uY,sensor_mpu9250_get_gyro:()=>MY,sensor_mpu9250_get_magnetic:()=>hY,sensor_mpu9250_temperature:()=>OY,sensor_mpython_pin_pressed:()=>IY,sensor_mpython_qmi8658_get_gyro:()=>BY,sensor_mpython_qmi8658_temperature:()=>GY,sensor_onboard_compass_reset:()=>DY,sensor_onboard_mpu9250_calibrate_compass:()=>AY,sensor_onboard_mpu9250_field_strength:()=>NY,sensor_onboard_mpu9250_gesture:()=>cY,sensor_onboard_mpu9250_get_acceleration:()=>gY,sensor_onboard_mpu9250_get_gyro:()=>SY,sensor_onboard_mpu9250_get_magnetic:()=>CY,sensor_onboard_mpu9250_temperature:()=>LY,sensor_pin_near:()=>sX,sensor_pin_pressed:()=>nX,sensor_rm_acc:()=>kY,sensor_rm_battery_left:()=>wY,sensor_rm_pin_near_double:()=>UY,sensor_sound:()=>Zv});var rt={};t.r(rt),t.d(rt,{serial_any:()=>dX,serial_print:()=>aX,serial_print_byte:()=>uX,serial_print_hex:()=>lX,serial_println:()=>rX,serial_read_from_ai:()=>CX,serial_readline:()=>TX,serial_readstr:()=>IX,serial_send_to_ai:()=>gX,serial_softserial:()=>hX,serial_softserial_new:()=>MX,system_input:()=>mX,system_print:()=>OX,system_print_end:()=>RX,system_print_inline:()=>EX,system_print_many:()=>cX});var lt={};t.r(lt),t.d(lt,{Panic_with_status_code:()=>xX,Timer_init:()=>QX,base_delay:()=>$X,controls_delay:()=>GX,controls_delay_new:()=>UX,controls_end_program:()=>yX,controls_millis:()=>bX,controls_uname:()=>BX,reset:()=>VX,system_bitbot_shutdown:()=>zX,system_device_name:()=>YX,system_device_serial_number:()=>XX,system_event_bus_source:()=>PX,system_event_bus_value:()=>vX,system_machine_reset:()=>qX,system_on_event:()=>DX,system_raise_event:()=>NX,system_reset:()=>AX,system_run_in_background:()=>SX,system_ticks_diff:()=>HX,system_timer:()=>kX,system_timer_init:()=>WX,system_timestamp:()=>fX,system_value:()=>FX,system_wait:()=>LX,system_wdt_feed:()=>JX,system_wdt_init:()=>KX,time_ticks_diff:()=>ZX,timer:()=>wX,timer2:()=>jX});var dt={};t.r(dt),t.d(dt,{WEATHER_DAILY:()=>ex,WEATHER_HOUR:()=>ix,WEATHER_NOW:()=>tx});var It={};t.r(It),t.d(It,{controls_pin_attachInterrupt:()=>Lx,inout_analog_atten:()=>Tx,inout_analog_read:()=>Ix,inout_analog_read_init:()=>Rx,inout_analog_write:()=>rx,inout_analog_write_init:()=>Ex,inout_analog_write_set:()=>lx,inout_analog_write_set_freq:()=>Cx,inout_digital_init:()=>mx,inout_digital_read:()=>ax,inout_digital_write:()=>px,inout_highlow:()=>_x,inout_pinMode:()=>gx,inout_pin_attachInterrupt:()=>Mx,inout_pin_pressed:()=>hx,inout_pin_pressed_init:()=>cx,inout_pwm_analog_write:()=>ux,inout_pwm_analog_write_init:()=>Ox,inout_pwm_analog_write_set_freq:()=>dx,pin_pressed:()=>Ax,pin_pressed_init:()=>Sx});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>xx,analog_output:()=>yx,espnow_channel:()=>vx,haskylens_model:()=>Yx,i2c_A_pin:()=>Vx,i2c_B_pin:()=>Bx,pins_analog:()=>Hx,pins_analog_pin:()=>Wx,pins_axis:()=>ab,pins_brightness:()=>ub,pins_builtinimg:()=>eb,pins_builtinimg_extern:()=>ib,pins_button:()=>qx,pins_buttonB:()=>zx,pins_dac:()=>Kx,pins_dac_pin:()=>Jx,pins_digital:()=>Dx,pins_digital_dot:()=>mb,pins_digital_pin:()=>fx,pins_exlcdh:()=>_b,pins_exlcdv:()=>pb,pins_imglist:()=>nb,pins_input_pin:()=>Fx,pins_one_more:()=>Mb,pins_output_pin:()=>Px,pins_playlist:()=>sb,pins_playlist_extern:()=>ob,pins_pwm:()=>Qx,pins_pwm_pin:()=>jx,pins_radio_datarate:()=>hb,pins_radio_power:()=>Tb,pins_serial:()=>tb,pins_tone_notes:()=>Ib,pins_touch:()=>$x,pins_touch_pin:()=>Zx,pins_tts_bgmusic:()=>db,pins_tts_builtin_music:()=>lb,pins_tts_voice:()=>rb,pwm_input:()=>Xx,pwm_output:()=>bx,spi_A_pin:()=>Gx,spi_B_pin:()=>Ux,spi_C_pin:()=>wx,spi_D_pin:()=>kx});var ht={};t.r(ht),t.d(ht,{inout_analog_atten:()=>vb,inout_analog_read:()=>Ab,inout_analog_read_init:()=>Pb,inout_analog_write:()=>gb,inout_analog_write_init:()=>Fb,inout_analog_write_set:()=>Cb,inout_digital_init:()=>Db,inout_digital_read:()=>Rb,inout_digital_write:()=>Eb,inout_highlow:()=>Ob,inout_pin_attachInterrupt:()=>Nb,inout_pin_pressed:()=>Lb,inout_pin_pressed_init:()=>Yb,inout_pwm_analog_write:()=>cb,inout_pwm_analog_write_init:()=>fb,inout_pwm_analog_write_set_freq:()=>Sb});var Mt={};t.r(Mt),t.d(Mt,{analog_input:()=>kb,analog_output:()=>Wb,espnow_channel:()=>Ub,haskylens_model:()=>wb,i2c_A_pin:()=>Kb,i2c_B_pin:()=>Jb,pins_analog:()=>$b,pins_analog_pin:()=>Zb,pins_axis:()=>Iy,pins_brightness:()=>My,pins_builtinimg:()=>ay,pins_builtinimg_extern:()=>uy,pins_button:()=>xb,pins_buttonB:()=>bb,pins_dac:()=>ny,pins_dac_pin:()=>iy,pins_digital:()=>Xb,pins_digital_dot:()=>Sy,pins_digital_pin:()=>yb,pins_exlcdh:()=>Ty,pins_exlcdv:()=>hy,pins_imglist:()=>ry,pins_input_pin:()=>Vb,pins_interrupt:()=>_y,pins_one_more:()=>Cy,pins_output_pin:()=>Bb,pins_playlist:()=>ly,pins_playlist_extern:()=>dy,pins_pwm:()=>ey,pins_pwm_input:()=>Gb,pins_pwm_pin:()=>ty,pins_radio_datarate:()=>gy,pins_radio_power:()=>cy,pins_serial:()=>py,pins_tone_notes:()=>Ry,pins_touch:()=>oy,pins_touch_pin:()=>sy,pins_tts_bgmusic:()=>Ey,pins_tts_builtin_music:()=>Oy,pins_tts_voice:()=>my,pwm_output:()=>Hb,spi_A_pin:()=>qb,spi_B_pin:()=>zb,spi_C_pin:()=>Qb,spi_D_pin:()=>jb});const mt=Blockly,Ot=Mixly,Et={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Rt=Et; +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Dt,controls_typeLists:()=>ft,variables_change:()=>Lt,variables_get:()=>St,variables_global:()=>Nt,variables_set:()=>At});var i={};t.r(i),t.d(i,{base_setup:()=>vt,controls_delay:()=>Yt,controls_end_program:()=>Xt,controls_except:()=>Jt,controls_finally:()=>qt,controls_flow_statements:()=>Gt,controls_for:()=>Ut,controls_forEach:()=>yt,controls_for_range:()=>wt,controls_if:()=>xt,controls_if_else:()=>Wt,controls_if_elseif:()=>Ht,controls_if_if:()=>kt,controls_lambda:()=>Qt,controls_main:()=>Pt,controls_pass:()=>jt,controls_range:()=>bt,controls_repeat_ext:()=>zt,controls_thread:()=>Zt,controls_try:()=>Kt,controls_try_finally:()=>Bt,controls_whileUntil:()=>Vt,do_while:()=>$t,garbage_collection:()=>te,get_mem_alloc:()=>ee,get_mem_free:()=>ie,get_unique_identifier:()=>ne});var n={};t.r(n),t.d(n,{base_map:()=>Se,math_arithmetic:()=>ae,math_bit:()=>re,math_constant:()=>_e,math_constant_mp:()=>pe,math_constrain:()=>me,math_dec:()=>de,math_indexer_number:()=>Ee,math_map:()=>Oe,math_max_min:()=>Te,math_number:()=>oe,math_number_base_conversion:()=>he,math_random:()=>Me,math_random_seed:()=>Re,math_round:()=>ce,math_selfcalcu:()=>ue,math_to_int:()=>Ie,math_trig:()=>le,text_to_number:()=>ge,text_to_number_skulpt:()=>Ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>Fe,char_to_ascii:()=>Pe,number_to_text:()=>ve,os_system:()=>ni,text:()=>Le,text_capital:()=>Ue,text_center:()=>we,text_char:()=>De,text_char_at:()=>xe,text_char_at2:()=>Xe,text_char_at3:()=>$e,text_compareTo:()=>Ze,text_compare_to:()=>Ge,text_create_with_container:()=>ze,text_create_with_item:()=>Qe,text_encode:()=>ei,text_equals_starts_ends:()=>Be,text_eval:()=>ii,text_find:()=>ke,text_format:()=>qe,text_format_noreturn:()=>ti,text_join:()=>fe,text_join_seq:()=>He,text_length:()=>Ye,text_random_char:()=>be,text_replace:()=>We,text_split:()=>Ke,text_strip:()=>Je,text_substring:()=>Ve,text_substring2:()=>ye,text_substring3:()=>je,text_textarea:()=>Ne});var o={};t.r(o),t.d(o,{list_many_input:()=>Li,list_tolist:()=>Yi,list_tolist2:()=>Ui,list_trig:()=>Ci,lists_2d_get_col_row_data:()=>ai,lists_2d_get_data_with_col_row:()=>pi,lists_append_extend:()=>Ti,lists_change_to:()=>Ai,lists_change_to_general:()=>Di,lists_clear:()=>Ei,lists_create_with:()=>ui,lists_create_with2:()=>Xi,lists_create_with_container:()=>li,lists_create_with_item:()=>di,lists_create_with_noreturn:()=>Ni,lists_create_with_text:()=>ri,lists_create_with_text2:()=>xi,lists_del_general:()=>fi,lists_find:()=>gi,lists_getIndex3:()=>bi,lists_getSublist3:()=>yi,lists_get_index:()=>oi,lists_get_random_item:()=>hi,lists_get_random_sublist:()=>Mi,lists_get_sublist:()=>_i,lists_insert_value:()=>mi,lists_insert_value2:()=>Bi,lists_pop:()=>ci,lists_remove_at:()=>Ri,lists_remove_at2:()=>Gi,lists_reverse:()=>Oi,lists_setIndex3:()=>Vi,lists_set_index:()=>Ii,lists_sort:()=>Si,lists_zip:()=>Fi,lists_zip_container:()=>Pi,lists_zip_item:()=>vi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>sn,dicts_add_or_change:()=>zi,dicts_clear:()=>Zi,dicts_create_with:()=>ki,dicts_create_with_container:()=>Hi,dicts_create_with_item:()=>Wi,dicts_create_with_noreturn:()=>pn,dicts_deldict:()=>nn,dicts_delete:()=>Qi,dicts_get:()=>Ji,dicts_get_default:()=>qi,dicts_items:()=>$i,dicts_keys:()=>Ki,dicts_length:()=>en,dicts_pop:()=>on,dicts_setdefault:()=>_n,dicts_to_json:()=>un,dicts_todict:()=>an,dicts_update:()=>ji,dicts_values:()=>tn,json_to_dicts:()=>rn});var p={};t.r(p),t.d(p,{logic_boolean:()=>Mn,logic_compare:()=>dn,logic_compare_continous:()=>In,logic_is:()=>Rn,logic_is_in:()=>En,logic_negate:()=>hn,logic_null:()=>mn,logic_operation:()=>Tn,logic_tobool:()=>cn,logic_true_or_false:()=>On});var a={};t.r(a),t.d(a,{sdcard_mount:()=>Hn,sdcard_use_spi_init:()=>kn,storage_can_write_ornot:()=>Fn,storage_change_dir:()=>Un,storage_close_file:()=>vn,storage_delete_file:()=>Xn,storage_file_seek:()=>yn,storage_file_tell:()=>bn,storage_file_write:()=>Ln,storage_fileopen:()=>Cn,storage_fileopen_new:()=>Sn,storage_fileopen_new_encoding:()=>An,storage_get_a_line:()=>fn,storage_get_contents:()=>Dn,storage_get_contents_without_para:()=>Nn,storage_get_current_dir:()=>Vn,storage_get_file_size:()=>xn,storage_get_filename:()=>Pn,storage_is_file:()=>wn,storage_list_all_files:()=>Yn,storage_make_dir:()=>Bn,storage_open_file_with_os:()=>gn,storage_rename:()=>Gn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>jn,procedures_callreturn:()=>Zn,procedures_defnoreturn:()=>Jn,procedures_defreturn:()=>qn,procedures_ifreturn:()=>$n,procedures_mutatorarg:()=>Qn,procedures_mutatorcontainer:()=>zn,procedures_return:()=>ts});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ds,tuple_create_with:()=>is,tuple_create_with_container:()=>ns,tuple_create_with_item:()=>ss,tuple_create_with_noreturn:()=>Ms,tuple_create_with_text2:()=>os,tuple_create_with_text_return:()=>_s,tuple_del:()=>us,tuple_find:()=>Is,tuple_getIndex:()=>ps,tuple_getSublist:()=>hs,tuple_get_random_item:()=>Os,tuple_get_sublist:()=>ms,tuple_join:()=>rs,tuple_length:()=>as,tuple_max:()=>ls,tuple_totuple:()=>Es,tuple_trig:()=>Ts});var l={};t.r(l),t.d(l,{set_add_discard:()=>fs,set_clear:()=>Ls,set_create_with:()=>cs,set_create_with_container:()=>gs,set_create_with_item:()=>Cs,set_create_with_text_return:()=>vs,set_length:()=>Ss,set_operate:()=>Ns,set_operate_update:()=>Ds,set_pop:()=>As,set_sub:()=>Fs,set_toset:()=>Ys,set_update:()=>Ps});var d={};t.r(d),t.d(d,{html_content:()=>Vs,html_content_more:()=>Bs,html_document:()=>xs,html_form:()=>Us,html_head_body:()=>ys,html_style:()=>Gs,html_style_color:()=>ks,html_style_content:()=>ws,html_text:()=>Hs,html_title:()=>bs});var I={};t.r(I),t.d(I,{attribute_access:()=>so,function_call:()=>eo,function_call_container:()=>io,function_call_item:()=>no,raw_block:()=>Js,raw_empty:()=>zs,raw_expression:()=>qs,raw_table:()=>Ks,text_comment:()=>Qs,text_print_multiple:()=>Zs,text_print_multiple_container:()=>$s,text_print_multiple_item:()=>to,type_check:()=>js});var T={};t.r(T),t.d(T,{controls_type:()=>uo,controls_typeLists:()=>ro,variables_change:()=>po,variables_get:()=>oo,variables_global:()=>ao,variables_set:()=>_o});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>co,base_setup:()=>Io,controls_delay:()=>Ro,controls_flow_statements:()=>Eo,controls_for:()=>Mo,controls_forEach:()=>Lo,controls_for_range:()=>mo,controls_if:()=>To,controls_interrupts:()=>So,controls_lambda:()=>Do,controls_main:()=>lo,controls_millis:()=>go,controls_nointerrupts:()=>Ao,controls_pass:()=>Fo,controls_range:()=>No,controls_repeat:()=>Vo,controls_repeat_ext:()=>Yo,controls_thread:()=>Po,controls_try_finally:()=>ho,controls_whileUntil:()=>Oo,do_while:()=>vo,garbage_collection:()=>Xo,get_mem_alloc:()=>xo,get_mem_free:()=>bo,get_unique_identifier:()=>yo,reset:()=>Co,time_sleep:()=>fo});var M={};t.r(M),t.d(M,{base_map:()=>o_,math_arithmetic:()=>ko,math_bit:()=>wo,math_constant:()=>Go,math_constant_mp:()=>Uo,math_constrain:()=>Zo,math_dec:()=>Jo,math_indexer_number:()=>e_,math_map:()=>jo,math_max_min:()=>zo,math_number:()=>Bo,math_number_base_conversion:()=>$o,math_random:()=>Qo,math_random_seed:()=>t_,math_round:()=>i_,math_selfcalcu:()=>Ho,math_single:()=>Wo,math_to_int:()=>qo,math_trig:()=>Ko,text_to_number:()=>n_,text_to_number_skulpt:()=>s_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>r_,char_to_ascii:()=>l_,number_to_text:()=>d_,os_system:()=>x_,text:()=>__,text_capital:()=>c_,text_center:()=>g_,text_char:()=>a_,text_char_at:()=>h_,text_char_at2:()=>T_,text_char_at3:()=>v_,text_compareTo:()=>P_,text_compare_to:()=>O_,text_encode:()=>Y_,text_equals_starts_ends:()=>m_,text_eval:()=>X_,text_find:()=>C_,text_format:()=>D_,text_format_noreturn:()=>f_,text_join:()=>u_,text_join_seq:()=>S_,text_length:()=>I_,text_random_char:()=>M_,text_replace:()=>A_,text_split:()=>L_,text_strip:()=>N_,text_substring:()=>R_,text_substring2:()=>E_,text_substring3:()=>F_,text_textarea:()=>p_});var O={};t.r(O),t.d(O,{list_many_input:()=>ep,list_tolist:()=>Ip,list_tolist2:()=>Tp,list_trig:()=>Z_,lists_2d_get_col_row_data:()=>V_,lists_2d_get_data_with_col_row:()=>y_,lists_append_extend:()=>k_,lists_change_to:()=>tp,lists_change_to_general:()=>np,lists_clear:()=>q_,lists_create_with:()=>B_,lists_create_with2:()=>op,lists_create_with_noreturn:()=>ip,lists_create_with_text:()=>G_,lists_create_with_text2:()=>_p,lists_del_general:()=>sp,lists_find:()=>z_,lists_getIndex3:()=>pp,lists_getSublist3:()=>ap,lists_get_index:()=>U_,lists_get_random_item:()=>H_,lists_get_random_sublist:()=>W_,lists_get_sublist:()=>b_,lists_insert_value:()=>K_,lists_insert_value2:()=>rp,lists_pop:()=>j_,lists_remove_at:()=>Q_,lists_remove_at2:()=>lp,lists_reverse:()=>J_,lists_setIndex3:()=>up,lists_set_index:()=>w_,lists_sort:()=>$_,lists_zip:()=>dp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Np,dicts_add_or_change:()=>Ep,dicts_clear:()=>gp,dicts_create_with:()=>hp,dicts_create_with_noreturn:()=>Fp,dicts_deldict:()=>Lp,dicts_delete:()=>Rp,dicts_get:()=>mp,dicts_get_default:()=>Op,dicts_items:()=>Cp,dicts_keys:()=>Mp,dicts_length:()=>Ap,dicts_pop:()=>Dp,dicts_setdefault:()=>fp,dicts_to_json:()=>vp,dicts_todict:()=>Pp,dicts_update:()=>cp,dicts_values:()=>Sp,json_to_dicts:()=>Yp});var R={};t.r(R),t.d(R,{logic_boolean:()=>Vp,logic_compare:()=>Xp,logic_compare_continous:()=>xp,logic_is:()=>wp,logic_is_in:()=>Up,logic_negate:()=>yp,logic_null:()=>Bp,logic_operation:()=>bp,logic_tobool:()=>kp,logic_true_or_false:()=>Gp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>da,sdcard_use_spi_init:()=>la,storage_can_write_ornot:()=>Zp,storage_change_dir:()=>_a,storage_close_file:()=>ta,storage_delete_file:()=>ia,storage_file_seek:()=>oa,storage_file_tell:()=>sa,storage_file_write:()=>qp,storage_fileopen:()=>Wp,storage_fileopen_new:()=>Kp,storage_fileopen_new_encoding:()=>Jp,storage_get_a_line:()=>jp,storage_get_contents:()=>Qp,storage_get_contents_without_para:()=>zp,storage_get_current_dir:()=>pa,storage_get_file_size:()=>na,storage_get_filename:()=>$p,storage_is_file:()=>ra,storage_list_all_files:()=>ea,storage_make_dir:()=>aa,storage_open_file_with_os:()=>Hp,storage_rename:()=>ua});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Ma,procedures_callreturn:()=>ha,procedures_defnoreturn:()=>Ta,procedures_defreturn:()=>Ia,procedures_ifreturn:()=>ma,procedures_return:()=>Oa});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Na,tuple_create_with:()=>Ea,tuple_create_with_noreturn:()=>Pa,tuple_create_with_text2:()=>Ra,tuple_create_with_text_return:()=>ca,tuple_del:()=>Sa,tuple_find:()=>Da,tuple_getIndex:()=>ga,tuple_getSublist:()=>Fa,tuple_get_random_item:()=>Ya,tuple_get_sublist:()=>va,tuple_join:()=>Aa,tuple_length:()=>Ca,tuple_max:()=>La,tuple_totuple:()=>Xa,tuple_trig:()=>fa});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ua,set_clear:()=>Va,set_create_with:()=>xa,set_create_with_text_return:()=>Ha,set_length:()=>ba,set_operate:()=>Ba,set_operate_update:()=>Ga,set_pop:()=>ya,set_sub:()=>wa,set_toset:()=>Wa,set_update:()=>ka});var A={};t.r(A),t.d(A,{html_content:()=>za,html_content_more:()=>Qa,html_document:()=>Ka,html_form:()=>Za,html_head_body:()=>qa,html_style:()=>ja,html_style_content:()=>$a,html_text:()=>tu,html_title:()=>Ja});var L={};t.r(L),t.d(L,{attribute_access:()=>pu,function_call:()=>_u,raw_block:()=>eu,raw_empty:()=>nu,raw_expression:()=>iu,raw_table:()=>su,type_check:()=>ou});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>Eu,actuator_extern_get_led_state:()=>Ru,actuator_extern_led_bright:()=>Ou,actuator_extern_led_brightness:()=>cu,actuator_ms32006_dcmotor:()=>Fu,actuator_ms32006_init:()=>fu,actuator_ms32006_stepper:()=>Pu,actuator_neopixel_init:()=>vu,actuator_neopixel_rgb:()=>Yu,actuator_neopixel_rgb_all:()=>Xu,actuator_neopixel_write:()=>xu,actuator_use_uart_init:()=>bu,esp32_music_get_tempo_extern:()=>hu,esp32_music_pitch:()=>lu,esp32_music_pitch_init:()=>ru,esp32_music_pitch_with_time:()=>du,esp32_music_play_list:()=>Iu,esp32_music_reset_extern:()=>Mu,esp32_music_set_tempo_extern:()=>Tu,esp32_music_stop:()=>mu,mixbot_actuator_extern_get_addr:()=>tr,mixbot_actuator_extern_set_addr:()=>er,mixbot_addr_extern:()=>Uu,robot_led_extern:()=>Wu,robot_led_extern_get_value:()=>Ku,robot_motor_extern:()=>wu,robot_motor_extern_get_speed:()=>ku,robot_servo_extern_absolute_run:()=>Qu,robot_servo_extern_get_status:()=>Ju,robot_servo_extern_relative_continue:()=>$u,robot_servo_extern_relative_origin:()=>ju,robot_servo_extern_relative_run:()=>Zu,robot_servo_extern_stop:()=>zu,robot_servo_extern_stop_mode:()=>qu,robot_traffic_light_extern:()=>Hu,servo_get_angle:()=>Nu,servo_get_speed:()=>Du,servo_init:()=>gu,servo_move:()=>Cu,servo_set_angle:()=>Au,servo_set_speed:()=>Lu,servo_speed_360:()=>Su,syn6288_builtin_voice:()=>Bu,syn6288_get_voice:()=>Vu,syn6288_set_voice:()=>yu,syn6288_tts_play:()=>Gu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Yr,actuator_dc_motor_stop:()=>Xr,actuator_get_led_bright:()=>_r,actuator_get_led_state:()=>pr,actuator_led_bright:()=>or,actuator_led_brightness:()=>ar,actuator_mixbot_buzzer_on_off:()=>Br,actuator_mixgo_nova_mic_get:()=>Hr,actuator_mixgo_nova_mic_set:()=>kr,actuator_mixgo_nova_onboard_music_pitch:()=>Qr,actuator_mixgo_nova_onboard_music_stop:()=>jr,actuator_mixgo_nova_play_audio:()=>qr,actuator_mixgo_nova_play_online_audio:()=>zr,actuator_mixgo_nova_record_audio:()=>Jr,actuator_mixgo_nova_voice_get:()=>Kr,actuator_mixgo_nova_voice_set:()=>Wr,actuator_mixgo_zero_led_color:()=>ur,actuator_onboard_neopixel_rgb:()=>hr,actuator_onboard_neopixel_rgb_all:()=>Mr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Or,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>mr,actuator_onboard_neopixel_write:()=>Er,actuator_rm_onboard_neopixel_rgb:()=>Rr,actuator_rm_onboard_neopixel_rgb_all:()=>cr,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>gr,actuator_stepper_keep:()=>Pr,actuator_stepper_stop:()=>vr,analog_keyboard_input:()=>el,analog_keyboard_str:()=>ul,analog_mouse_input:()=>pl,bitbot_motor:()=>wr,bitbot_move:()=>Gr,bitbot_stop:()=>Ur,cc_number:()=>Tr,esp32_music_get_tempo:()=>Sr,esp32_music_reset:()=>Ar,esp32_music_set_tempo:()=>Cr,esp32_onboard_music_pitch:()=>Lr,esp32_onboard_music_pitch_with_time:()=>Nr,esp32_onboard_music_play_list:()=>fr,esp32_onboard_music_stop:()=>Dr,general_key:()=>nl,general_key_tuple:()=>sl,generalkey_container:()=>ol,generalkey_create_with_item:()=>_l,get_power_output:()=>$r,ledswitch:()=>sr,mixbot_motor:()=>Vr,mixbot_motor_status:()=>xr,mixbot_move:()=>br,mixbot_stop:()=>yr,mouse_key:()=>al,number:()=>nr,rm_actuator_get_led_bright:()=>lr,rm_actuator_get_led_state:()=>dr,rm_actuator_led_bright:()=>rr,rm_actuator_led_brightness:()=>Ir,rm_motor:()=>Fr,set_all_power_output:()=>tl,set_power_output:()=>Zr,special_key:()=>il});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>kl,ai_sensor_ailocal_class:()=>vl,ai_sensor_ailocal_class_result:()=>Yl,ai_sensor_ailocal_train:()=>Pl,ai_sensor_asr_recognize:()=>Vl,ai_sensor_audio_play:()=>xl,ai_sensor_audio_record:()=>Xl,ai_sensor_barcode:()=>ml,ai_sensor_circle:()=>Cl,ai_sensor_classifier_faces:()=>wl,ai_sensor_color:()=>Nl,ai_sensor_color_chases:()=>Fl,ai_sensor_color_chases_result:()=>fl,ai_sensor_config:()=>hl,ai_sensor_face:()=>Ul,ai_sensor_find_20objects:()=>Hl,ai_sensor_find_barcodes:()=>Ol,ai_sensor_find_circles:()=>Sl,ai_sensor_find_colors:()=>Dl,ai_sensor_find_licenseplates:()=>Gl,ai_sensor_find_lines:()=>gl,ai_sensor_find_qrcodes:()=>Tl,ai_sensor_find_rects:()=>Ll,ai_sensor_find_tags:()=>Rl,ai_sensor_licenseplate:()=>Bl,ai_sensor_line:()=>cl,ai_sensor_qrcode:()=>dl,ai_sensor_qrcode_lite:()=>Il,ai_sensor_rect:()=>Al,ai_sensor_rgb:()=>Ml,ai_sensor_tag:()=>El,ai_sensor_use_uart_init:()=>ll,ai_sensor_yolo_recognize:()=>bl,ai_sensor_yolo_recognize_result:()=>yl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Jl,MICROPYTHON_AI_Speech_unit:()=>Kl,MICROPYTHON_AI_client:()=>Wl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>ad,mpython_blynk_app_notify:()=>ed,mpython_blynk_email:()=>sd,mpython_blynk_get_timers:()=>od,mpython_blynk_on_connected:()=>Zl,mpython_blynk_on_disconnected:()=>jl,mpython_blynk_run:()=>td,mpython_blynk_sensor_data_to_app:()=>pd,mpython_blynk_set_property:()=>nd,mpython_blynk_setup:()=>ud,mpython_blynk_stop_timers:()=>id,mpython_blynk_sync_virtual:()=>Ql,mpython_blynk_terminal_widget_vpin:()=>zl,mpython_blynktimer:()=>_d,mpython_blynktimer_run:()=>$l});var v={};t.r(v),t.d(v,{cc_g1_init:()=>rd,cc_g1_read_bat:()=>ld,cc_g1_read_joystick:()=>dd,cc_g1_read_key:()=>Id,cc_g1_turnoff:()=>Td});var Y={};t.r(Y),t.d(Y,{ce_go_dc_motor:()=>Cd,ce_go_get_led_bright:()=>Od,ce_go_get_led_state:()=>Ed,ce_go_hall_attachInterrupt:()=>Sd,ce_go_hall_data:()=>Ld,ce_go_hall_initialize:()=>Ad,ce_go_led_bright:()=>md,ce_go_led_brightness:()=>Rd,ce_go_light_number:()=>Md,ce_go_pin_light:()=>Pd,ce_go_pin_near:()=>Dd,ce_go_pin_near_line:()=>Nd,ce_go_pin_near_state_change:()=>fd,ce_go_stepper_keep:()=>cd,ce_go_stepper_stop:()=>gd,sensor_mixgome_eulerangles:()=>Fd});var X={};t.r(X),t.d(X,{communicate_bluetooth_central_init:()=>II,communicate_bluetooth_connect:()=>mI,communicate_bluetooth_disconnect:()=>OI,communicate_bluetooth_handle:()=>CI,communicate_bluetooth_is_connected:()=>RI,communicate_bluetooth_mac:()=>MI,communicate_bluetooth_peripheral_init:()=>TI,communicate_bluetooth_recv:()=>cI,communicate_bluetooth_recv_only:()=>gI,communicate_bluetooth_scan:()=>hI,communicate_bluetooth_send:()=>EI,communicate_espnow_init:()=>SI,communicate_espnow_init_new:()=>AI,communicate_i2c_available:()=>zd,communicate_i2c_init:()=>xd,communicate_i2c_master_read:()=>qd,communicate_i2c_onboard:()=>Yd,communicate_i2c_read:()=>bd,communicate_i2c_scan:()=>Vd,communicate_i2c_write:()=>yd,communicate_ir_recv_init:()=>nI,communicate_ir_send_init:()=>aI,communicate_ow_init:()=>jd,communicate_ow_read:()=>$d,communicate_ow_reset:()=>iI,communicate_ow_scan:()=>Zd,communicate_ow_select:()=>eI,communicate_ow_write:()=>tI,communicate_spi_buffer:()=>Ud,communicate_spi_init:()=>Bd,communicate_spi_onboard:()=>Xd,communicate_spi_read:()=>wd,communicate_spi_read_output:()=>kd,communicate_spi_readinto:()=>Hd,communicate_spi_readinto_output:()=>Wd,communicate_spi_set:()=>Gd,communicate_spi_write:()=>Kd,communicate_spi_write_readinto:()=>Jd,espnow_radio_channel:()=>PI,espnow_radio_channel_new:()=>YI,espnow_radio_on_off:()=>XI,espnow_radio_rec:()=>bI,espnow_radio_recv:()=>VI,espnow_radio_recv_certain_msg:()=>BI,espnow_radio_recv_certain_msg_new:()=>UI,espnow_radio_recv_msg:()=>yI,espnow_radio_recv_new:()=>GI,espnow_radio_send:()=>xI,espnow_radio_txpower:()=>vI,i2c_available:()=>uT,i2c_init:()=>zI,i2c_master_reader2:()=>aT,i2c_read:()=>QI,i2c_scan:()=>ZI,i2c_slave_onreceive:()=>Qd,i2c_write:()=>jI,internal_variable:()=>sI,ir_recv_timeout:()=>pI,ir_transmit_busy:()=>dI,ir_transmit_conventional_data:()=>uI,ir_transmit_raw_code:()=>lI,ir_transmit_study_code:()=>rI,ir_whether_recv:()=>_I,lora_init:()=>wI,lora_packet:()=>kI,lora_recv:()=>WI,lora_send:()=>HI,network_espnow_info:()=>NI,network_espnow_mac:()=>LI,network_espnow_recv:()=>DI,network_espnow_recv_handle:()=>FI,network_espnow_send:()=>fI,recv_fun:()=>oI,spi_buffer:()=>eT,spi_init:()=>$I,spi_read:()=>iT,spi_read_output:()=>nT,spi_readinto:()=>sT,spi_readinto_output:()=>oT,spi_set:()=>tT,spi_write:()=>_T,spi_write_readinto:()=>pT,urequests_attribute:()=>JI,urequests_get:()=>KI,urequests_method:()=>qI});var x={};t.r(x),t.d(x,{display_animate:()=>BT,display_blink_rate:()=>xT,display_circle:()=>GT,display_color_seclet:()=>ZT,display_draw_4strings:()=>fT,display_fill:()=>VT,display_get_screen_image:()=>XT,display_help:()=>wT,display_image_size:()=>FT,display_lcd_use_i2c_init:()=>sh,display_line:()=>vT,display_line_arbitrarily:()=>YT,display_matrix_extern_bright_point:()=>cT,display_matrix_extern_bright_screen:()=>CT,display_matrix_extern_clear:()=>ST,display_matrix_extern_get_pixel:()=>RT,display_matrix_extern_get_screen_pixel:()=>gT,display_matrix_extern_image_builtins:()=>AT,display_matrix_extern_scroll_string:()=>hT,display_matrix_extern_scroll_string_delay:()=>MT,display_matrix_extern_shift:()=>ET,display_matrix_extern_show_frame_string:()=>mT,display_matrix_extern_show_frame_string_delay:()=>OT,display_matrix_extern_show_image:()=>IT,display_matrix_extern_show_image_or_string_delay:()=>TT,display_matrix_use_i2c_init:()=>dT,display_oled_drawPixel:()=>HT,display_oled_showBitmap:()=>kT,display_oled_use_i2c_init:()=>uh,display_onoff:()=>yT,display_rect:()=>PT,display_rgb_color:()=>bT,display_tm1650_power:()=>KT,display_tm1650_set_brightness:()=>zT,display_tm1650_show_dot:()=>qT,display_tm1650_show_num:()=>JT,display_tm_use_i2c_init:()=>WT,display_triangle:()=>UT,display_use_i2c_init:()=>DT,extern_oled_bright_point:()=>Rh,extern_oled_clear:()=>ch,extern_oled_get_pixel:()=>Eh,extern_oled_hvline:()=>Ch,extern_oled_line:()=>Sh,extern_oled_scroll_string:()=>Th,extern_oled_scroll_string_delay:()=>hh,extern_oled_shape_rect:()=>gh,extern_oled_shift:()=>Oh,extern_oled_show_frame_string:()=>Mh,extern_oled_show_frame_string_delay:()=>mh,extern_oled_show_image:()=>rh,extern_oled_show_image_or_string_delay:()=>Ih,extern_oled_show_image_xy:()=>lh,extern_oled_show_string:()=>dh,lcd_backlight:()=>ph,lcd_clear:()=>ah,lcd_print_string:()=>_h,lcd_show_image_or_string_delay:()=>oh,matrix_extern_image_arithmetic:()=>LT,matrix_extern_image_invert:()=>NT,tft_fill:()=>ih,tft_line_arbitrarily:()=>nh,tft_scroll_string_delay:()=>th,tft_show_frame_string_delay:()=>eh,tft_show_image_or_string_delay:()=>$T,tft_show_image_xy:()=>jT,tft_use_spi_init:()=>QT});var b={};t.r(b),t.d(b,{bitbot_display_image_create:()=>uM,display_bright_point:()=>Bh,display_bright_screen:()=>Uh,display_clear:()=>wh,display_get_pixel:()=>Vh,display_get_screen_pixel:()=>Gh,display_image_builtins:()=>Yh,display_image_builtins_all:()=>Xh,display_image_create:()=>vh,display_scroll_string:()=>Dh,display_scroll_string_delay:()=>fh,display_shift:()=>yh,display_show_frame_string:()=>Fh,display_show_frame_string_delay:()=>Ph,display_show_image:()=>Lh,display_show_image_or_string_delay:()=>Nh,image_arithmetic:()=>xh,image_invert:()=>bh,mixbot_display_bright_screen:()=>pM,mixbot_display_get_ambientbright:()=>_M,mixbot_display_get_screen_pixel:()=>oM,mixbot_display_image_create:()=>sM,mixbot_display_rotate:()=>aM,mixgo_display_image_create_new:()=>Wh,mixgome_display_font:()=>Kh,mixgome_display_image_create:()=>kh,mixgomini_display_image_create:()=>Hh,mpython_display_hvline:()=>eM,mpython_display_line:()=>iM,mpython_display_shape_rect:()=>tM,mpython_pbm_image:()=>nM,onboard_oled_bright_point:()=>$h,onboard_oled_scroll_string_delay:()=>jh,onboard_oled_show_frame_string_delay:()=>Zh,onboard_oled_show_image:()=>Jh,onboard_oled_show_image_or_string_delay:()=>Qh,onboard_oled_show_image_xy:()=>qh,onboard_oled_show_string:()=>zh,onboard_tft_bright_point:()=>gM,onboard_tft_bright_screen:()=>AM,onboard_tft_clear:()=>CM,onboard_tft_clock_clear:()=>PM,onboard_tft_clock_draw:()=>FM,onboard_tft_clock_get_rtctime:()=>DM,onboard_tft_clock_init:()=>NM,onboard_tft_clock_set_time:()=>fM,onboard_tft_display_hvline:()=>OM,onboard_tft_display_line:()=>EM,onboard_tft_display_shape_circle:()=>vM,onboard_tft_display_shape_rect:()=>mM,onboard_tft_fill:()=>LM,onboard_tft_get_pixel:()=>cM,onboard_tft_get_screen_pixel:()=>SM,onboard_tft_scroll_string:()=>IM,onboard_tft_scroll_string_delay:()=>TM,onboard_tft_shift:()=>RM,onboard_tft_show_frame_string:()=>hM,onboard_tft_show_frame_string_delay:()=>MM,onboard_tft_show_image:()=>rM,onboard_tft_show_image_or_string_delay:()=>dM,onboard_tft_show_image_xy:()=>lM});var y={};t.r(y),t.d(y,{factory_block:()=>kM,factory_block_return:()=>HM,factory_block_return_with_textarea:()=>KM,factory_block_with_textarea:()=>WM,factory_callMethod_noreturn:()=>UM,factory_callMethod_return:()=>wM,factory_create_with_container:()=>yM,factory_create_with_item:()=>VM,factory_declare:()=>GM,factory_from_import:()=>XM,factory_function_noreturn:()=>bM,factory_function_return:()=>BM,factory_import:()=>xM,folding_block:()=>JM});var V={};t.r(V),t.d(V,{controls_pin_attachInterrupt:()=>hm,inout_analog_atten:()=>nm,inout_analog_read:()=>im,inout_analog_read_init:()=>um,inout_analog_write:()=>$M,inout_analog_write_init:()=>am,inout_analog_write_set:()=>tm,inout_analog_write_set_freq:()=>dm,inout_digital_init:()=>_m,inout_digital_read:()=>jM,inout_digital_write:()=>QM,inout_highlow:()=>zM,inout_pinMode:()=>lm,inout_pin_attachInterrupt:()=>om,inout_pin_pressed:()=>sm,inout_pin_pressed_init:()=>rm,inout_pwm_analog_write:()=>ZM,inout_pwm_analog_write_init:()=>pm,inout_pwm_analog_write_set_freq:()=>em,pin_pressed:()=>Tm,pin_pressed_init:()=>Im});var B={};t.r(B),t.d(B,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>Bm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Vm,IOT_EMQX_PING:()=>bm,IOT_FORMATTING:()=>Xm,IOT_FORMAT_STRING:()=>xm,IOT_MIXIO_NTP:()=>ym,IOT_MIXIO_PUBLISH:()=>Nm,IOT_MIXIO_SUBSCRIBE:()=>Dm,iot_checkonenet:()=>zm,iot_client_onboard:()=>Um,iot_create_with_item:()=>Am,iot_http_client:()=>wm,iot_http_data:()=>km,iot_mixio_check:()=>Pm,iot_mixio_connect:()=>Lm,iot_mixio_connect_only:()=>Fm,iot_mixio_disconnect:()=>fm,iot_mixio_format_msg:()=>Ym,iot_mixio_format_topic:()=>vm,iot_mixly_key:()=>Gm,iot_mqtt_client:()=>Hm,iot_mqtt_data:()=>Wm,iot_onenet_check:()=>Rm,iot_onenet_connect:()=>Om,iot_onenet_disconnect:()=>Em,iot_onenet_publish:()=>gm,iot_onenet_publish_dict:()=>cm,iot_onenetconnect:()=>Jm,iot_onenetdisconnect:()=>qm,iot_publish:()=>Qm,iot_publish_container:()=>Cm,iot_publish_item:()=>Sm,iot_wifi_connect:()=>mm,iot_wificonnect:()=>Km});var G={};t.r(G),t.d(G,{network_ap_connect:()=>lO,network_connect:()=>iO,network_get_connect:()=>aO,network_get_wifi:()=>rO,network_init:()=>Zm,network_is_active:()=>tO,network_open:()=>$m,network_scan:()=>eO,network_server:()=>dO,network_socket_accept:()=>mO,network_socket_bind:()=>TO,network_socket_close:()=>gO,network_socket_connect:()=>hO,network_socket_init:()=>IO,network_socket_listen:()=>MO,network_socket_receive:()=>OO,network_socket_receive_from:()=>RO,network_socket_send:()=>EO,network_socket_send_to:()=>cO,network_stop:()=>uO,network_wifi_connect:()=>nO,ntptime_address:()=>NO,ntptime_time:()=>LO,requests_attribute:()=>SO,requests_get:()=>CO,requests_method:()=>AO,urequests_connect_url:()=>_O,urequests_response:()=>pO,urequests_wifi_connect:()=>sO,urequests_wifi_url:()=>oO});var U={};t.r(U),t.d(U,{pe_g1_battery_left:()=>FO,pe_g1_dc_motor:()=>PO,pe_g1_dc_motor_speed:()=>vO,pe_g1_servo_get_angle:()=>xO,pe_g1_servo_get_speed:()=>bO,pe_g1_servo_set_angle:()=>YO,pe_g1_servo_set_speed:()=>XO,pe_g1_use_i2c_init:()=>fO});var w={};t.r(w),t.d(w,{HCSR04:()=>yE,PS2_Button:()=>UE,PS2_Buttons:()=>kE,PS2_Buttons_new:()=>JE,PS2_State:()=>wE,PS2_init:()=>VE,PS2_init_new:()=>WE,PS2_stk:()=>HE,PS2_stk_new:()=>qE,PS2_vibration:()=>GE,PS2_vibration_new:()=>KE,esp32_s2_weather_init:()=>YE,esp32_s2_weather_rain:()=>xE,esp32_s2_weather_wd:()=>XE,esp32_s2_weather_ws:()=>bE,extern_rfid_read:()=>EE,extern_rfid_readcontent:()=>cE,extern_rfid_readid:()=>RE,extern_rfid_status:()=>SE,extern_rfid_write:()=>gE,extern_rfid_write_return:()=>CE,gnss_get_data:()=>ZE,gnss_have_data:()=>jE,mixbot_sensor_extern_get_addr:()=>oR,mixbot_sensor_extern_set_addr:()=>_R,pm25_get_data:()=>QE,robot_button_extern_get_value:()=>$E,robot_color_extern_get_value:()=>sR,robot_infrared_extern_get_value:()=>eR,robot_infrared_extern_grey_get_value:()=>iR,robot_potentiometer_extern_get_value:()=>nR,robot_sonar_extern_get_value:()=>pR,robot_sonar_extern_led:()=>aR,robot_touch_extern_get_value:()=>tR,sensor_APDS9960_extern:()=>eE,sensor_LTR308_extern:()=>iE,sensor_LTR390UV_extern:()=>sE,sensor_MAX30102_extern:()=>tE,sensor_QMC5883L_extern:()=>uE,sensor_VL530LX_extern:()=>oE,sensor_adxl345_get_acceleration:()=>kO,sensor_aht11_extern:()=>pE,sensor_bmp:()=>zO,sensor_compass_reset:()=>mE,sensor_dht11:()=>WO,sensor_ds18x20:()=>jO,sensor_hp203_extern:()=>aE,sensor_light_level:()=>HO,sensor_lm35:()=>ZO,sensor_ltr381_extern:()=>nE,sensor_mixgo_extern_button_attachInterrupt:()=>UO,sensor_mixgo_extern_button_get_presses:()=>GO,sensor_mixgo_extern_button_is_pressed:()=>VO,sensor_mixgo_extern_button_was_pressed:()=>BO,sensor_mixgo_extern_light:()=>KO,sensor_mixgo_extern_pin_near:()=>qO,sensor_mixgo_extern_sound:()=>JO,sensor_mixgoce_hot_wheel_degrees:()=>vE,sensor_mixgoce_hot_wheel_is_touched:()=>PE,sensor_mpu9250_attachGestureInterrupt:()=>wO,sensor_mpu9250_calibrate_compass:()=>TE,sensor_mpu9250_field_strength:()=>ME,sensor_mpu9250_gesture:()=>rE,sensor_mpu9250_get_acceleration:()=>lE,sensor_mpu9250_get_gyro:()=>IE,sensor_mpu9250_get_magnetic:()=>dE,sensor_mpu9250_temperature:()=>hE,sensor_sht:()=>QO,sensor_shtc3_extern:()=>_E,sensor_use_i2c_init:()=>$O,sensor_use_spi_init:()=>OE,sensor_use_uart_init:()=>zE,sensor_weather_solo_init:()=>uR,sensor_weather_solo_rain:()=>dR,sensor_weather_solo_wd:()=>rR,sensor_weather_solo_ws:()=>lR,weather_data:()=>AE,weather_have_data:()=>LE,weather_set_label:()=>DE,weather_set_label_container:()=>fE,weather_set_label_item:()=>FE,weather_uart_mixio:()=>NE});var k={};t.r(k),t.d(k,{HCSR04:()=>fR,RTC_set_date:()=>DR,RTC_set_time:()=>NR,bitbot_als_num:()=>Xc,dht11:()=>Uc,number1:()=>PR,number2:()=>vR,number3:()=>YR,number4:()=>XR,number5:()=>xR,number6:()=>bR,number7:()=>yR,onboard_RTC_get_time:()=>HR,onboard_RTC_get_timestamp:()=>WR,onboard_RTC_set_datetime:()=>qR,onboard_RTC_settime_string:()=>JR,onboard_RTC_timestamp_totuple:()=>KR,rfid_readcontent:()=>ic,rfid_readid:()=>ec,rfid_write:()=>nc,rfid_write_return:()=>sc,sensor_LTR308:()=>QR,sensor_aht11:()=>ZR,sensor_bitbot_ALS:()=>Yc,sensor_button_get_presses:()=>yc,sensor_button_is_pressed:()=>xc,sensor_button_was_pressed:()=>bc,sensor_distance_hrsc04:()=>LR,sensor_eulerangles:()=>_c,sensor_field_strength:()=>wc,sensor_get_acceleration:()=>oc,sensor_get_temperature:()=>$R,sensor_hp203:()=>tc,sensor_light:()=>Gc,sensor_mixbot_get_gyro:()=>vc,sensor_mixbot_patrol_calibrate:()=>fc,sensor_mixbot_patrol_value:()=>Fc,sensor_mixbot_temperature:()=>Pc,sensor_mixgo_LTR308:()=>kR,sensor_mixgo_button_attachInterrupt:()=>mR,sensor_mixgo_button_get_presses:()=>MR,sensor_mixgo_button_is_pressed:()=>TR,sensor_mixgo_button_was_pressed:()=>hR,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>mc,sensor_mixgo_cc_mmc5603_get_angle:()=>Mc,sensor_mixgo_cc_mmc5603_get_magnetic:()=>hc,sensor_mixgo_light:()=>FR,sensor_mixgo_nova_LTR308:()=>wR,sensor_mixgo_nova_pin_near:()=>UR,sensor_mixgo_pin_near:()=>GR,sensor_mixgo_pin_near_double:()=>BR,sensor_mixgo_pin_near_single:()=>VR,sensor_mixgo_pin_pressed:()=>gR,sensor_mixgo_touch_slide:()=>AR,sensor_mixgocar42_button_attachInterrupt:()=>cR,sensor_mixgocar42_button_get_presses:()=>RR,sensor_mixgocar42_button_is_pressed:()=>OR,sensor_mixgocar42_button_was_pressed:()=>ER,sensor_mixgocar_battery_left:()=>Dc,sensor_mixgocar_pin_near:()=>Lc,sensor_mixgocar_pin_near_line:()=>Ac,sensor_mixgocar_pin_near_state_change:()=>Nc,sensor_mixgoce_pin_pressed:()=>CR,sensor_mixgoce_temperature:()=>Ec,sensor_mixgome_temperature:()=>Oc,sensor_mpython_pin_pressed:()=>SR,sensor_mpython_qmi8658_get_gyro:()=>Rc,sensor_mpython_qmi8658_temperature:()=>cc,sensor_onboard_compass_reset:()=>Tc,sensor_onboard_mpu9250_calibrate_compass:()=>lc,sensor_onboard_mpu9250_field_strength:()=>Ic,sensor_onboard_mpu9250_gesture:()=>pc,sensor_onboard_mpu9250_get_acceleration:()=>ac,sensor_onboard_mpu9250_get_gyro:()=>rc,sensor_onboard_mpu9250_get_magnetic:()=>uc,sensor_onboard_mpu9250_temperature:()=>dc,sensor_pin_near:()=>Bc,sensor_pin_pressed:()=>Vc,sensor_rm_acc:()=>Sc,sensor_rm_battery_left:()=>Cc,sensor_rm_pin_near_double:()=>gc,sensor_rtc_init:()=>zR,sensor_sound:()=>jR,sensor_temperature:()=>kc});var H={};t.r(H),t.d(H,{serial_any:()=>jc,serial_begin:()=>ig,serial_print:()=>Kc,serial_print_byte:()=>Wc,serial_print_hex:()=>qc,serial_println:()=>Jc,serial_read_from_ai:()=>lg,serial_readline:()=>Zc,serial_readstr:()=>Qc,serial_readstr_until:()=>$c,serial_receive_data_event:()=>zc,serial_send_to_ai:()=>rg,serial_softserial:()=>eg,serial_softserial_new:()=>tg,system_input:()=>ng,system_print:()=>sg,system_print_container:()=>ag,system_print_end:()=>_g,system_print_inline:()=>og,system_print_item:()=>ug,system_print_many:()=>pg});var W={};t.r(W),t.d(W,{Panic_with_status_code:()=>hg,Timer_init:()=>Dg,base_delay:()=>Pg,controls_delay:()=>Tg,controls_delay_new:()=>Ig,controls_millis:()=>mg,controls_uname:()=>Eg,raw_block:()=>Og,reset:()=>Mg,system_bitbot_shutdown:()=>Ng,system_machine_reset:()=>Lg,system_ticks_diff:()=>gg,system_timer:()=>cg,system_timer_init:()=>Cg,system_wdt_feed:()=>Ag,system_wdt_init:()=>Sg,time_ticks_diff:()=>Fg,timer:()=>Rg,timer2:()=>fg});var K={};t.r(K),t.d(K,{WEATHER_DAILY:()=>Xg,WEATHER_HOUR:()=>xg,WEATHER_NOW:()=>Yg});var J={};t.r(J),t.d(J,{actuator_extern_get_led_bright:()=>eC,actuator_extern_get_led_state:()=>iC,actuator_extern_led_bright:()=>tC,actuator_extern_led_brightness:()=>nC,actuator_ms32006_dcmotor:()=>kg,actuator_ms32006_init:()=>wg,actuator_ms32006_stepper:()=>Hg,actuator_neopixel_init:()=>sC,actuator_neopixel_rgb:()=>pC,actuator_neopixel_rgb_all:()=>oC,actuator_neopixel_write:()=>_C,actuator_use_uart_init:()=>aC,esp32_music_get_tempo_extern:()=>Qg,esp32_music_pitch:()=>Kg,esp32_music_pitch_init:()=>Wg,esp32_music_pitch_with_time:()=>Jg,esp32_music_play_list:()=>jg,esp32_music_reset_extern:()=>Zg,esp32_music_set_tempo_extern:()=>zg,esp32_music_stop:()=>qg,mixbot_actuator_extern_get_addr:()=>LC,mixbot_actuator_extern_set_addr:()=>NC,mixbot_addr_extern:()=>IC,robot_led_extern:()=>mC,robot_led_extern_get_value:()=>OC,robot_motor_extern:()=>TC,robot_motor_extern_get_speed:()=>hC,robot_servo_extern_absolute_run:()=>gC,robot_servo_extern_get_status:()=>EC,robot_servo_extern_relative_continue:()=>AC,robot_servo_extern_relative_origin:()=>CC,robot_servo_extern_relative_run:()=>SC,robot_servo_extern_stop:()=>cC,robot_servo_extern_stop_mode:()=>RC,robot_traffic_light_extern:()=>MC,servo_get_angle:()=>Gg,servo_get_speed:()=>Ug,servo_init:()=>bg,servo_move:()=>$g,servo_set_angle:()=>Vg,servo_set_speed:()=>Bg,servo_speed_360:()=>yg,syn6288_builtin_voice:()=>lC,syn6288_get_voice:()=>rC,syn6288_set_voice:()=>uC,syn6288_tts_play:()=>dC});var q={};t.r(q),t.d(q,{actuator_dc_motor:()=>eS,actuator_dc_motor_stop:()=>iS,actuator_get_led_bright:()=>VC,actuator_get_led_state:()=>BC,actuator_led_bright:()=>yC,actuator_led_brightness:()=>GC,actuator_mixbot_buzzer_on_off:()=>pS,actuator_mixgo_nova_mic_get:()=>dS,actuator_mixgo_nova_mic_set:()=>lS,actuator_mixgo_nova_onboard_music_pitch:()=>OS,actuator_mixgo_nova_onboard_music_stop:()=>ES,actuator_mixgo_nova_play_audio:()=>MS,actuator_mixgo_nova_play_online_audio:()=>mS,actuator_mixgo_nova_record_audio:()=>hS,actuator_mixgo_nova_voice_get:()=>TS,actuator_mixgo_nova_voice_set:()=>IS,actuator_mixgo_zero_led_color:()=>UC,actuator_onboard_neopixel_rgb:()=>qC,actuator_onboard_neopixel_rgb_all:()=>zC,actuator_onboard_neopixel_rgb_show_all_chase:()=>QC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>jC,actuator_onboard_neopixel_write:()=>JC,actuator_stepper_keep:()=>$C,actuator_stepper_stop:()=>tS,analog_keyboard_input:()=>CS,analog_keyboard_str:()=>DS,analog_mouse_input:()=>LS,bitbot_motor:()=>rS,bitbot_move:()=>aS,bitbot_stop:()=>uS,cc_number:()=>wC,esp32_music_get_tempo:()=>fC,esp32_music_reset:()=>XC,esp32_music_set_tempo:()=>DC,esp32_onboard_music_pitch:()=>FC,esp32_onboard_music_pitch_with_time:()=>PC,esp32_onboard_music_play_list:()=>YC,esp32_onboard_music_stop:()=>vC,general_key:()=>AS,general_key_tuple:()=>fS,get_power_output:()=>cS,ledswitch:()=>bC,mixbot_motor:()=>_S,mixbot_motor_status:()=>nS,mixbot_move:()=>sS,mixbot_stop:()=>oS,mouse_key:()=>NS,number:()=>xC,rm_actuator_get_led_bright:()=>HC,rm_actuator_get_led_state:()=>WC,rm_actuator_led_bright:()=>kC,rm_actuator_led_brightness:()=>KC,rm_motor:()=>ZC,set_all_power_output:()=>gS,set_power_output:()=>RS,special_key:()=>SS});var z={};t.r(z),t.d(z,{ai_sensor_20object:()=>aA,ai_sensor_ailocal_class:()=>jS,ai_sensor_ailocal_class_result:()=>ZS,ai_sensor_ailocal_train:()=>QS,ai_sensor_asr_recognize:()=>nA,ai_sensor_audio_play:()=>tA,ai_sensor_audio_record:()=>$S,ai_sensor_barcode:()=>bS,ai_sensor_circle:()=>wS,ai_sensor_classifier_faces:()=>pA,ai_sensor_color:()=>KS,ai_sensor_color_chases:()=>zS,ai_sensor_color_chases_result:()=>qS,ai_sensor_config:()=>vS,ai_sensor_face:()=>_A,ai_sensor_find_20objects:()=>uA,ai_sensor_find_barcodes:()=>yS,ai_sensor_find_circles:()=>kS,ai_sensor_find_colors:()=>JS,ai_sensor_find_licenseplates:()=>oA,ai_sensor_find_lines:()=>US,ai_sensor_find_qrcodes:()=>xS,ai_sensor_find_rects:()=>WS,ai_sensor_find_tags:()=>BS,ai_sensor_licenseplate:()=>sA,ai_sensor_line:()=>GS,ai_sensor_qrcode:()=>XS,ai_sensor_qrcode_lite:()=>PS,ai_sensor_rect:()=>HS,ai_sensor_rgb:()=>YS,ai_sensor_tag:()=>VS,ai_sensor_use_uart_init:()=>FS,ai_sensor_yolo_recognize:()=>eA,ai_sensor_yolo_recognize_result:()=>iA});var Q={};t.r(Q),t.d(Q,{MICROPYTHON_AI_Speech_asr:()=>dA,MICROPYTHON_AI_Speech_unit:()=>lA,MICROPYTHON_AI_client:()=>rA});var j={};t.r(j),t.d(j,{mpython_blynk_app_data:()=>SA,mpython_blynk_app_notify:()=>EA,mpython_blynk_email:()=>AA,mpython_blynk_get_timers:()=>cA,mpython_blynk_on_connected:()=>MA,mpython_blynk_on_disconnected:()=>hA,mpython_blynk_run:()=>OA,mpython_blynk_sensor_data_to_app:()=>CA,mpython_blynk_set_property:()=>LA,mpython_blynk_setup:()=>NA,mpython_blynk_stop_timers:()=>RA,mpython_blynk_sync_virtual:()=>TA,mpython_blynk_terminal_widget_vpin:()=>IA,mpython_blynktimer:()=>gA,mpython_blynktimer_run:()=>mA});var Z={};t.r(Z),t.d(Z,{cc_g1_read_bat:()=>DA,cc_g1_read_joystick:()=>fA,cc_g1_read_key:()=>FA,cc_g1_turnoff:()=>PA});var $={};t.r($),t.d($,{ce_go_dc_motor:()=>BA,ce_go_get_led_bright:()=>XA,ce_go_get_led_state:()=>xA,ce_go_hall_attachInterrupt:()=>GA,ce_go_hall_data:()=>wA,ce_go_hall_initialize:()=>UA,ce_go_led_bright:()=>YA,ce_go_led_brightness:()=>bA,ce_go_light_number:()=>vA,ce_go_pin_light:()=>JA,ce_go_pin_near:()=>HA,ce_go_pin_near_line:()=>kA,ce_go_pin_near_state_change:()=>WA,ce_go_stepper_keep:()=>yA,ce_go_stepper_stop:()=>VA,sensor_mixgome_eulerangles:()=>KA});var tt={};t.r(tt),t.d(tt,{communicate_bluetooth_central_init:()=>DL,communicate_bluetooth_connect:()=>PL,communicate_bluetooth_disconnect:()=>vL,communicate_bluetooth_handle:()=>VL,communicate_bluetooth_is_connected:()=>XL,communicate_bluetooth_mac:()=>YL,communicate_bluetooth_peripheral_init:()=>fL,communicate_bluetooth_recv:()=>yL,communicate_bluetooth_recv_only:()=>bL,communicate_bluetooth_scan:()=>FL,communicate_bluetooth_send:()=>xL,communicate_espnow_init:()=>BL,communicate_espnow_init_new:()=>GL,communicate_i2c_available:()=>eL,communicate_i2c_init:()=>QA,communicate_i2c_master_read:()=>tL,communicate_i2c_onboard:()=>qA,communicate_i2c_read:()=>jA,communicate_i2c_scan:()=>$A,communicate_i2c_write:()=>ZA,communicate_ir_recv_init:()=>OL,communicate_ir_send_init:()=>CL,communicate_ow_init:()=>dL,communicate_ow_read:()=>hL,communicate_ow_reset:()=>TL,communicate_ow_scan:()=>IL,communicate_ow_select:()=>mL,communicate_ow_write:()=>ML,communicate_spi_buffer:()=>oL,communicate_spi_init:()=>nL,communicate_spi_onboard:()=>zA,communicate_spi_read:()=>_L,communicate_spi_read_output:()=>pL,communicate_spi_readinto:()=>aL,communicate_spi_readinto_output:()=>uL,communicate_spi_set:()=>sL,communicate_spi_write:()=>rL,communicate_spi_write_readinto:()=>lL,espnow_radio_channel:()=>KL,espnow_radio_channel_new:()=>qL,espnow_radio_on_off:()=>zL,espnow_radio_rec:()=>jL,espnow_radio_recv:()=>$L,espnow_radio_recv_certain_msg:()=>tN,espnow_radio_recv_certain_msg_new:()=>iN,espnow_radio_recv_msg:()=>ZL,espnow_radio_recv_new:()=>eN,espnow_radio_send:()=>QL,espnow_radio_txpower:()=>JL,i2c_slave_onreceive:()=>iL,internal_variable:()=>EL,ir_recv_timeout:()=>gL,ir_transmit_busy:()=>NL,ir_transmit_conventional_data:()=>SL,ir_transmit_raw_code:()=>LL,ir_transmit_study_code:()=>AL,ir_whether_recv:()=>cL,lora_init:()=>nN,lora_packet:()=>sN,lora_recv:()=>_N,lora_send:()=>oN,network_espnow_info:()=>wL,network_espnow_mac:()=>UL,network_espnow_recv:()=>kL,network_espnow_recv_handle:()=>WL,network_espnow_send:()=>HL,recv_fun:()=>RL,urequests_attribute:()=>aN,urequests_get:()=>pN,urequests_method:()=>uN});var et={};t.r(et),t.d(et,{display_animate:()=>XN,display_circle:()=>xN,display_color_seclet:()=>KN,display_draw_4strings:()=>NN,display_fill:()=>YN,display_lcd_use_i2c_init:()=>ZN,display_line:()=>FN,display_line_arbitrarily:()=>DN,display_matrix_extern_bright_point:()=>RN,display_matrix_extern_bright_screen:()=>gN,display_matrix_extern_clear:()=>mN,display_matrix_extern_get_pixel:()=>EN,display_matrix_extern_get_screen_pixel:()=>cN,display_matrix_extern_image_builtins:()=>CN,display_matrix_extern_scroll_string:()=>hN,display_matrix_extern_scroll_string_delay:()=>MN,display_matrix_extern_shift:()=>ON,display_matrix_extern_show_frame_string:()=>IN,display_matrix_extern_show_frame_string_delay:()=>TN,display_matrix_extern_show_image:()=>lN,display_matrix_extern_show_image_or_string_delay:()=>dN,display_matrix_use_i2c_init:()=>rN,display_oled_drawPixel:()=>VN,display_oled_showBitmap:()=>yN,display_oled_use_i2c_init:()=>nD,display_onoff:()=>PN,display_rect:()=>fN,display_tm1650_power:()=>GN,display_tm1650_set_brightness:()=>kN,display_tm1650_show_dot:()=>wN,display_tm1650_show_num:()=>UN,display_tm_use_i2c_init:()=>BN,display_triangle:()=>bN,display_use_i2c_init:()=>LN,extern_oled_bright_point:()=>hD,extern_oled_clear:()=>dD,extern_oled_get_pixel:()=>TD,extern_oled_hvline:()=>mD,extern_oled_line:()=>OD,extern_oled_scroll_string:()=>rD,extern_oled_scroll_string_delay:()=>lD,extern_oled_shape_rect:()=>MD,extern_oled_shift:()=>ID,extern_oled_show_frame_string:()=>aD,extern_oled_show_frame_string_delay:()=>uD,extern_oled_show_image:()=>sD,extern_oled_show_image_or_string_delay:()=>pD,extern_oled_show_image_xy:()=>oD,extern_oled_show_string:()=>_D,image_shift:()=>vN,lcd_backlight:()=>eD,lcd_clear:()=>iD,lcd_print_string:()=>tD,lcd_show_image_or_string_delay:()=>$N,matrix_extern_image_arithmetic:()=>SN,matrix_extern_image_invert:()=>AN,tft_fill:()=>QN,tft_line_arbitrarily:()=>jN,tft_scroll_string_delay:()=>zN,tft_show_frame_string_delay:()=>qN,tft_show_image_or_string_delay:()=>JN,tft_show_image_xy:()=>WN,tft_use_spi_init:()=>HN});var it={};t.r(it),t.d(it,{bitbot_display_image_create:()=>nf,display_bright_point:()=>YD,display_bright_screen:()=>xD,display_clear:()=>DD,display_get_pixel:()=>vD,display_get_screen_pixel:()=>XD,display_image_builtins:()=>AD,display_image_builtins_all:()=>LD,display_image_create:()=>ND,display_scroll_string:()=>CD,display_scroll_string_delay:()=>SD,display_shift:()=>PD,display_show_frame_string:()=>cD,display_show_frame_string_delay:()=>gD,display_show_image:()=>ED,display_show_image_or_string_delay:()=>RD,image_arithmetic:()=>fD,image_invert:()=>FD,mixbot_display_bright_screen:()=>tf,mixbot_display_get_ambientbright:()=>$D,mixbot_display_get_screen_pixel:()=>ZD,mixbot_display_image_create:()=>jD,mixbot_display_rotate:()=>ef,mixgo_display_image_create_new:()=>BD,mixgome_display_font:()=>VD,mixgome_display_image_create:()=>bD,mixgomini_display_image_create:()=>yD,mpython_display_hvline:()=>zD,mpython_display_line:()=>QD,mpython_display_shape_rect:()=>qD,mpython_pbm_image:()=>GD,onboard_oled_bright_point:()=>JD,onboard_oled_scroll_string_delay:()=>KD,onboard_oled_show_frame_string_delay:()=>WD,onboard_oled_show_image:()=>UD,onboard_oled_show_image_or_string_delay:()=>HD,onboard_oled_show_image_xy:()=>wD,onboard_oled_show_string:()=>kD,onboard_tft_bright_point:()=>mf,onboard_tft_bright_screen:()=>Ef,onboard_tft_clear:()=>Tf,onboard_tft_clock_clear:()=>Af,onboard_tft_clock_draw:()=>Sf,onboard_tft_clock_get_rtctime:()=>gf,onboard_tft_clock_init:()=>cf,onboard_tft_clock_set_time:()=>Cf,onboard_tft_display_hvline:()=>df,onboard_tft_display_line:()=>If,onboard_tft_display_shape_circle:()=>Lf,onboard_tft_display_shape_rect:()=>lf,onboard_tft_fill:()=>Rf,onboard_tft_get_pixel:()=>Mf,onboard_tft_get_screen_pixel:()=>Of,onboard_tft_scroll_string:()=>uf,onboard_tft_scroll_string_delay:()=>rf,onboard_tft_shift:()=>hf,onboard_tft_show_frame_string:()=>pf,onboard_tft_show_frame_string_delay:()=>af,onboard_tft_show_image:()=>sf,onboard_tft_show_image_or_string_delay:()=>_f,onboard_tft_show_image_xy:()=>of});var nt={};t.r(nt),t.d(nt,{factory_block:()=>Xf,factory_block_return:()=>xf,factory_block_return_with_textarea:()=>yf,factory_block_with_textarea:()=>bf,factory_callMethod_noreturn:()=>vf,factory_callMethod_return:()=>Yf,factory_declare:()=>Pf,factory_from_import:()=>Nf,factory_function_noreturn:()=>ff,factory_function_return:()=>Ff,factory_import:()=>Df,folding_block:()=>Vf});var st={};t.r(st),t.d(st,{inout_analog_atten:()=>$f,inout_analog_read:()=>Kf,inout_analog_read_init:()=>Zf,inout_analog_write:()=>kf,inout_analog_write_init:()=>jf,inout_analog_write_set:()=>Hf,inout_digital_init:()=>zf,inout_digital_read:()=>Uf,inout_digital_write:()=>Gf,inout_highlow:()=>Bf,inout_pin_attachInterrupt:()=>qf,inout_pin_pressed:()=>Jf,inout_pin_pressed_init:()=>tF,inout_pwm_analog_write:()=>wf,inout_pwm_analog_write_init:()=>Qf,inout_pwm_analog_write_set_freq:()=>Wf});var ot={};t.r(ot),t.d(ot,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>EF,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>mF,IOT_EMQX_PING:()=>RF,IOT_FORMATTING:()=>hF,IOT_FORMAT_STRING:()=>MF,IOT_MIXIO_NTP:()=>cF,IOT_MIXIO_PUBLISH:()=>aF,IOT_MIXIO_SUBSCRIBE:()=>uF,iot_client_onboard:()=>gF,iot_http_client:()=>CF,iot_http_data:()=>SF,iot_mixio_check:()=>dF,iot_mixio_connect:()=>pF,iot_mixio_connect_only:()=>lF,iot_mixio_disconnect:()=>rF,iot_mixio_format_msg:()=>TF,iot_mixio_format_topic:()=>IF,iot_mixly_key:()=>OF,iot_mqtt_client:()=>AF,iot_mqtt_data:()=>LF,iot_onenet_check:()=>oF,iot_onenet_connect:()=>iF,iot_onenet_disconnect:()=>nF,iot_onenet_publish:()=>_F,iot_onenet_publish_dict:()=>sF,iot_wifi_connect:()=>eF});var _t={};t.r(_t),t.d(_t,{network_ap_connect:()=>xF,network_connect:()=>DF,network_get_connect:()=>FF,network_get_wifi:()=>XF,network_init:()=>NF,network_is_active:()=>YF,network_open:()=>vF,network_scan:()=>bF,network_server:()=>yF,network_socket_accept:()=>wF,network_socket_bind:()=>BF,network_socket_close:()=>JF,network_socket_connect:()=>GF,network_socket_init:()=>VF,network_socket_listen:()=>UF,network_socket_receive:()=>kF,network_socket_receive_from:()=>WF,network_socket_send:()=>HF,network_socket_send_to:()=>KF,network_stop:()=>PF,network_wifi_connect:()=>fF,ntptime_address:()=>ZF,ntptime_time:()=>jF,requests_attribute:()=>zF,requests_get:()=>qF,requests_method:()=>QF,urequests_connect_url:()=>eP,urequests_response:()=>iP,urequests_wifi_connect:()=>$F,urequests_wifi_url:()=>tP});var pt={};t.r(pt),t.d(pt,{pe_g1_battery_left:()=>sP,pe_g1_dc_motor:()=>oP,pe_g1_dc_motor_speed:()=>_P,pe_g1_servo_get_angle:()=>uP,pe_g1_servo_get_speed:()=>rP,pe_g1_servo_set_angle:()=>pP,pe_g1_servo_set_speed:()=>aP,pe_g1_use_i2c_init:()=>nP});var at={};t.r(at),t.d(at,{HCSR04:()=>$P,PS2_Button:()=>iv,PS2_Buttons:()=>nv,PS2_Buttons_new:()=>lv,PS2_State:()=>sv,PS2_init:()=>tv,PS2_init_new:()=>uv,PS2_stk:()=>ov,PS2_stk_new:()=>dv,PS2_vibration:()=>ev,PS2_vibration_new:()=>rv,RTC_get_time:()=>pv,RTC_set_date:()=>OP,RTC_set_datetime:()=>_v,RTC_set_time:()=>mP,esp32_s2_weather_init:()=>zP,esp32_s2_weather_rain:()=>jP,esp32_s2_weather_wd:()=>QP,esp32_s2_weather_ws:()=>ZP,extern_rfid_read:()=>yP,extern_rfid_readcontent:()=>BP,extern_rfid_readid:()=>VP,extern_rfid_status:()=>wP,extern_rfid_write:()=>GP,extern_rfid_write_return:()=>UP,gnss_get_data:()=>hv,gnss_have_data:()=>Mv,mixbot_sensor_extern_get_addr:()=>Av,mixbot_sensor_extern_set_addr:()=>Lv,pm25_get_data:()=>Tv,robot_button_extern_get_value:()=>mv,robot_color_extern_get_value:()=>gv,robot_infrared_extern_get_value:()=>Ev,robot_infrared_extern_grey_get_value:()=>Rv,robot_potentiometer_extern_get_value:()=>cv,robot_sonar_extern_get_value:()=>Cv,robot_sonar_extern_led:()=>Sv,robot_touch_extern_get_value:()=>Ov,sensor_APDS9960_extern:()=>NP,sensor_LTR308_extern:()=>DP,sensor_LTR390UV_extern:()=>PP,sensor_MAX30102_extern:()=>LP,sensor_QMC5883L_extern:()=>vP,sensor_VL530LX_extern:()=>xP,sensor_aht11_extern:()=>XP,sensor_bmp:()=>CP,sensor_dht11:()=>av,sensor_distance_hrsc04:()=>MP,sensor_hp203_extern:()=>fP,sensor_ltr381_extern:()=>FP,sensor_mixgo_extern_button_attachInterrupt:()=>TP,sensor_mixgo_extern_button_get_presses:()=>IP,sensor_mixgo_extern_button_is_pressed:()=>lP,sensor_mixgo_extern_button_was_pressed:()=>dP,sensor_mixgo_extern_light:()=>EP,sensor_mixgo_extern_pin_near:()=>cP,sensor_mixgo_extern_sound:()=>RP,sensor_mixgoce_hot_wheel_degrees:()=>qP,sensor_mixgoce_hot_wheel_is_touched:()=>JP,sensor_mpu9250_attachGestureInterrupt:()=>hP,sensor_rtc_init:()=>gP,sensor_sht:()=>SP,sensor_shtc3_extern:()=>YP,sensor_use_i2c_init:()=>AP,sensor_use_spi_init:()=>bP,sensor_use_uart_init:()=>Iv,sensor_weather_solo_init:()=>Nv,sensor_weather_solo_rain:()=>Fv,sensor_weather_solo_wd:()=>Dv,sensor_weather_solo_ws:()=>fv,weather_data:()=>kP,weather_have_data:()=>HP,weather_set_label:()=>KP,weather_uart_mixio:()=>WP});var ut={};t.r(ut),t.d(ut,{HCSR04:()=>Bv,bitbot_als_num:()=>nX,dht11:()=>lX,number1:()=>Gv,number2:()=>Uv,number3:()=>wv,number4:()=>kv,number5:()=>Hv,number6:()=>Wv,number7:()=>Kv,onboard_RTC_get_time:()=>xY,onboard_RTC_get_timestamp:()=>bY,onboard_RTC_set_datetime:()=>YY,onboard_RTC_settime_string:()=>XY,onboard_RTC_timestamp_totuple:()=>yY,rfid_readcontent:()=>pY,rfid_readid:()=>_Y,rfid_write:()=>aY,rfid_write_return:()=>uY,sensor_LTR308:()=>eY,sensor_adxl345_get_acceleration:()=>OY,sensor_aht11:()=>sY,sensor_bitbot_ALS:()=>iX,sensor_button_get_presses:()=>_X,sensor_button_is_pressed:()=>sX,sensor_button_was_pressed:()=>oX,sensor_compass_reset:()=>SY,sensor_ds18x20:()=>$v,sensor_eulerangles:()=>lY,sensor_get_acceleration:()=>rY,sensor_get_temperature:()=>oY,sensor_hp203:()=>nY,sensor_light:()=>rX,sensor_lm35:()=>tY,sensor_mixbot_get_gyro:()=>eX,sensor_mixbot_patrol_calibrate:()=>ZY,sensor_mixbot_patrol_value:()=>$Y,sensor_mixbot_temperature:()=>tX,sensor_mixgo_LTR308:()=>jv,sensor_mixgo_button_attachInterrupt:()=>Xv,sensor_mixgo_button_get_presses:()=>Yv,sensor_mixgo_button_is_pressed:()=>Pv,sensor_mixgo_button_was_pressed:()=>vv,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>GY,sensor_mixgo_cc_mmc5603_get_angle:()=>BY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>VY,sensor_mixgo_light:()=>uX,sensor_mixgo_nova_LTR308:()=>Zv,sensor_mixgo_nova_pin_near:()=>Qv,sensor_mixgo_pin_near:()=>zv,sensor_mixgo_pin_near_double:()=>qv,sensor_mixgo_pin_near_single:()=>Jv,sensor_mixgo_pin_pressed:()=>MY,sensor_mixgo_touch_slide:()=>hY,sensor_mixgocar42_button_attachInterrupt:()=>Vv,sensor_mixgocar42_button_get_presses:()=>yv,sensor_mixgocar42_button_is_pressed:()=>xv,sensor_mixgocar42_button_was_pressed:()=>bv,sensor_mixgocar_battery_left:()=>jY,sensor_mixgocar_pin_near:()=>zY,sensor_mixgocar_pin_near_line:()=>qY,sensor_mixgocar_pin_near_state_change:()=>QY,sensor_mixgoce_pin_pressed:()=>TY,sensor_mixgoce_temperature:()=>wY,sensor_mixgome_temperature:()=>UY,sensor_mpu9250_calibrate_compass:()=>cY,sensor_mpu9250_field_strength:()=>CY,sensor_mpu9250_gesture:()=>dY,sensor_mpu9250_get_acceleration:()=>IY,sensor_mpu9250_get_gyro:()=>RY,sensor_mpu9250_get_magnetic:()=>EY,sensor_mpu9250_temperature:()=>gY,sensor_mpython_pin_pressed:()=>mY,sensor_mpython_qmi8658_get_gyro:()=>kY,sensor_mpython_qmi8658_temperature:()=>HY,sensor_onboard_compass_reset:()=>vY,sensor_onboard_mpu9250_calibrate_compass:()=>fY,sensor_onboard_mpu9250_field_strength:()=>PY,sensor_onboard_mpu9250_gesture:()=>AY,sensor_onboard_mpu9250_get_acceleration:()=>LY,sensor_onboard_mpu9250_get_gyro:()=>DY,sensor_onboard_mpu9250_get_magnetic:()=>NY,sensor_onboard_mpu9250_temperature:()=>FY,sensor_pin_near:()=>aX,sensor_pin_pressed:()=>pX,sensor_rm_acc:()=>JY,sensor_rm_battery_left:()=>KY,sensor_rm_pin_near_double:()=>WY,sensor_sound:()=>iY});var rt={};t.r(rt),t.d(rt,{serial_any:()=>MX,serial_print:()=>dX,serial_print_byte:()=>IX,serial_print_hex:()=>hX,serial_println:()=>TX,serial_read_from_ai:()=>NX,serial_readline:()=>OX,serial_readstr:()=>mX,serial_send_to_ai:()=>LX,serial_softserial:()=>EX,serial_softserial_new:()=>RX,system_input:()=>cX,system_print:()=>gX,system_print_end:()=>SX,system_print_inline:()=>CX,system_print_many:()=>AX});var lt={};t.r(lt),t.d(lt,{Panic_with_status_code:()=>BX,Timer_init:()=>tx,base_delay:()=>nx,controls_delay:()=>HX,controls_delay_new:()=>WX,controls_end_program:()=>UX,controls_millis:()=>GX,controls_uname:()=>kX,reset:()=>wX,system_bitbot_shutdown:()=>$X,system_device_name:()=>yX,system_device_serial_number:()=>VX,system_event_bus_source:()=>xX,system_event_bus_value:()=>bX,system_machine_reset:()=>ZX,system_on_event:()=>vX,system_raise_event:()=>PX,system_reset:()=>fX,system_run_in_background:()=>DX,system_ticks_diff:()=>qX,system_timer:()=>JX,system_timer_init:()=>zX,system_timestamp:()=>YX,system_value:()=>XX,system_wait:()=>FX,system_wdt_feed:()=>jX,system_wdt_init:()=>QX,time_ticks_diff:()=>ix,timer:()=>KX,timer2:()=>ex});var dt={};t.r(dt),t.d(dt,{WEATHER_DAILY:()=>ox,WEATHER_HOUR:()=>_x,WEATHER_NOW:()=>sx});var It={};t.r(It),t.d(It,{controls_pin_attachInterrupt:()=>Fx,inout_analog_atten:()=>Ox,inout_analog_read:()=>mx,inout_analog_read_init:()=>Sx,inout_analog_write:()=>Tx,inout_analog_write_init:()=>Cx,inout_analog_write_set:()=>hx,inout_analog_write_set_freq:()=>Nx,inout_digital_init:()=>cx,inout_digital_read:()=>dx,inout_digital_write:()=>lx,inout_highlow:()=>rx,inout_pinMode:()=>Lx,inout_pin_attachInterrupt:()=>Rx,inout_pin_pressed:()=>Ex,inout_pin_pressed_init:()=>Ax,inout_pwm_analog_write:()=>Ix,inout_pwm_analog_write_init:()=>gx,inout_pwm_analog_write_set_freq:()=>Mx,pin_pressed:()=>fx,pin_pressed_init:()=>Dx});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>Bx,analog_output:()=>Ux,espnow_channel:()=>bx,haskylens_model:()=>yx,i2c_A_pin:()=>wx,i2c_B_pin:()=>kx,pins_analog:()=>qx,pins_analog_pin:()=>zx,pins_axis:()=>db,pins_brightness:()=>Ib,pins_builtinimg:()=>ob,pins_builtinimg_extern:()=>_b,pins_button:()=>Zx,pins_buttonB:()=>$x,pins_dac:()=>Qx,pins_dac_pin:()=>jx,pins_digital:()=>vx,pins_digital_dot:()=>cb,pins_digital_pin:()=>Yx,pins_exlcdh:()=>rb,pins_exlcdv:()=>lb,pins_imglist:()=>pb,pins_input_pin:()=>Xx,pins_one_more:()=>Rb,pins_output_pin:()=>xx,pins_playlist:()=>ab,pins_playlist_extern:()=>ub,pins_pwm:()=>tb,pins_pwm_pin:()=>eb,pins_radio_datarate:()=>Eb,pins_radio_power:()=>Ob,pins_serial:()=>sb,pins_tone_notes:()=>mb,pins_touch:()=>nb,pins_touch_pin:()=>ib,pins_tts_bgmusic:()=>Mb,pins_tts_builtin_music:()=>hb,pins_tts_voice:()=>Tb,pwm_input:()=>Vx,pwm_output:()=>Gx,spi_A_pin:()=>Hx,spi_B_pin:()=>Wx,spi_C_pin:()=>Kx,spi_D_pin:()=>Jx});var ht={};t.r(ht),t.d(ht,{inout_analog_atten:()=>bb,inout_analog_read:()=>fb,inout_analog_read_init:()=>xb,inout_analog_write:()=>Lb,inout_analog_write_init:()=>Xb,inout_analog_write_set:()=>Nb,inout_digital_init:()=>vb,inout_digital_read:()=>Sb,inout_digital_write:()=>Cb,inout_highlow:()=>gb,inout_pin_attachInterrupt:()=>Pb,inout_pin_pressed:()=>Fb,inout_pin_pressed_init:()=>yb,inout_pwm_analog_write:()=>Ab,inout_pwm_analog_write_init:()=>Yb,inout_pwm_analog_write_set_freq:()=>Db});var Mt={};t.r(Mt),t.d(Mt,{analog_input:()=>Jb,analog_output:()=>zb,espnow_channel:()=>Wb,haskylens_model:()=>Kb,i2c_A_pin:()=>Qb,i2c_B_pin:()=>jb,pins_analog:()=>ny,pins_analog_pin:()=>iy,pins_axis:()=>my,pins_brightness:()=>Ry,pins_builtinimg:()=>dy,pins_builtinimg_extern:()=>Iy,pins_button:()=>Bb,pins_buttonB:()=>Gb,pins_dac:()=>py,pins_dac_pin:()=>_y,pins_digital:()=>Vb,pins_digital_dot:()=>Dy,pins_digital_pin:()=>Ub,pins_exlcdh:()=>Oy,pins_exlcdv:()=>Ey,pins_imglist:()=>Ty,pins_input_pin:()=>wb,pins_interrupt:()=>ry,pins_one_more:()=>Ny,pins_output_pin:()=>kb,pins_playlist:()=>hy,pins_playlist_extern:()=>My,pins_pwm:()=>oy,pins_pwm_input:()=>Hb,pins_pwm_pin:()=>sy,pins_radio_datarate:()=>Ly,pins_radio_power:()=>Ay,pins_serial:()=>ly,pins_tone_notes:()=>Sy,pins_touch:()=>uy,pins_touch_pin:()=>ay,pins_tts_bgmusic:()=>Cy,pins_tts_builtin_music:()=>gy,pins_tts_voice:()=>cy,pwm_output:()=>qb,spi_A_pin:()=>Zb,spi_B_pin:()=>$b,spi_C_pin:()=>ty,spi_D_pin:()=>ey});const mt=Blockly,Ot=Mixly,Et={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Rt=Et; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(Ft),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},yt={init:function(){this.setColour(Ft),this.appendValueInput("LIST").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(mt.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Vt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Bt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Gt={init:function(){this.setColour(Ft);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Ut={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Vt.OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],Gt.OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},qt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},zt={init:function(){this.jsonInit({message0:mt.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Ft,tooltip:mt.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:mt.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Qt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_STAT),this.setOutput(!0)}},jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Zt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},$t={init:function(){this.appendDummyInput().appendField(mt.Msg.CONTROLS_REPEAT_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(mt.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new mt.FieldDropdown([[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Ft),this.setTooltip("do-while loop"),this.setHelpUrl("")}},te={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ee={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},ie={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ne={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_GET_UNIQUE_IDEN)}},se=230;mt.FieldTextInput.math_number_validator=function(t){return String(t)},mt.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const oe={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},_e={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},pe={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},ae={init:function(){this.setColour(se),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ue={init:function(){this.setColour(se),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},re={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new mt.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},le={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:mt.Msg.MATH_TRIG_TOOLTIP_SIN,COS:mt.Msg.MATH_TRIG_TOOLTIP_COS,TAN:mt.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:mt.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:mt.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:mt.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:mt.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},de={init:function(){var t=[[mt.Msg.MATH_BIN,"bin"],[mt.Msg.MATH_OCT,"oct"],[mt.Msg.MATH_HEX,"hex"]];this.setColour(se),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:mt.Msg.MATH_DEC_TOOLTIP_BIN,oct:mt.Msg.MATH_DEC_TOOLTIP_OCT,hex:mt.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},Ie={init:function(){var t=[[mt.Msg.LANG_MATH_TO_ROUND,"round"],[mt.Msg.LANG_MATH_TO_CEIL,"ceil"],[mt.Msg.LANG_MATH_TO_FLOOR,"floor"],[mt.Msg.MATH_ABS,"fabs"],[mt.Msg.MATH_SQRT,"sqrt"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:mt.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:mt.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:mt.Msg.MATH_SINGLE_TOOLTIP_SQ,round:mt.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:mt.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:mt.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Te={init:function(){var t=[[mt.Msg.MIXLY_MAX,"max"],[mt.Msg.MIXLY_MIN,"min"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:mt.Msg.MIXLY_TOOLTIP_MATH_MAX,min:mt.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},he={init:function(){var t=[[mt.Msg.MATH_TWO,"two"],[mt.Msg.MATH_EIGHT,"eight"],[mt.Msg.MATH_TEN,"ten"],[mt.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(se),this.appendDummyInput("").appendField(mt.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new mt.FieldDropdown(t),"OP").appendField(mt.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MATH_ZHW).appendField(new mt.FieldDropdown(t),"OP2").appendField(mt.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:mt.Msg.MATH_Before_two,eight:mt.Msg.MATH_Before_eight,ten:mt.Msg.MATH_Before_ten,sixteen:mt.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:mt.Msg.MATH_Behind_two,eight:mt.Msg.MATH_Behind_eight,ten:mt.Msg.MATH_Behind_ten,sixteen:mt.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Me={init:function(){var t=[[mt.Msg.LANG_MATH_INT,"int"],[mt.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(se),this.setOutput(!0,Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_RANDOM).appendField(new mt.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:mt.Msg.LANG_MATH_INT,float:mt.Msg.LANG_MATH_FLOAT_RANDOM};return mt.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},me={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_CONSTRAIN_TOOLTIP)}},Oe={init:function(){this.setColour(se),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(mt.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(mt.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Ee={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},Re={init:function(){this.setColour(se),this.appendValueInput("NUM").setCheck(Number).appendField(mt.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},ce={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MATH_ROUND).appendField(mt.Msg.TEXT_KEEP),this.appendDummyInput().appendField(mt.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_ROUND_NEW_TOOLTIP)}},ge={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"],[mt.Msg.MIXLY_TO_BITES,"b"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:mt.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ce={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:mt.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Se=Oe,Ae=160,Le={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}},Ne={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}};mt.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const De={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput("",mt.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(mt.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new mt.FieldImage(e,7,12,'"')}},fe={init:function(){this.setColour(Ae),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(mt.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},Fe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Pe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String).appendField(mt.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},ve={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ye={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Xe={init:function(){this.WHERE_OPTIONS=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.TEXT_GET_INDEX_RANDOM+1+mt.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.LISTS_GET_INDEX_GET,"MODE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(mt.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+mt.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",mt.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:mt.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:mt.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:mt.Msg.TEXT_GET_INDEX_RANDOM};return mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+mt.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==mt.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new mt.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},xe={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.LISTS_GET_INDEX_FROM_START+"n"+mt.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(mt.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(mt.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},ye={init:function(){this.WHERE_OPTIONS_1=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[mt.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==mt.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new mt.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ve={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(mt.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Be={init:function(){var t=[[mt.Msg.MIXLY_EQUALS,"==="],[mt.Msg.MIXLY_STARTSWITH,"startswith"],[mt.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new mt.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Ge={init:function(){this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_COMPARETO_HELP)}},Ue={init:function(){var t=[[mt.Msg.TEXT_UPPER,"upper"],[mt.Msg.TEXT_TITLE,"title"],[mt.Msg.TEXT_CAPITALIZE,"capitalize"],[mt.Msg.TEXT_SWAPCASE,"swapcase"],[mt.Msg.TEXT_LOWER,"lower"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:mt.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:mt.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:mt.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:mt.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:mt.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},we={init:function(){var t=[[mt.Msg.TEXT_LJUST,"ljust"],[mt.Msg.TEXT_CENTER,"center"],[mt.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(mt.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(mt.Msg.MIXLY_MID+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(mt.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},He={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},We={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(mt.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(mt.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(mt.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Je={init:function(){var t=[[mt.Msg.TEXT_TRIM_BOTH,"strip"],[mt.Msg.TEXT_TRIM_LEFT,"lstrip"],[mt.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ae),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(mt.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:mt.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:mt.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:mt.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},qe={init:function(){this.setColour(Ae),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new mt.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Hi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Wi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Ki={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_KEYS),this.setTooltip(mt.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_TOOLTIP)}},qi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},zi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Qi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_DELETE_TOOLTIP)}},ji={init:function(){this.setColour(wi),this.appendValueInput("DICT2").setCheck("Dict").appendField(mt.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(mt.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MID),this.setTooltip(mt.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_CLEAR),this.setTooltip(mt.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$i={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_ITEMS),this.setTooltip(mt.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},tn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_VALUES),this.setTooltip(mt.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},en={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LENGTH),this.setTooltip(mt.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},nn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_DELDICT),this.setTooltip(mt.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sn={init:function(){this.MODE=[[mt.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[mt.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(mt.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=mt.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=mt.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new mt.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},on={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setTooltip(mt.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},_n={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_SETDEFAULT_TOOLTIP)}},pn={init:function(){this.setColour(wi),this.appendDummyInput("").appendField(new mt.FieldLabel(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new mt.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},an={init:function(){this.setColour(wi),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},un={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TO_JSON),this.setTooltip(mt.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},rn={init:function(){this.setColour(wi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(mt.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ln=210,dn={init:function(){var t=mt.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:mt.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:mt.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},In={init:function(){var t=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new mt.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Tn={init:function(){var t=[[mt.Msg.LOGIC_OPERATION_AND,"AND"],[mt.Msg.LOGIC_OPERATION_OR,"OR"],[mt.Msg.LOGIC_OPERATION_NOR,"NOR"],[mt.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:mt.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:mt.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},hn={init:function(){this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(mt.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(mt.Msg.LOGIC_NEGATE_TOOLTIP)}},Mn={init:function(){var t=[[mt.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[mt.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new mt.FieldDropdown(t),"BOOL"),this.setTooltip(mt.Msg.LOGIC_BOOLEAN_TOOLTIP)}},mn={init:function(){this.setColour(ln),this.setOutput(!0),this.appendDummyInput().appendField(mt.Msg.LOGIC_NULL),this.setTooltip(mt.Msg.LOGIC_NULL_TOOLTIP)}},On={init:function(){this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(mt.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(mt.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},En={init:function(){var t=[[mt.Msg.TEXT_APPEND_TO,"in"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new mt.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(mt.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.IN)}},Rn={init:function(){var t=[[mt.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},cn={init:function(){this.setColour(ln),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},gn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(mt.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXPY_TEXT_ENCODE).appendField(new mt.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Ln={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MICROBIT_PYTHON_TYPE)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.HTML_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const Xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Bn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+mt.Msg.MIXLY_ESP32_SET+{mkdir:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(mt.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Un={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.HTML_FILE,"isfile"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},kn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(mt.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Hn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(mt.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Wn={};Wn.NAME_TYPE=mt.PROCEDURE_CATEGORY_NAME,Wn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Us={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_FORM_CONTENT).appendField(new mt.FieldDropdown([[mt.Msg.HTML_TEXT,"text"],[mt.Msg.HTML_EMAIL,"email"],[mt.Msg.HTML_NUMBER,"number"],[mt.Msg.HTML_PASSWORD,"password"],[mt.Msg.HTML_CHECKBOX,"checkbox"],[mt.Msg.HTML_RADIOBUTTON,"radiobutton"],[mt.Msg.HTML_BUTTON,"button"],[mt.Msg.HTML_COLOUR,"colour"],[mt.Msg.HTML_DATE,"date"],[mt.Msg.HTML_LOCALTIME,"local time"],[mt.Msg.HTML_FILE,"file"],[mt.Msg.HTML_HIDDEN,"hidden"],[mt.Msg.HTML_IMAGE,"image"],[mt.Msg.HTML_MONTH,"month"],[mt.Msg.HTML_RANGE,"range"],[mt.Msg.HTML_RESET,"reset"],[mt.Msg.HTML_SEARCH,"search"],[mt.Msg.HTML_SUBMIT,"submit"],[mt.Msg.HTML_TELEPHONENUMBER,"telephone number"],[mt.Msg.HTML_TIME,"time"],[mt.Msg.HTML_URL,"url"],[mt.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(mt.Msg.HTML_NAME).appendField(new mt.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(mt.Msg.HTML_VALUE).appendField(new mt.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_TEXT).appendField(new mt.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws=160,Ks={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new mt.FieldTable(""),"TEXT")}},Js={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT")}},qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},zs={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendTitle("Comment:").appendTitle(new mt.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},js={init:function(){this.setColour(Ws),this.appendValueInput("VALUE").appendField(mt.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Zs={init:function(){this.setColour(Ws),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(mt.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=mt.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},mt.isNumber(n)&&mt.isNumber(s)&&mt.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const bp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},yp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Vp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Bp=function(t,e){return["None",e.ORDER_ATOMIC]},Gp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Up=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},wp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},kp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Hp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Wp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Kp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Jp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},qp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},zp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Qp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},jp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},$p=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},ta=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},ea=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ia=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},na=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sa=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},oa=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},_a=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},pa=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},aa=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},ua=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},ra=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},la=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},da=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},Ia=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),mt.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},qa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},za=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},ja=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Za=function(t,e){return'"},$a=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},tu=function(){return this.getFieldValue("TEXT")+"\n"},eu=function(t){return t.getFieldValue("TEXT")+"\n"},iu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},nu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},su=function(){return""},ou=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},_u=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},au.scrubNakedValue=function(t){return t+"\n"},au.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},au.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},au.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=mt.utils.string.wrap(o,au.COMMENT_WRAP-3),n+=au.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const uu="#74A55B",ru={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},lu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},du={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Iu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Tu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},hu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ou={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},Eu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ru={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},cu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},gu={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField("360°"+mt.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Au={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Nu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Du={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new mt.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(mt.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[mt.Msg.MOTOR_N,"ms32006.MOT_N"],[mt.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Pu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new mt.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},vu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},Yu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},Xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+mt.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},yu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Bu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},Gu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Uu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_TRAFFIC_LIGHT).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[mt.Msg.MIXLY_SPEED,"[1]"],[mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[mt.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[mt.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[mt.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},er={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir="#6C9858",nr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},sr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"1"],[mt.Msg.MIXLY_ESP32_OFF,"0"],[mt.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},or={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},_r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LIGHT_OFF,"0"],[mt.Msg.MIXLY_LIGHT_RED,"1"],[mt.Msg.MIXLY_LIGHT_GREEN,"2"],[mt.Msg.MIXLY_LIGHT_BLUE,"3"],[mt.Msg.MIXLY_LIGHT_YELLOW,"4"],[mt.Msg.MIXLY_LIGHT_CYAN,"5"],[mt.Msg.MIXLY_LIGHT_PURPLE,"6"],[mt.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},rr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ir={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Tr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},hr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Or={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Er={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},Rr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},cr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},gr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Cr={init:function(){this.setColour(ir),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Sr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},Lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Nr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fr={init:function(){this.setColour(ir),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Fr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"1"],[mt.Msg.TEXT_TRIM_RIGHT,"2"],[mt.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"0"],[mt.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_RECORD_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},zr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},jr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},$r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},tl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.MIXLY_ALL+mt.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(mt.ALIGN_RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},el={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(mt.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(mt.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},il={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_SPECIAL_KEY1,"1"],[mt.Msg.MIXLY_SPECIAL_KEY2,"2"],[mt.Msg.MIXLY_SPECIAL_KEY1,"4"],[mt.Msg.MIXLY_SPECIAL_KEY8,"8"],[mt.Msg.MIXLY_SPECIAL_KEY16,"16"],[mt.Msg.MIXLY_SPECIAL_KEY32,"32"],[mt.Msg.MIXLY_SPECIAL_KEY64,"64"],[mt.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},nl={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},sl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(mt.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(mt.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(mt.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},ol={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[mt.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[mt.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},_l={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(mt.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(mt.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},pl="#90A244",al={init:function(){this.setColour(pl),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+mt.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ul={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_QR_CODE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},rl={init:function(){this.setColour(pl),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_QR_CODE+mt.Msg.MIXPY_OBJECT,"qrcode"],[mt.Msg.MIXLY_BAR_CODE+mt.Msg.MIXPY_OBJECT,"barcode"],[mt.Msg.MIXLY_TAG+mt.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},ll={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},dl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().appendField(mt.Msg.SOFT_RESET+mt.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},Il={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(mt.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},Tl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_BAR_CODE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},hl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},Ml={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TAG+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.OLED_STRING,"info1"],[mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},ml={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},Ol={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LINE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LINE_ANGLE,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},El={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},Rl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_CIRCLE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},cl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},gl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_RECT+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},Cl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Sl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["RGB"+mt.Msg.HTML_COLOUR,"[0]"],["LAB"+mt.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},Al={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Ll={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_COLOR_CHASE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_CIRCLE_AREA,"info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Nl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+mt.Msg.MIXLY_COLOR_LAB).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Dl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_OBJECT_LIST).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+mt.Msg.MIXLY_MODEL_NAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(mt.Msg.MIXLY_TRAIN_TIME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},fl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_OBJECT_LIST).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MODEL_NAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},Fl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LOCAL_CLASS+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},Pl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXPY_AI_AUDIO_TIME).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},vl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MP3_VOL).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_ANCHOR).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_MODEL_PATH).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(mt.Msg.MIXLY_AipNlp_Topic_Title).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},Xl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_YOLO_RECOGNIZE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"],[mt.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+mt.Msg.MIXLY_POSITION_XY,"xc"],[mt.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+mt.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},xl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(mt.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(mt.Msg.MIXLY_ESP32_THRESHOLD).setAlign(mt.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},bl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LICENSEPLATE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},yl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},Vl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_FACE+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Bl={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},Gl={init:function(){this.setColour(pl),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_20OBJECTS+mt.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([["ID","info1"],[mt.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[mt.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+mt.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+mt.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+mt.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+mt.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},Ul={init:function(){this.setColour(pl),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},wl={init:function(){this.setColour(205),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_AipSpeech_asr,"ASR"],[mt.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},kl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_AI_UNIT).appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(mt.Msg.OLED_STRING).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},Hl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_AipSpeech_asr).appendField(mt.Msg.MIXLY_Client).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(mt.Msg.MIXPY_AI_AUDIO_TIME).setAlign(mt.inputs.Align.RIGHT),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LANGUAGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[mt.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[mt.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},Wl="#2FAD7A",Kl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},ql={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},zl={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},Ql={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},Zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},$l={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},td={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},ed={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},id={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},nd={init:function(){this.jsonInit({message0:mt.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[mt.Msg.MIXLY_PYTHON_PERIODIC,"False"],[mt.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},sd={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},od={init:function(){this.jsonInit({inputsInline:!0,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(mt.CONTROLS_REPEAT_INPUT_DO)}},_d={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:Wl,helpUrl:mt.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:mt.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:mt.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},pd={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+" CC_G1"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},ad={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_BATTERY),this.setOutput(!0,Number),this.setInputsInline(!0)}},ud={init:function(){this.setColour(40),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_JOYSTICK).appendField(new mt.FieldDropdown([["x","[0]"],["y","[1]"],["(x,y)",""]]),"VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0)}},rd={init:function(){this.setColour(40),this.appendDummyInput().appendField(mt.Msg.MIXLY_BUTTON).appendField(new mt.FieldDropdown([["A","0"],["B","1"],["C","2"],["D","3"],["POWER","4"],["SELECT","5"]]),"VAR"),this.appendDummyInput("").appendField(mt.Msg.WHETHER_IS_PRESSED),this.setOutput(!0,Number),this.setInputsInline(!0)}},ld={init:function(){this.setColour(40),this.appendDummyInput("").appendField(mt.Msg.MIXLY_HANDLE_SHUTDOWN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dd=100,Id={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXGO_LEFT_FRONT+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[0]"],[mt.Msg.MIXGO_RIGHT_FRONT+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[1]"],[mt.Msg.MIXGO_LEFT_BACK+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[3]"],[mt.Msg.MIXGO_RIGHT_BACK+mt.Msg.COLOUR_RGB_GREEN+mt.Msg.MIXLY_EXTERN_LED,"GLED[2]"],[mt.Msg.MIXGO_LEFT_FRONT+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[0]"],[mt.Msg.MIXGO_RIGHT_FRONT+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[1]"],[mt.Msg.MIXGO_LEFT_BACK+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[3]"],[mt.Msg.MIXGO_RIGHT_BACK+mt.Msg.COLOUR_RGB_RED+mt.Msg.MIXLY_EXTERN_LED,"RLED[2]"],[mt.Msg.ME_GO_LIGHT_HEADLIGHT,"WLED"]]),"op"),this.setOutput(!0)}},Td={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},hd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Md={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField("ME GO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},md={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField("ME GO"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Od={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ed={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Rd={init:function(){this.setColour(dd),this.appendDummyInput().appendField("ME GO").appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"0"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"1"],[mt.Msg.ME_GO_MOTOR_EXTERN,"2"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.ROTATION_FORWARD,"CW"],[mt.Msg.ROTATION_BACKWARD,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_INTERRUPT).appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},gd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP),this.appendDummyInput("").appendField(new mt.FieldDropdown([["turns","turns"],["distance","distance"],["turns,distance","all"]]),"args"),this.appendValueInput("num").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.ME_GO_HALL_SENSOR),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"A"],[mt.Msg.TEXT_TRIM_RIGHT,"B"]]),"mode"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("").appendField(new mt.FieldDropdown([["turns","turns"],["distance","distance"],["speed","speed"]]),"args"),this.setOutput(!0),this.setInputsInline(!0)}},Sd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"[0]"],[mt.Msg.MIXGO_LEFT_MID,"[1]"],[mt.Msg.MIXGO_RIGHT_MID,"[2]"],[mt.Msg.TEXT_TRIM_RIGHT,"[3]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ESP32_NEAR}))}},Ad={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXGO_LEFT_FRONT,"[0]"],[mt.Msg.MIXGO_RIGHT_FRONT,"[1]"],[mt.Msg.MIXGO_LEFT_BACK,"[3]"],[mt.Msg.MIXGO_RIGHT_BACK,"[2]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ESP32_NEAR}))}},Ld={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ME_GO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[mt.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[mt.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"],[mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_ONLY,"LS"],[mt.Msg.ME_GO_SENSOR_MODE_OFF,"CL"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nd={init:function(){this.setColour(dd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.ME_GO_PITCH,"[0]"],[mt.Msg.ME_GO_ROLL,"[1]"],[mt.Msg.ME_GO_PITCH+", "+mt.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Dd={init:function(){this.setColour(dd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"[0]"],[mt.Msg.MIXGO_LEFT_MID,"[1]"],[mt.Msg.MIXGO_RIGHT_MID,"[2]"],[mt.Msg.TEXT_TRIM_RIGHT,"[3]"],[mt.Msg.MIXLY_ALL,""]]),"key").appendField(mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+mt.Msg.MIXLY_ME_GO_CAR_LIGHT_SEEKING_SENSOR}))}},fd=140,Fd={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},Pd={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},vd={init:function(){this.setColour(fd),this.appendValueInput("SUB").appendField("I2C "+mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_INIT)}},Yd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},Xd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},xd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_I2C_SCAN1+mt.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_SCAN)}},bd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},yd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_SET)}},Vd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_SET+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},Bd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READ)}},Gd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(mt.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.LANG_MATH_BYTE+" "+mt.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},Ud={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(mt.Msg.MIXLY_SERIAL_READ+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READINTO)}},wd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(mt.Msg.MIXLY_SERIAL_READ+mt.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},kd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_WRITE)}},Hd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(mt.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},Wd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},Kd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_READ+mt.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},Jd={init:function(){this.setColour(fd),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+mt.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_INIT)}},zd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_SCAN)}},Qd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_READ)}},jd={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_WRITE).appendField(new mt.FieldDropdown([[mt.Msg.LANG_MATH_STRING,"write"],[mt.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_WRITE)}},Zd={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_SELECT)}},$d={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_OW_RESET)}},tI={init:function(){this.setColour(fd),this.appendValueInput("PIN").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_INPUT1,"8"],[mt.Msg.MIXLY_IR_INPUT2,"16"],[mt.Msg.MIXLY_IR_INPUT3,"0"],[mt.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},eI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_CMD_CODE,"0"],[mt.Msg.MIXLY_IR_ADDR_CODE,"1"],[mt.Msg.MIXLY_IR_RAW_CODE,"2"],[mt.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},iI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN).appendField(new mt.FieldDropdown([[mt.Msg.MILY_PAUSE,"True"],[mt.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},sI={init:function(){this.setColour(fd),this.appendValueInput("time").appendField(mt.Msg.MIXlY_RECV_FUN).appendField(mt.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oI={init:function(){this.setColour(fd),this.appendValueInput("PIN").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_IR_SEND).appendField(mt.Msg.MIXLY_PIN),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_IR_SEND_samsung1,"False"],[mt.Msg.MIXLY_IR_SEND_samsung2,"True"],[mt.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(mt.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_I={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(mt.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(mt.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},pI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_IR_PULSE).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},aI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(mt.Msg.MIXLY_IR_RAW_CODE).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},uI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},rI={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField(mt.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catEthernet_init+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+mt.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},lI={init:function(){this.setColour(fd),this.appendValueInput("VAR").appendField(mt.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catEthernet_init+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+mt.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},dI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_ONEWIRE_SCAN+mt.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},II={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},TI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_TEXT_JOIN+mt.Msg.MSG.catBLE).appendField(new mt.FieldDropdown([[mt.Msg.HTML_NAME,"name"],[mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},hI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},MI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catBLE+mt.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(mt.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},mI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MSG.catBLE+mt.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},OI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},EI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},RI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(mt.Msg.CONTROLS_REPEAT_INPUT_DO+mt.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+mt.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(mt.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TX_POWER).appendField(new mt.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},gI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+mt.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(mt.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},CI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},SI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},AI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new mt.FieldDropdown([["("+mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+mt.Msg.OLED_STRING+")",""],[mt.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[mt.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},LI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},NI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},DI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},fI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MP_ESPNOW_RADIO+mt.Msg.MIXLY_TX_POWER).appendField(new mt.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},FI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},PI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},YI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},XI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},xI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},bI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new mt.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},yI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},VI={init:function(){this.setColour(fd),this.appendDummyInput().appendField(mt.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new mt.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},BI={init:function(){this.setColour(fd),this.appendValueInput("SUB").appendField("Lora"+mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(mt.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(mt.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(mt.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(mt.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new mt.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_LORA_INIT_TOOLTIP)}},GI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_PACKAGE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[mt.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},UI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wI={init:function(){this.setColour(fd),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},kI={init:function(){this.setColour(fd),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},HI={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(fd),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},WI={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(fd),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},KI=vd,JI=Yd,qI=Xd,zI=xd,QI=bd,jI=yd,ZI=Vd,$I=Bd,tT=Gd,eT=Ud,iT=wd,nT=kd,sT=Hd,oT=Wd,_T=Kd,pT=120;({init:function(){this.setColour(pT),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}}).OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(pT);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const aT="5BA5A5",uT={init:function(){this.setColour(aT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},rT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},lT={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},dT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},TT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},MT={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},mT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},OT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},ET={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},RT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},cT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},gT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new mt.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},CT={init:function(){var t=[[mt.Msg.MICROBIT_DISPLAY_UNION,"add"],[mt.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(mt.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":mt.Msg.MIXLY_MICROBIT_image_add,"-":mt.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},ST={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(aT),this.appendValueInput("A").setCheck("esp32_image").appendField(mt.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},AT={init:function(){this.setColour(aT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},LT={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.OLEDDISPLAY+mt.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(aT),this.setTooltip(mt.Msg.MIXLY_DF_LCD+mt.Msg.OLEDDISPLAY+mt.Msg.MIXLY_MICROBIT_TYPE_STRING)}},NT={init:function(){var t=[[mt.Msg.MIXLY_HEIGHT,"height"],[mt.Msg.MIXLY_WIDTH,"width"]];this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_MICROBIT_IMAGE+{height:mt.Msg.MIXLY_HEIGHT,width:mt.Msg.MIXLY_WIDTH}[t]}))}},DT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RECT).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_OLED_RECT)}},fT={init:function(){this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_DISPLAY_DRAW).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_DISPLAY_RLINE,"hline"],[mt.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE)}},FT={init:function(){this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE_ARBIT)}},PT={init:function(){this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(mt.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},vT={init:function(){this.setColour(aT),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},YT={init:function(){this.setColour(aT),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B)}},XT={init:function(){this.setColour(aT),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"ON"],[mt.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},xT={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:mt.Msg.MIXLY_LCD_STAT_CLEAR,1:mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return mt.Msg.MIXLY_DF_LCD+i[e]}))}},bT={init:function(){this.setColour(aT),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new mt.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},yT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},VT={init:function(){var t=[[mt.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[mt.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_DISPLAY_DRAW+mt.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new mt.FieldDropdown(t),"OP"),this.jsonInit({message0:mt.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_DISPLAY_DRAW+mt.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},BT={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(mt.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},GT={init:function(){this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(mt.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(mt.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(mt.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(mt.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.OLED_SHOW_BMP_TOOLTIP)}},UT={init:function(){this.setColour(aT),this.appendValueInput("VAR").appendField(mt.Msg.OLED),this.appendDummyInput("").appendField(mt.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(mt.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(mt.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.OLED_DRAW_PIXE_TOOLTIP)}},wT={init:function(){this.setColour(aT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[e]}))}},kT={init:function(){this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ON,"on"],[mt.Msg.MIXLY_OFF,"off"],[mt.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},HT={init:function(){this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},WT={init:function(){this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+mt.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},KT={init:function(){this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_4DIGITDISPLAY).appendField(new mt.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},JT={init:function(){this.setColour(aT),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+mt.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(mt.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.blockpy_turtle_rotate).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_NO,"0"],[mt.Msg.ANTI_CLOCKWISE+"90°","1"],[mt.Msg.ANTI_CLOCKWISE+"180°","2"],[mt.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},qT={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},zT={init:function(){this.setColour(aT);let t=new mt.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(t,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},QT={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},jT={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},ZT={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$T={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catTFT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:mt.Msg.MIXLY_LCD_STAT_CLEAR,1:mt.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return mt.Msg.MIXLY_DF_LCD+i[e]}))}},th={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:mt.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_OLED_LINE_ARBIT)}},eh={init:function(){this.setColour(aT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(mt.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},ih={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.array2_rows),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},nh={init:function(){this.setColour(aT),this.appendValueInput("SUB").appendField(mt.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_SERIAL_PRINT+mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catLCD),this.appendDummyInput().appendField(mt.Msg.TFT_Brightness).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={1:mt.Msg.MIXLY_MICROBIT_Turn_on_display,0:mt.Msg.MIXLY_MICROBIT_Turn_off_display};return mt.Msg.MSG.catLCD+mt.Msg.TFT_Brightness+i[e]}))}},oh={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catLCD),this.setColour(aT),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},_h={init:function(){this.setColour(aT),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(mt.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return mt.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},ph={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},ah={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},uh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},rh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},lh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},Ih={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Th={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hh={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},Mh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},mh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Oh={init:function(){this.setColour(aT),this.appendValueInput("SUB").setCheck("var").appendField(mt.Msg.MSG.catOLED),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},Eh={init:function(){this.jsonInit({colour:aT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},Rh={init:function(){this.jsonInit({colour:aT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},ch={init:function(){this.jsonInit({colour:aT,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[mt.Msg.mpython_display_hline_1,"1"],[mt.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},gh="#569A98",Ch={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==Ot.Boards.getSelectedBoardKey()&&this.setTooltip(mt.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},Sh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ah={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Lh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Dh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<32;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},Fh={init:function(){this.jsonInit({colour:gh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:mt.Msg.MIXLY_MICROBIT_Built_in_image1,message0:mt.Msg.MIXLY_MICROBIT_Built_in_image})}},Ph={init:function(){this.jsonInit({colour:gh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:mt.Msg.MIXLY_MICROBIT_Built_in_image1,message0:mt.Msg.MIXLY_MICROBIT_Built_in_image})}},vh={init:function(){var t=[[mt.Msg.MICROBIT_DISPLAY_UNION,"add"],[mt.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(gh),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(mt.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":mt.Msg.MIXLY_MICROBIT_image_add,"-":mt.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},Yh={init:function(){this.setColour(gh),this.appendValueInput("A").setCheck("esp32_image").appendField(mt.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},Xh={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(gh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:mt.Msg.MIXLY_UP,shift_down:mt.Msg.MIXLY_DOWN,shift_left:mt.Msg.MIXLY_LEFT,shift_right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},xh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},bh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},yh={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Vh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},Bh={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},Gh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<8;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},Uh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},wh={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<16;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0,"esp32_image"),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},kh={init:function(){var t=[["4x5"+mt.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+mt.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+mt.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.OLED_SET_FONT).appendField(new mt.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hh={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Wh={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Kh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(mt.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},Jh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},qh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},zh={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qh={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},jh={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},Zh={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[mt.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},$h={init:function(){this.jsonInit({colour:gh,args0:[{name:"state",options:[[mt.Msg.mpython_display_hline_1,"1"],[mt.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},tM={init:function(){this.jsonInit({colour:gh,args0:[{type:"field_label",name:"size_image",text:mt.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},eM={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<5;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},iM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},nM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},sM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},oM={init:function(){var t=[[mt.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[mt.Msg.CLOCKWISE+"90"+mt.Msg.blockpy_setheading_degree,"1"],[mt.Msg.CLOCKWISE+"180"+mt.Msg.blockpy_setheading_degree,"2"],[mt.Msg.CLOCKWISE+"270"+mt.Msg.blockpy_setheading_degree,"3"]];this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new mt.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_M={init:function(){this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new mt.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(gh),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Create_image1)}},pM={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},aM={init:function(){this.setColour(gh),this.appendValueInput("data").appendField(mt.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.OLED_BITMAP_OR_STRING)}},uM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(mt.Msg.TEXT_CENTER).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},rM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},lM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(mt.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},dM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IM={init:function(){this.setColour(gh),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},TM={init:function(){this.jsonInit({colour:gh,args0:[{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:mt.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},hM={init:function(){this.jsonInit({colour:gh,args0:[{name:"dir_h_v",options:[[mt.Msg.mpython_vertical,"0"],[mt.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:mt.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},MM={init:function(){this.jsonInit({colour:gh,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,tooltip:mt.Msg.mpython_display_line_TOOLTIP,message0:mt.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},mM={init:function(){var t=[[mt.Msg.MIXLY_UP,"shift_up"],[mt.Msg.MIXLY_DOWN,"shift_down"],[mt.Msg.MIXLY_LEFT,"shift_left"],[mt.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(gh),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_LET2).appendField(new mt.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(mt.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=mt.Msg.DISPLAY_IMAGE_LET,n=mt.Msg.DISPLAY_IMAGE_LET2,s=mt.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT}[t]+s}))}},OM={init:function(){this.setColour(gh),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(mt.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},EM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},RM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Clear_display)}},cM={init:function(){this.setColour(gh),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},gM={init:function(){this.setColour(gh),this.appendValueInput("x").setCheck(Number).appendField(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},CM={init:function(){this.setColour(gh),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},SM={init:function(){this.setColour(gh),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(mt.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(mt.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},AM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},LM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(mt.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(mt.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(mt.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},NM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DM={init:function(){this.setColour(gh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fM={init:function(){this.jsonInit({colour:gh,args0:[{name:"shape",options:[[mt.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[mt.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:mt.Msg.mpython_HELPURL,message0:mt.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},FM="#777777",PM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField("from ").appendField(new mt.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new mt.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField("import ").appendField(new mt.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},YM={init:function(){this.setColour(FM),this.appendDummyInput("").appendField(new mt.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;ee?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Rm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},cm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},gm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Cm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(mt.Msg.MIXLY_WIFI_USERNAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.MIXLY_IOT_PASSWORD).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_PROJECT).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Sm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(mt.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Am={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_SUBSCRIBE+mt.Msg.MIXLY_MICROBIT_MSG).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},Lm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Dm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},Fm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},Pm={init:function(){this.setColour(Im),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},vm={init:function(){this.setColour(Im),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},Ym={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},Xm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(mt.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},xm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+mt.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bm={init:function(){this.setColour(Im),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ym={init:function(){this.VISITOR_ID=Ot.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Im),this.appendDummyInput("").appendField(new mt.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Vm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},Bm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(mt.Msg.MIXLY_REQUESTS_GET).appendField(mt.Msg.MIXLY_GET_CURRENT_TIME).appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Um={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(mt.Msg.MIXLY_INIT_SUBSCRIBE).appendField(mt.Msg.MQTT_Topic).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},wm={init:function(){this.setColour(Im),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},km=Tm,Hm=hm,Wm=Mm,Km=mm,Jm=Em,qm=225,zm={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(mt.Msg.MIXLY_NETWORK_MODE).appendField(new mt.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},Qm={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[mt.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=mt.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:mt.Msg.MIXLY_NETWORK_WIFI_OPEN,False:mt.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},jm={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Zm={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:mt.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},$m={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},tO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_CONNECT+mt.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},eO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},iO={init:function(){this.setColour(qm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},nO={init:function(){this.setColour(qm),this.appendValueInput("url").appendField(mt.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},sO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},oO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[mt.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:mt.Msg.MIXLY_ESP32_NETWORK_IP,1:mt.Msg.MIXLY_ESP32_NETWORK_MASK,2:mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},_O={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},pO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},aO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(mt.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},uO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},rO={init:function(){this.setColour(qm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},lO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},dO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},IO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},TO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},hO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},MO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},mO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},OO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},EO={init:function(){this.setColour(qm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},RO={init:function(){this.setColour(qm),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},cO={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(qm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},gO={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(qm),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:mt.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:mt.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},CO={init:function(){this.setColour(qm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(mt.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},SO={init:function(){this.setColour(qm),this.appendDummyInput("").appendField(new mt.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},AO=100,LO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(e),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},NO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},DO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(mt.Msg.MOTOR_DC).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(mt.Msg.MOTOR_DC).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},FO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},PO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},vO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+mt.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},YO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(AO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},XO="#A58C5B",xO={init:function(){this.setColour(XO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_IS_PRESSED)}},bO={init:function(){this.setColour(XO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_WAS_PRESSED)}},yO={init:function(){this.setColour(XO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_BUTTON+mt.Msg.MIXLY_GET_PRESSES)}},VO={init:function(){this.setColour(XO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},BO={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"],[mt.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down,freefall:mt.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},GO={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},UO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},wO={init:function(){var t=[[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(XO),this.appendValueInput("PIN",Number).appendField(new mt.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},kO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},HO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},WO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"left"],[mt.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(mt.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=mt.Msg.MIXLY_ESP32_NEAR;return i+{left:mt.Msg.TEXT_TRIM_LEFT,right:mt.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},KO={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[mt.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},JO={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[mt.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},qO={init:function(){this.setColour(XO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},zO={init:function(){this.setColour(XO),this.appendDummyInput("").appendField("LM35"+mt.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LM35)}},QO={init:function(){this.setColour(XO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},jO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[mt.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[mt.Msg.MIXLY_ESP32_MAX30102_IR+","+mt.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[mt.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[mt.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},$O={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},tE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET+mt.Msg.HTML_COLOUR,"[2]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_IR_STRENGTH,"[1]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},eE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_ENV_LIGHT,"E"],[mt.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},iE={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},nE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},sE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},oE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},_E={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MIXGOPE_FIELD+mt.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[mt.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},pE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},aE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},uE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET+mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},rE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},lE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},dE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_GETTEMPERATUE)}},IE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},TE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},hE={init:function(){this.setColour(XO),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},ME={init:function(){this.setColour(XO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[mt.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},mE={init:function(){this.setColour(XO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},OE={init:function(){this.setColour(XO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},EE={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},RE={init:function(){this.setColour(XO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},cE={init:function(){this.setColour(XO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},gE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},CE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},SE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},AE={init:function(){this.setColour(XO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},pN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},aN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},uN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},rN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},lN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},dN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},IN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},TN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},hN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},MN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},mN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},ON=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},EN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},RN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},cN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},gN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},CN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},SN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},AN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},LN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},NN=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},DN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},fN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},FN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},PN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},vN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},YN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},XN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},xN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},bN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},yN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},VN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},BN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},GN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},UN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},wN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},kN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},HN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},WN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},KN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},JN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},qN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},zN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},QN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},jN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},ZN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},$N=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Ot.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},tD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},eD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},iD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},nD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},sD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},oD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},_D=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},pD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},aD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},uD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},rD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},lD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},dD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},ID=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},TD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},hD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},MD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},mD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},OD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},ED=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},RD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},cD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},gD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},CD=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},ef=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},nf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},sf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},of=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},_f=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},pf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},af=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},uf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},lf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},df=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},If=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},Tf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},hf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},Mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},Of=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},Ef=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},Rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},cf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},gf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},Cf=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},Sf=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},Af=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},AX=function(){return"control.reset()\n"},LX=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},NX=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},DX=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},fX=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},FX=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},PX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},vX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},YX=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},XX=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},xX=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},bX=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},yX=function(){return"while True:\n pass\n"},VX=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},BX=function(t,e){return e.definitions_.import_os="import os","os.uname()"},GX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},UX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},wX=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},kX=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},HX=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},WX=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},KX=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},JX=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},qX=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},zX=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},QX=WX,jX=kX,ZX=HX,$X=GX,tx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ex=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ix=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},nx={};nx["MixGo CE"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Ot.Profile.generate(["0-18","21-46"]),input_pin:Ot.Profile.generate(["0-18","21-46"]),output_pin:Ot.Profile.generate(["0-18","21-45"]),pwm_input:Ot.Profile.generate(["0-18","21-46"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-18","21-46"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-18","21-45"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-18","21-45"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-18","21-45"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-18","21-45"]),pwm:Ot.Profile.generate(["0-18","21-45"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["1-18"]),analog:Ot.Profile.generate(["1-18"],"adc","adc"),dac_pin:Ot.Profile.generate(["17-18"]),dac:Ot.Profile.generate(["17-18"],"dac","dac"),touch:Ot.Profile.generate(["1-14"],"tc","tc"),touch_pin:Ot.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-15"]),exlcdv:Ot.Profile.generate(["0-7"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},nx["ESP32S2 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-42","45"]),input_pin:Ot.Profile.generate(["0-42","45-46"]),output_pin:Ot.Profile.generate(["0-42","45"]),pwm_input:Ot.Profile.generate(["0-42","45-46"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-18","21-46"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-42","45"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-42","45"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-42","45"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-42","45"]),pwm:Ot.Profile.generate(["0-42","45"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["1-20"]),analog:Ot.Profile.generate(["1-20"],"adc","adc"),dac_pin:Ot.Profile.generate(["17-18"]),dac:Ot.Profile.generate(["17-18"],"dac","dac"),touch:Ot.Profile.generate(["1-14"],"tc","tc"),touch_pin:Ot.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-15"]),exlcdv:Ot.Profile.generate(["0-7"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const sx=nx,ox=20,_x={init:function(){this.setColour(ox),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_HIGH,"HIGH"],[mt.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},px={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},ax={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},ux={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},rx={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},lx={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_mSecond,"period"],[mt.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},dx={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_FREQUENCY+mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},Ix={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},Tx={init:function(){this.setColour(ox),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_REF_VOLTAGE+mt.Msg.MIXLY_STAT).appendField(new mt.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},hx={init:function(){this.setColour(ox),this.appendValueInput("pin").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},Mx={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},mx={init:function(){this.setColour(20),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_AS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[mt.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[mt.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[mt.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Ox={init:function(){this.setColour(ox),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pwm#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Ex={init:function(){this.setColour(ox),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("dac#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Rx={init:function(){this.setColour(ox),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("adc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},cx={init:function(){this.setColour(ox),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("tc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},gx=mx,Cx=dx,Sx=cx,Ax=hx,Lx=Mx,Nx=230,Dx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital),"PIN"),this.setOutput(!0)}},fx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},Fx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},Px={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},vx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},Yx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},Xx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},xx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},bx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},yx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},Vx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},Bx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},Gx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},Ux={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},wx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},kx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},Hx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog),"PIN"),this.setOutput(!0)}},Wx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},Kx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac),"PIN"),this.setOutput(!0)}},Jx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},qx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},zx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},Qx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm),"PIN"),this.setOutput(!0)}},jx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},Zx={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},$x={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch),"PIN"),this.setOutput(!0)}},tb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},eb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},ib={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},nb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.imglist),"PIN"),this.setOutput(!0)}},sb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist),"PIN"),this.setOutput(!0)}},ob={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},_b={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},pb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},ab={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},ub={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},rb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},lb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},db={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},Ib={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},Tb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},hb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Mb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.one_more),"PIN"),this.setOutput(!0)}},mb={init:function(){this.setColour(Nx),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},Ob=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},Eb=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},Rb=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},cb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},gb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Cb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},Sb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Ab=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Lb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Nb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},Db=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},fb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},Fb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},Pb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},vb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},Yb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},Xb=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},xb=Xb,bb=Xb,yb=Xb,Vb=Xb,Bb=Xb,Gb=Xb,Ub=Xb,wb=Xb,kb=Xb,Hb=Xb,Wb=Xb,Kb=Xb,Jb=Xb,qb=Xb,zb=Xb,Qb=Xb,jb=Xb,Zb=Xb,$b=Xb,ty=Xb,ey=Xb,iy=Xb,ny=Xb,sy=Xb,oy=Xb,_y=Xb,py=Xb,ay=Xb,uy=Xb,ry=Xb,ly=Xb,dy=Xb,Iy=Xb,Ty=Xb,hy=Xb,My=Xb,my=Xb,Oy=Xb,Ey=Xb,Ry=Xb,cy=Xb,gy=Xb,Cy=Xb,Sy=Xb;Object.assign(mt.Variables,Rt),Object.assign(mt.Procedures,Kn),mt.Python=au,mt.generator=au,Ot.Profile.default={},Object.assign(Ot.Profile,sx),Object.assign(Ot.Profile.default,sx["MixGo CE"]),Object.assign(mt.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,V,W,H,X,B,K,f,k,w,U,G,F,D,N,b,x,y,P,v,Y,It,Tt),Object.assign(mt.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,st,lt,rt,tt,ot,dt,z,ut,at,pt,_t,Q,q,J,it,et,nt,j,Z,$,ht,Mt)})(); \ No newline at end of file +class ct{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(mt.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},bt={init:function(){this.setColour(Ft),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},yt={init:function(){this.setColour(Ft),this.appendValueInput("LIST").setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(mt.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Vt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new mt.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(mt.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:mt.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Bt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(mt.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Gt={init:function(){this.setColour(Ft);var t=new mt.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:mt.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Ut={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new mt.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return mt.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Vt.OPERATORS=[[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],Gt.OPERATORS=[[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[mt.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Wt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(mt.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Kt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},qt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(mt.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},zt={init:function(){this.jsonInit({message0:mt.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Ft,tooltip:mt.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:mt.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Qt={init:function(){this.setColour(Ft),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_STAT),this.setOutput(!0)}},jt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Zt={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},$t={init:function(){this.appendDummyInput().appendField(mt.Msg.CONTROLS_REPEAT_TITLE_REPEAT+mt.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(mt.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new mt.FieldDropdown([[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[mt.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Ft),this.setTooltip("do-while loop"),this.setHelpUrl("")}},te={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ee={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},ie={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ne={init:function(){this.setColour(Ft),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_GET_UNIQUE_IDEN)}},se=230;mt.FieldTextInput.math_number_validator=function(t){return String(t)},mt.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const oe={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},_e={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},pe={init:function(){this.setColour(se);this.appendDummyInput("").appendField(mt.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new mt.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:mt.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},ae={init:function(){this.setColour(se),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ue={init:function(){this.setColour(se),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:mt.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:mt.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:mt.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:mt.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:mt.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},re={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new mt.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},le={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:mt.Msg.MATH_TRIG_TOOLTIP_SIN,COS:mt.Msg.MATH_TRIG_TOOLTIP_COS,TAN:mt.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:mt.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:mt.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:mt.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:mt.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},de={init:function(){var t=[[mt.Msg.MATH_BIN,"bin"],[mt.Msg.MATH_OCT,"oct"],[mt.Msg.MATH_HEX,"hex"]];this.setColour(se),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:mt.Msg.MATH_DEC_TOOLTIP_BIN,oct:mt.Msg.MATH_DEC_TOOLTIP_OCT,hex:mt.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},Ie={init:function(){var t=[[mt.Msg.LANG_MATH_TO_ROUND,"round"],[mt.Msg.LANG_MATH_TO_CEIL,"ceil"],[mt.Msg.LANG_MATH_TO_FLOOR,"floor"],[mt.Msg.MATH_ABS,"fabs"],[mt.Msg.MATH_SQRT,"sqrt"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).appendField(new mt.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:mt.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:mt.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:mt.Msg.MATH_SINGLE_TOOLTIP_SQ,round:mt.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:mt.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:mt.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Te={init:function(){var t=[[mt.Msg.MIXLY_MAX,"max"],[mt.Msg.MIXLY_MIN,"min"]];this.setColour(se),this.appendValueInput("A").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(mt.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:mt.Msg.MIXLY_TOOLTIP_MATH_MAX,min:mt.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},he={init:function(){var t=[[mt.Msg.MATH_TWO,"two"],[mt.Msg.MATH_EIGHT,"eight"],[mt.Msg.MATH_TEN,"ten"],[mt.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(se),this.appendDummyInput("").appendField(mt.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new mt.FieldDropdown(t),"OP").appendField(mt.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MATH_ZHW).appendField(new mt.FieldDropdown(t),"OP2").appendField(mt.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:mt.Msg.MATH_Before_two,eight:mt.Msg.MATH_Before_eight,ten:mt.Msg.MATH_Before_ten,sixteen:mt.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:mt.Msg.MATH_Behind_two,eight:mt.Msg.MATH_Behind_eight,ten:mt.Msg.MATH_Behind_ten,sixteen:mt.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Me={init:function(){var t=[[mt.Msg.LANG_MATH_INT,"int"],[mt.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(se),this.setOutput(!0,Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_RANDOM).appendField(new mt.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(mt.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:mt.Msg.LANG_MATH_INT,float:mt.Msg.LANG_MATH_FLOAT_RANDOM};return mt.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},me={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(mt.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_CONSTRAIN_TOOLTIP)}},Oe={init:function(){this.setColour(se),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(mt.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(mt.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_MAP)}},Ee={init:function(){this.setColour(se),this.appendDummyInput().appendField(new mt.FieldTextInput("0",mt.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(mt.Msg.MATH_NUMBER_TOOLTIP)}},Re={init:function(){this.setColour(se),this.appendValueInput("NUM").setCheck(Number).appendField(mt.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},ce={init:function(){this.setColour(se),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MATH_ROUND).appendField(mt.Msg.TEXT_KEEP),this.appendDummyInput().appendField(mt.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(mt.Msg.MATH_ROUND_NEW_TOOLTIP)}},ge={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"],[mt.Msg.MIXLY_TO_BITES,"b"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:mt.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:mt.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},Ce={init:function(){var t=[[mt.Msg.MIXLY_TO_INT,"int"],[mt.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(se),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:mt.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:mt.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Se=Oe,Ae=160,Le={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}},Ne={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(mt.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new mt.FieldImage(e,12,12,'"')}};mt.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const De={init:function(){this.setColour(Ae),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new mt.FieldTextInput("",mt.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(mt.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new mt.FieldImage(e,7,12,'"')}},fe={init:function(){this.setColour(Ae),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(mt.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},Fe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Pe={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String).appendField(mt.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},ve={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ye={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Xe={init:function(){this.WHERE_OPTIONS=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.TEXT_GET_INDEX_RANDOM+1+mt.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.LISTS_GET_INDEX_GET,"MODE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(mt.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=mt.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+mt.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",mt.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:mt.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:mt.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:mt.Msg.TEXT_GET_INDEX_RANDOM};return mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+mt.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==mt.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new mt.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),mt.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},xe={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.LISTS_GET_INDEX_FROM_START+"n"+mt.Msg.TEXT_CHARAT2)}},be={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(mt.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(mt.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},ye={init:function(){this.WHERE_OPTIONS_1=[[mt.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[mt.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[mt.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[mt.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==mt.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),mt.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(mt.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new mt.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Ve={init:function(){this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(mt.Msg.LISTS_GET_INDEX_GET+" "+mt.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(mt.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(mt.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(mt.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Be={init:function(){var t=[[mt.Msg.MIXLY_EQUALS,"==="],[mt.Msg.MIXLY_STARTSWITH,"startswith"],[mt.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new mt.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Ge={init:function(){this.setColour(Ae),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_COMPARETO_HELP)}},Ue={init:function(){var t=[[mt.Msg.TEXT_UPPER,"upper"],[mt.Msg.TEXT_TITLE,"title"],[mt.Msg.TEXT_CAPITALIZE,"capitalize"],[mt.Msg.TEXT_SWAPCASE,"swapcase"],[mt.Msg.TEXT_LOWER,"lower"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:mt.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:mt.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:mt.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:mt.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:mt.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},we={init:function(){var t=[[mt.Msg.TEXT_LJUST,"ljust"],[mt.Msg.TEXT_CENTER,"center"],[mt.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ae),this.appendValueInput("VAR").appendField(new mt.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(mt.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(mt.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(mt.Msg.MIXLY_MID+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(mt.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},He={init:function(){this.setColour(Ae),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},We={init:function(){this.setColour(Ae),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(mt.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(mt.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ke={init:function(){this.setColour(Ae),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(mt.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(mt.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Je={init:function(){var t=[[mt.Msg.TEXT_TRIM_BOTH,"strip"],[mt.Msg.TEXT_TRIM_LEFT,"lstrip"],[mt.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ae),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(mt.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:mt.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:mt.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:mt.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},qe={init:function(){this.setColour(Ae),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new mt.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Hi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Wi={init:function(){this.setColour(wi),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Ki={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_KEYS),this.setTooltip(mt.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_TOOLTIP)}},qi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(mt.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},zi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(mt.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Qi={init:function(){this.setColour(wi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(mt.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_DELETE_TOOLTIP)}},ji={init:function(){this.setColour(wi),this.appendValueInput("DICT2").setCheck("Dict").appendField(mt.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(mt.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MID),this.setTooltip(mt.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zi={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_CLEAR),this.setTooltip(mt.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$i={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_ITEMS),this.setTooltip(mt.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},tn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_VALUES),this.setTooltip(mt.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},en={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LENGTH),this.setTooltip(mt.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},nn={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.DICT_DELDICT),this.setTooltip(mt.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sn={init:function(){this.MODE=[[mt.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[mt.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(mt.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(mt.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=mt.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=mt.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==mt.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new mt.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},on={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(mt.Msg.DICTS_ADD_VALUE),this.setTooltip(mt.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},_n={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(mt.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(mt.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_SETDEFAULT_TOOLTIP)}},pn={init:function(){this.setColour(wi),this.appendDummyInput("").appendField(new mt.FieldLabel(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new mt.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},an={init:function(){this.setColour(wi),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},un={init:function(){this.setColour(wi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TO_JSON),this.setTooltip(mt.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},rn={init:function(){this.setColour(wi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(mt.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},ln=210,dn={init:function(){var t=mt.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:mt.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:mt.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:mt.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:mt.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},In={init:function(){var t=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=mt.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new mt.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Tn={init:function(){var t=[[mt.Msg.LOGIC_OPERATION_AND,"AND"],[mt.Msg.LOGIC_OPERATION_OR,"OR"],[mt.Msg.LOGIC_OPERATION_NOR,"NOR"],[mt.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new mt.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:mt.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:mt.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:mt.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},hn={init:function(){this.setColour(ln),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(mt.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(mt.Msg.LOGIC_NEGATE_TOOLTIP)}},Mn={init:function(){var t=[[mt.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[mt.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(ln),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new mt.FieldDropdown(t),"BOOL"),this.setTooltip(mt.Msg.LOGIC_BOOLEAN_TOOLTIP)}},mn={init:function(){this.setColour(ln),this.setOutput(!0),this.appendDummyInput().appendField(mt.Msg.LOGIC_NULL),this.setTooltip(mt.Msg.LOGIC_NULL_TOOLTIP)}},On={init:function(){this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(mt.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(mt.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},En={init:function(){var t=[[mt.Msg.TEXT_APPEND_TO,"in"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new mt.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(mt.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.IN)}},Rn={init:function(){var t=[[mt.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[mt.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(ln),this.appendValueInput("A"),this.appendValueInput("B").appendField(new mt.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},cn={init:function(){this.setColour(ln),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},gn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(mt.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},An={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXPY_TEXT_ENCODE).appendField(new mt.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_USE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=mt.Msg.MIXLY_BELONG,_=mt.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Ln={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+mt.Msg.MIXLY_MICROBIT_TYPE_STRING+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MICROBIT_PYTHON_TYPE)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.HTML_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Yn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const Xn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Bn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+mt.Msg.MIXLY_ESP32_SET+{mkdir:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(mt.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Un={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},wn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.HTML_FILE,"isfile"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+mt.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},kn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(mt.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Hn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(mt.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Wn={};Wn.NAME_TYPE=mt.PROCEDURE_CATEGORY_NAME,Wn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Us={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_FORM_CONTENT).appendField(new mt.FieldDropdown([[mt.Msg.HTML_TEXT,"text"],[mt.Msg.HTML_EMAIL,"email"],[mt.Msg.HTML_NUMBER,"number"],[mt.Msg.HTML_PASSWORD,"password"],[mt.Msg.HTML_CHECKBOX,"checkbox"],[mt.Msg.HTML_RADIOBUTTON,"radiobutton"],[mt.Msg.HTML_BUTTON,"button"],[mt.Msg.HTML_COLOUR,"colour"],[mt.Msg.HTML_DATE,"date"],[mt.Msg.HTML_LOCALTIME,"local time"],[mt.Msg.HTML_FILE,"file"],[mt.Msg.HTML_HIDDEN,"hidden"],[mt.Msg.HTML_IMAGE,"image"],[mt.Msg.HTML_MONTH,"month"],[mt.Msg.HTML_RANGE,"range"],[mt.Msg.HTML_RESET,"reset"],[mt.Msg.HTML_SEARCH,"search"],[mt.Msg.HTML_SUBMIT,"submit"],[mt.Msg.HTML_TELEPHONENUMBER,"telephone number"],[mt.Msg.HTML_TIME,"time"],[mt.Msg.HTML_URL,"url"],[mt.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(mt.Msg.HTML_NAME).appendField(new mt.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(mt.Msg.HTML_VALUE).appendField(new mt.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(mt.Msg.MIXLY_AIP_ATTR).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(new mt.FieldTextInput("property"),"KEY").appendField(":").appendField(new mt.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hs={init:function(){this.setColour(Xs),this.appendDummyInput().appendField(mt.Msg.HTML_TEXT).appendField(new mt.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ws=160,Ks={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new mt.FieldTable(""),"TEXT")}},Js={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT")}},qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new mt.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},zs={init:function(){this.setColour(Ws),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Qs={init:function(){this.setColour(Ws),this.appendDummyInput().appendTitle("Comment:").appendTitle(new mt.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},js={init:function(){this.setColour(Ws),this.appendValueInput("VALUE").appendField(mt.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Zs={init:function(){this.setColour(Ws),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new mt.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(mt.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=mt.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},mt.isNumber(n)&&mt.isNumber(s)&&mt.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const bp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},yp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Vp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Bp=function(t,e){return["None",e.ORDER_ATOMIC]},Gp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Up=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},wp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},kp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Hp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Wp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Kp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Jp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},qp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},zp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Qp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},jp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},$p=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},ta=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},ea=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ia=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},na=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sa=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},oa=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},_a=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},pa=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},aa=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},ua=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},ra=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},la=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},da=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},Ia=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),mt.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},qa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},za=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},ja=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Za=function(t,e){return'"},$a=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},tu=function(){return this.getFieldValue("TEXT")+"\n"},eu=function(t){return t.getFieldValue("TEXT")+"\n"},iu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},nu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},su=function(){return""},ou=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},_u=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},au.scrubNakedValue=function(t){return t+"\n"},au.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},au.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},au.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=mt.utils.string.wrap(o,au.COMMENT_WRAP-3),n+=au.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const uu="#74A55B",ru={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},lu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},du={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Iu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Tu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},hu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},mu={init:function(){this.setColour(uu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ou={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},Eu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ru={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},cu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},gu={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(uu),this.appendValueInput("VAR").appendField("360°"+mt.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SETTING+mt.Msg.blockpy_turtle_rotate+mt.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Au={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},Lu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Nu={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Du={init:function(){this.setColour(uu),this.appendValueInput("PIN",Number).appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new mt.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(mt.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Fu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[mt.Msg.MOTOR_N,"ms32006.MOT_N"],[mt.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Pu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new mt.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"ms32006.MOT_CW"],[mt.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},vu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_RGB_PIN_COUNT)}},Yu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},Xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},xu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},bu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new mt.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+mt.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},yu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Bu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},Gu={init:function(){this.setColour(uu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(mt.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(mt.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(mt.Msg.MIXLY_PROGRAM_BLOCK).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Uu={init:function(){this.setColour(uu),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_TRAFFIC_LIGHT).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.LISTS_SET_INDEX_SET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[mt.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_WHITE,"W"],[mt.Msg.COLOUR_RGB_RED,"R"],[mt.Msg.COLOUR_RGB_YELLOW,"Y"],[mt.Msg.COLOUR_RGB_GREEN,"G"],[mt.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[mt.Msg.MIXLY_SPEED,"[1]"],[mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[mt.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[mt.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[mt.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[mt.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MATH_SINGLE_OP_ABSOLUTE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},$u={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.ME_GO_MOTOR_EXTERN+mt.Msg.MIXLY_SERVO_MOTOR).appendField(mt.Msg.MIXLY_RELATIVE+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+mt.Msg.MSG.run).appendField("("+mt.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LEFT,"0"],[mt.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MODE).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPEED+mt.Msg.MIXLY_MODE,"0"],[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER+mt.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(mt.inputs.Align.RIGHT).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"0"],[mt.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},er={init:function(){this.setColour(uu),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.ME_GO_MOTOR_EXTERN).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MOTOR,"ext_motor"],[mt.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[mt.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[mt.Msg.COLOUR_RGB_RED+"LED","R_LED"],[mt.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[mt.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[mt.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[mt.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ir="#6C9858",nr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},sr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_ON,"1"],[mt.Msg.MIXLY_ESP32_OFF,"0"],[mt.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},or={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},_r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(mt.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(mt.Msg.MIXLY_LCD_SETCOLOR).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_LIGHT_RED,"1"],[mt.Msg.MIXLY_LIGHT_GREEN,"2"],[mt.Msg.MIXLY_LIGHT_BLUE,"3"],[mt.Msg.MIXLY_LIGHT_YELLOW,"4"],[mt.Msg.MIXLY_LIGHT_CYAN,"5"],[mt.Msg.MIXLY_LIGHT_PURPLE,"6"],[mt.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},rr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(mt.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Ir={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETTING).appendField(mt.Msg.MIXLY_BUILDIN_LED).appendField(new mt.FieldDropdown([[mt.Msg.COLOUR_RGB_RED,"r"],[mt.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_BUILDIN_LED+mt.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},Tr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(new mt.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},hr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},mr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Or={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Er={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_WRI)}},Rr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Ot.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(mt.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},cr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(mt.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},gr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(mt.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.PYTHON_RANGE_STEP).appendField(mt.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Cr={init:function(){this.setColour(ir),this.appendValueInput("TICKS").setCheck(Number).appendField(mt.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(mt.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(mt.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Sr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Ar={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_RESET)}},Lr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Nr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(mt.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Dr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},fr={init:function(){this.setColour(ir),this.appendValueInput("LIST").appendField(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Fr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(ir),this.appendDummyInput().appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(ir),this.appendDummyInput("").appendField("MixGo Car").appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MOTOR_DC).appendField(new mt.FieldDropdown([[mt.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[mt.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_STOP).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},yr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"1"],[mt.Msg.TEXT_TRIM_RIGHT,"2"],[mt.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[mt.Msg.MIXLY_SPEED,"SPEED"],[mt.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Br={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[mt.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.blockpy_forward,"F"],[mt.Msg.blockpy_backward,"B"],[mt.Msg.blockpy_left,"L"],[mt.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(new mt.FieldDropdown([[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.BITBOT).appendField(mt.Msg.MIXLY_MOTOR).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"0"],[mt.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(ir),this.appendValueInput("bright").appendField(mt.Msg.MIXLY_SETTING+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_SETONOFF)}},Kr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MIXBOT_BUZZER+mt.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_LED_GETONOFF)}},Jr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_RECORD_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},qr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_AUDIO).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},zr={init:function(){this.setColour(ir),this.appendValueInput("PATH").appendField(mt.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(mt.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},jr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zr={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},$r={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.PIN_NUMBERING).appendField(new mt.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},tl={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.LISTS_SET_INDEX_SET+mt.Msg.ME_GO_MOTOR_EXTERN).appendField(mt.Msg.MIXLY_ALL+mt.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(mt.ALIGN_RIGHT).appendField(mt.Msg.blynk_IOT_IR_POWER+mt.Msg.MIXLY_PINMODEOUT+mt.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},el={init:function(){this.setColour(ir),this.appendDummyInput().appendField(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(mt.Msg.MIXLY_RELEASE).appendField(new mt.FieldDropdown([[mt.Msg.MICROPYTHON_DISPLAY_YES,"True"],[mt.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.ANALOG+mt.Msg.MIXLY_KEYBOARD_INPUT)}},il={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SPECIAL_KEY).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],[mt.Msg.MIXLY_SPECIAL_KEY1,"1"],[mt.Msg.MIXLY_SPECIAL_KEY2,"2"],[mt.Msg.MIXLY_SPECIAL_KEY1,"4"],[mt.Msg.MIXLY_SPECIAL_KEY8,"8"],[mt.Msg.MIXLY_SPECIAL_KEY16,"16"],[mt.Msg.MIXLY_SPECIAL_KEY32,"32"],[mt.Msg.MIXLY_SPECIAL_KEY64,"64"],[mt.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},nl={init:function(){this.setColour(ir),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GENERAL_KEY).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},sl={init:function(){this.setColour(ir),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new mt.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(mt.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("generalkey_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Cm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Sm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Am={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Lm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(mt.Msg.MIXLY_WIFI_USERNAME).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.MIXLY_IOT_PASSWORD).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(mt.Msg.MIXLY_EMQX_PROJECT).setAlign(mt.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(mt.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},Dm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(mt.Msg.MIXLY_EMQX_SUBSCRIBE+mt.Msg.MIXLY_MICROBIT_MSG).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(mt.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},fm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Fm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Pm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},Ym={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(mt.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},Xm={init:function(){this.setColour(Mm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},xm={init:function(){this.setColour(Mm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},bm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(mt.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},ym={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(mt.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Vm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+mt.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Bm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField(mt.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(mt.Msg.MIXLY_EMQX_SERVER).setAlign(mt.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(mt.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gm={init:function(){this.VISITOR_ID=Ot.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(Mm),this.appendDummyInput("").appendField(new mt.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Um={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MixIO").appendField(mt.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},wm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(mt.Msg.MIXLY_REQUESTS_GET).appendField(mt.Msg.MIXLY_GET_CURRENT_TIME).appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},km={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("HTTP"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Hm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(mt.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(mt.Msg.MIXLY_INIT_SUBSCRIBE).appendField(mt.Msg.MQTT_Topic).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(mt.Msg.MIXLY_OPEN_DEBUG).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[mt.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wm={init:function(){this.setColour(Mm),this.appendDummyInput().appendField("MQTT"+mt.Msg.MIXLY_Client).appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_REQUESTS_LEN,"client_len"],[mt.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[mt.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Km=mm,Jm=Om,qm=Em,zm=Rm,Qm=gm,jm=225,Zm={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(mt.Msg.MIXLY_NETWORK_MODE).appendField(new mt.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},$m={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[mt.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=mt.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:mt.Msg.MIXLY_NETWORK_WIFI_OPEN,False:mt.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},tO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},eO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return mt.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:mt.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},iO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},nO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_NETWORK_WIFI_CONNECT+mt.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},sO={init:function(){this.setColour(jm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(mt.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(mt.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},oO={init:function(){this.setColour(jm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},_O={init:function(){this.setColour(jm),this.appendValueInput("url").appendField(mt.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},pO={init:function(){this.setColour(jm),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},aO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[mt.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:mt.Msg.MIXLY_ESP32_NETWORK_IP,1:mt.Msg.MIXLY_ESP32_NETWORK_MASK,2:mt.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},uO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},rO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},lO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(mt.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(mt.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},dO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},IO={init:function(){this.setColour(jm),this.appendValueInput("VAR").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new mt.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},TO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},hO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},MO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},mO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},OO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},EO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},RO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},cO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},gO={init:function(){this.setColour(jm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},CO={init:function(){this.setColour(jm),this.appendValueInput("DOMAIN").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS_GET).appendField(new mt.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},SO={init:function(){this.appendValueInput("VAL");var t=[[mt.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[mt.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:mt.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:mt.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:mt.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},AO={init:function(){this.appendValueInput("VAR").appendField(mt.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.blockpy_CONDUCT).appendField(new mt.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(mt.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:mt.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:mt.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},LO={init:function(){this.setColour(jm),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(mt.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},NO={init:function(){this.setColour(jm),this.appendDummyInput("").appendField(new mt.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},DO=100,fO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(e),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},FO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},PO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(mt.Msg.MOTOR_DC).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Direction).appendField(new mt.FieldDropdown([[mt.Msg.CLOCKWISE,"CW"],[mt.Msg.ANTI_CLOCKWISE,"CCW"],[mt.Msg.MOTOR_P,"P"],[mt.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(mt.Msg.MOTOR_DC).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},YO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_MOVE)}},XO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(mt.inputs.Align.RIGHT).appendField(mt.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},xO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+mt.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){var t=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(DO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+mt.Msg.MIXLY_SERVO).appendField(mt.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET+mt.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},yO="#A58C5B",VO={init:function(){this.setColour(yO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_IS_PRESSED)}},BO={init:function(){this.setColour(yO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_SENOR_WAS_PRESSED)}},GO={init:function(){this.setColour(yO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(mt.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.PROCEDURES_DEFRETURN_RETURN+mt.Msg.MIXLY_BUTTON+mt.Msg.MIXLY_GET_PRESSES)}},UO={init:function(){this.setColour(yO),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_BUTTON).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},wO={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"],[mt.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down,freefall:mt.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},kO={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},HO={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},WO={init:function(){var t=[[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(yO),this.appendValueInput("PIN",Number).appendField(new mt.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new mt.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:mt.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},KO={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},JO={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},qO={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new mt.FieldDropdown([[mt.Msg.TEXT_TRIM_LEFT,"left"],[mt.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(mt.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=mt.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=mt.Msg.MIXLY_ESP32_NEAR;return i+{left:mt.Msg.TEXT_TRIM_LEFT,right:mt.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},zO={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[mt.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":mt.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},QO={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[mt.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},jO={init:function(){this.setColour(yO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},ZO={init:function(){this.setColour(yO),this.appendDummyInput("").appendField("LM35"+mt.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_TOOLTIP_LM35)}},$O={init:function(){this.setColour(yO),this.appendValueInput("I2CSUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},tE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[mt.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[mt.Msg.MIXLY_ESP32_MAX30102_IR+","+mt.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},eE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[mt.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[mt.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},iE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},nE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.HTML_COLOUR+mt.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET+mt.Msg.HTML_COLOUR,"[2]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_IR_STRENGTH,"[1]"],[mt.Msg.MIXLY_GET+mt.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},sE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GET_ENV_LIGHT,"E"],[mt.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},oE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},_E={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},pE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETTEMPERATUE,"temperature"],[mt.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:mt.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},aE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_Altitude+mt.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_GETPRESSURE,"pressure()"],[mt.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[mt.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},uE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MIXGOPE_FIELD+mt.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[mt.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},rE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_shake,"shake"],[mt.Msg.MIXLY_UP,"up"],[mt.Msg.MIXLY_DOWN,"down"],[mt.Msg.MIXLY_LEFT,"left"],[mt.Msg.MIXLY_RIGHT,"right"],[mt.Msg.MIXLY_MICROBIT_face_up,"face up"],[mt.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=mt.Msg.MIXLY_MICROBIT_JS_CURRENT,n=mt.Msg.MSG.catSensor,s=mt.Msg.MIXLY_MICROBIT_JS_STATE,o=mt.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:mt.Msg.MIXLY_MICROBIT_shake,up:mt.Msg.MIXLY_UP,down:mt.Msg.MIXLY_DOWN,left:mt.Msg.MIXLY_LEFT,right:mt.Msg.MIXLY_RIGHT,"face up":mt.Msg.MIXLY_MICROBIT_face_up,"face down":mt.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},lE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},dE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET+mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},IE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+mt.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new mt.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=mt.Msg.MIXLY_MICROBIT_Direction,s=mt.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":mt.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},TE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},hE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_GETTEMPERATUE)}},ME={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return mt.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:mt.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:mt.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},mE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},OE={init:function(){this.setColour(yO),this.appendValueInput("SPISUB").appendField(mt.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(mt.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP+mt.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new mt.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},EE={init:function(){this.setColour(yO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[mt.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},RE={init:function(){this.setColour(yO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},cE={init:function(){this.setColour(yO),this.appendDummyInput().appendField("RFID"+mt.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},gE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},CE={init:function(){this.setColour(yO),this.appendDummyInput().appendField(mt.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(mt.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(mt.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(mt.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},SE={init:function(){this.setColour(yO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RFID_SCAN_OK,"0"],[mt.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[mt.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},AE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROBIT_JS_GET).appendField(new mt.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},LE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},NE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},DE={init:function(){this.setColour(yO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new mt.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},lN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},dN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},IN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},TN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},hN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},MN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},mN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},ON=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},EN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},RN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},cN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},gN=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},CN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},SN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},AN=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},LN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},NN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},DN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},fN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},FN=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},PN=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},vN=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},YN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},XN=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},xN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},bN=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},yN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},VN=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},BN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},GN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},UN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},wN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},kN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},HN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},WN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},KN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},JN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},qN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},zN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},QN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},jN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},ZN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},$N=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},tD=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},eD=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},iD=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},nD=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Ot.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},sD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},oD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},_D=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},pD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},aD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},uD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},rD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},lD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},dD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},ID=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},TD=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},hD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},MD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},mD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},OD=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},ED=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},RD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},cD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},gD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},CD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},SD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},AD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},LD=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},ND=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},_f=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},pf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},af=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},uf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},lf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},df=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},If=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},Tf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},hf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},Mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},mf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},Of=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},Ef=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},Rf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},cf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},gf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},Cf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},Sf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},Af=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},Lf=function(t,e){var i=Ot.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},Nf=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},Df=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},ff=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},fX=function(){return"control.reset()\n"},FX=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},PX=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+")\n"},vX=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Ot.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},YX=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},XX=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},xX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},bX=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},yX=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},VX=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},BX=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},GX=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},UX=function(){return"while True:\n pass\n"},wX=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},kX=function(t,e){return e.definitions_.import_os="import os","os.uname()"},HX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},WX=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},KX=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},JX=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},qX=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},zX=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},QX=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},jX=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},ZX=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},$X=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},tx=zX,ex=JX,ix=qX,nx=HX,sx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ox=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},_x=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},px={};px["MixGo CE"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Ot.Profile.generate(["0-18","21-46"]),input_pin:Ot.Profile.generate(["0-18","21-46"]),output_pin:Ot.Profile.generate(["0-18","21-45"]),pwm_input:Ot.Profile.generate(["0-18","21-46"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-18","21-46"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-18","21-45"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-18","21-45"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-18","21-45"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-18","21-45"]),pwm:Ot.Profile.generate(["0-18","21-45"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["1-18"]),analog:Ot.Profile.generate(["1-18"],"adc","adc"),dac_pin:Ot.Profile.generate(["17-18"]),dac:Ot.Profile.generate(["17-18"],"dac","dac"),touch:Ot.Profile.generate(["1-14"],"tc","tc"),touch_pin:Ot.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-15"]),exlcdv:Ot.Profile.generate(["0-7"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},px["ESP32S2 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Ot.Profile.generate(["0-42","45"]),input_pin:Ot.Profile.generate(["0-42","45-46"]),output_pin:Ot.Profile.generate(["0-42","45"]),pwm_input:Ot.Profile.generate(["0-42","45-46"],"pwm","pwm"),analog_input:Ot.Profile.generate(["0-18","21-46"],"adc","adc"),pwm_output:Ot.Profile.generate(["0-42","45"],"pwm","pwm"),analog_output:Ot.Profile.generate(["0-42","45"],"adc","adc"),espnow_channel:Ot.Profile.generate(["1-13"]),haskylens_model:Ot.Profile.generate(["0-4"]),digital:Ot.Profile.generate(["0-42","45"],"pin","pin"),pwm_pin:Ot.Profile.generate(["0-42","45"]),pwm:Ot.Profile.generate(["0-42","45"],"pwm","pwm"),analog_pin:Ot.Profile.generate(["1-20"]),analog:Ot.Profile.generate(["1-20"],"adc","adc"),dac_pin:Ot.Profile.generate(["17-18"]),dac:Ot.Profile.generate(["17-18"],"dac","dac"),touch:Ot.Profile.generate(["1-14"],"tc","tc"),touch_pin:Ot.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Ot.Profile.generate(["0-4"]),exlcdh:Ot.Profile.generate(["0-15"]),exlcdv:Ot.Profile.generate(["0-7"]),brightness:Ot.Profile.generate(["0-9"]),tts_voice:Ot.Profile.generate(["0-16"]),tts_builtin_music:Ot.Profile.generate(["0-47"]),tts_bgmusic:Ot.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const ax=px,ux=20,rx={init:function(){this.setColour(ux),this.appendDummyInput("").appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_HIGH,"HIGH"],[mt.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},lx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(mt.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},dx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},Ix={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},Tx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},hx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_mSecond,"period"],[mt.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},Mx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(mt.Msg.MIXLY_FREQUENCY+mt.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},mx={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},Ox={init:function(){this.setColour(ux),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_REF_VOLTAGE+mt.Msg.MIXLY_STAT).appendField(new mt.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},Ex={init:function(){this.setColour(ux),this.appendValueInput("pin").appendField(mt.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(mt.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},Rx={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MODE).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[mt.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[mt.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(mt.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},cx={init:function(){this.setColour(20),this.appendDummyInput().appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(mt.Msg.MIXLY_MICROPYTHON_AS).appendField(new mt.FieldDropdown([[mt.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[mt.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[mt.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[mt.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},gx={init:function(){this.setColour(ux),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("pwm#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Cx={init:function(){this.setColour(ux),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("dac#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+mt.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Sx={init:function(){this.setColour(ux),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("adc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Ax={init:function(){this.setColour(ux),this.appendDummyInput("").appendField(mt.Msg.MIXLY_SETUP).appendField(new mt.FieldTextInput("tc#"),"PIN_OBJ").appendField(mt.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(mt.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(mt.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(mt.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){mt.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Lx=cx,Nx=Mx,Dx=Ax,fx=Ex,Fx=Rx,Px=230,vx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital),"PIN"),this.setOutput(!0)}},Yx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},Xx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},xx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},bx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},yx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},Vx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},Bx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},Gx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},Ux={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},wx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},kx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},Hx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},Wx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},Kx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},Jx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},qx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog),"PIN"),this.setOutput(!0)}},zx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},Qx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac),"PIN"),this.setOutput(!0)}},jx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},Zx={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},$x={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},tb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm),"PIN"),this.setOutput(!0)}},eb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},ib={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},nb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.touch),"PIN"),this.setOutput(!0)}},sb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},ob={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},_b={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},pb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.imglist),"PIN"),this.setOutput(!0)}},ab={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist),"PIN"),this.setOutput(!0)}},ub={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},rb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},lb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},db={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},Ib={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},Tb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},hb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},Mb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},mb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},Ob={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},Eb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Rb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.one_more),"PIN"),this.setOutput(!0)}},cb={init:function(){this.setColour(Px),this.appendDummyInput("").appendField(new mt.FieldDropdown(Ot.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},gb=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},Cb=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},Sb=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},Ab=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Lb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},Nb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},Db=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},fb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Fb=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},Pb=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},vb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},Yb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},Xb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},xb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},bb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},yb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,mt.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},Vb=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},Bb=Vb,Gb=Vb,Ub=Vb,wb=Vb,kb=Vb,Hb=Vb,Wb=Vb,Kb=Vb,Jb=Vb,qb=Vb,zb=Vb,Qb=Vb,jb=Vb,Zb=Vb,$b=Vb,ty=Vb,ey=Vb,iy=Vb,ny=Vb,sy=Vb,oy=Vb,_y=Vb,py=Vb,ay=Vb,uy=Vb,ry=Vb,ly=Vb,dy=Vb,Iy=Vb,Ty=Vb,hy=Vb,My=Vb,my=Vb,Oy=Vb,Ey=Vb,Ry=Vb,cy=Vb,gy=Vb,Cy=Vb,Sy=Vb,Ay=Vb,Ly=Vb,Ny=Vb,Dy=Vb;Object.assign(mt.Variables,Rt),Object.assign(mt.Procedures,Kn),mt.Python=au,mt.generator=au,Ot.Profile.default={},Object.assign(Ot.Profile,ax),Object.assign(Ot.Profile.default,ax["MixGo CE"]),Object.assign(mt.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,V,W,H,X,B,K,f,k,w,U,G,F,D,N,b,x,y,P,v,Y,It,Tt),Object.assign(mt.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,st,lt,rt,tt,ot,dt,z,ut,at,pt,_t,Q,q,J,it,et,nt,j,Z,$,ht,Mt)})(); \ No newline at end of file diff --git a/boards/default/micropython_esp32s2/styles/main.454324cd.css b/boards/default/micropython_esp32s2/styles/main.2f1df1e2.css similarity index 100% rename from boards/default/micropython_esp32s2/styles/main.454324cd.css rename to boards/default/micropython_esp32s2/styles/main.2f1df1e2.css diff --git a/boards/default/micropython_esp32s3/index.xml b/boards/default/micropython_esp32s3/index.xml index be383e6a..ee7bda83 100644 --- a/boards/default/micropython_esp32s3/index.xml +++ b/boards/default/micropython_esp32s3/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,0180291001001004401000/sd/1.wav5/sd/1.wavhttps://gitee.com/dahanzimin/test/raw/master/wav/8.wav000000000010001000001#ffffff255,255,0Mixly0Mixly0010#ffffff255,255,0MixlyMixly0550#ffffff255,255,0MixlyMixly5500#ffffff255,255,00020#ffffff255,255,0005050#ffffff255,255,020202015#ffffff255,255,0606040#ffffff255,255,010000#ffffff255,255,00.5#ffffff255,255,0new_clock16012040#ffffff255,255,0new_clock806440#ffffff255,255,0new_clocknew_clock8200new_clocknew_clock0x0000000,0,0wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.cn/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSfsxo7MfAaNO1U_Pq北京Sfsxo7MfAaNO1U_Pq北京1Sfsxo7MfAaNO1U_Pq北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx1620000211000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr123ws_wrws_wrws_wr360010zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐100100i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi10000001246spi45tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsspi46sdsd/sdfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly2022711420452023,1,1,12,0,0180291001001004401000/sd/1.wav5/sd/1.wavhttps://gitee.com/dahanzimin/test/raw/master/wav/8.wav000000000010001000001#ffffff255,255,0Mixly0Mixly0010#ffffff255,255,0MixlyMixly0550#ffffff255,255,0MixlyMixly5500#ffffff255,255,00020#ffffff255,255,0005050#ffffff255,255,020202015#ffffff255,255,0606040#ffffff255,255,010000#ffffff255,255,00.5#ffffff255,255,0new_clock16012040#ffffff255,255,0new_clock806440#ffffff255,255,0new_clocknew_clock8200new_clocknew_clock0x0000000,0,0wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.cn/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"tc0ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSfsxo7MfAaNO1U_Pq北京Sfsxo7MfAaNO1U_Pq北京1Sfsxo7MfAaNO1U_Pq北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx1620000211000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixlyi2c_extend45100000xsensori2c_extendxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorxsensorspi10000004512spi8ysensorysensor0ysensor0ysensor0Mixlyysensor0Mixlyysensorysensorysensor39,119.96,31.67ysensorysensorstation45ps2_handle24512ps2_handle50ps2_handleps2_handlews_wr123ws_wrws_wrws_wr360010zsensorzsensorzsensorzsensormidi0midi440midi4401000midimidimidi4120midimidirgb04rgb0000rgb000rgb100100i2c_extend45400000Motori2c_extendMotor100Motor1024102402ttsttsttsttstts你好米思齐100100i2c_extend45400000matrixi2c_extendmatrixmatrixmatrixMixly0matrixMixlymatrixMixly500matrixMixlymatrixMixly500matrixmatrix>matrixmatrix1matrixmatrixmatrix0.5matrixmatrixi2c_extend45100000dispi2c_extenddisp2333dispdisp1i2c_extend45100000lcdi2c_extend0x27lcdMixly00lcdMixly005lcdlcdi2c_extend45100000oledi2c_extend0x3coledoled001oledMixlyoledMixly0010oledMixlyoledMixly0550oledMixlyoledMixly5500oled0020oled005050oled20202015oled1oled00oled00oledspi10000001246spi45tft_st7789135240tft_st7789001#ffffff255,255,0tft_st7789Mixly0050#ffffff255,255,0tft_st7789Mixly0550#ffffff255,255,0tft_st7789Mixly5500#ffffff255,255,0tft_st7789004040#ffffff255,255,0tft_st778912ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor'ni-hao','hong-se','lv-se','lan-se','bai-se','hei-se'0.1ai_sensor1.wav5ai_sensor1.wav100ai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsai_sensor'猫','狗','笔记本','笔'mixgo5自模型训练infoai_sensor'猫','狗','笔记本','笔'mixgo自模型识别objectsinfoai_sensor0.1606, 0.3562, 0.4712, 0.9568, 0.9877, 1.9108, 1.8761, 3.5310, 3.4423, 5.6823/sd/masks.kmodel外部模型加载objects12ai_sensorai_sensor98ai_sensor255,255,00,0,255ai_sensor1.wav5ai_sensor1.wav100infoai_sensorlicensePlateinfoai_sensorfaceinfoai_sensor20objectsai_sensorinfoai_sensorqrcodeinfoai_sensorbarcodeinfoai_sensortaginfoai_sensor25002525lineinfoai_sensor35002100circleinfoai_sensor10000rectinfoai_sensorinfoinfoai_sensorcolor_lab101colorsspi46sdsd/sdfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file diff --git a/boards/default/micropython_esp32s3/main.bundle.js b/boards/default/micropython_esp32s3/main.bundle.js index 6b83dcfc..8688b174 100644 --- a/boards/default/micropython_esp32s3/main.bundle.js +++ b/boards/default/micropython_esp32s3/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Lt,controls_typeLists:()=>Nt,variables_change:()=>St,variables_get:()=>gt,variables_global:()=>At,variables_set:()=>Ct});var i={};t.r(i),t.d(i,{base_setup:()=>Pt,controls_delay:()=>Ft,controls_end_program:()=>vt,controls_except:()=>Wt,controls_finally:()=>Kt,controls_flow_statements:()=>yt,controls_for:()=>Bt,controls_forEach:()=>Xt,controls_for_range:()=>Ut,controls_if:()=>Yt,controls_if_else:()=>kt,controls_if_elseif:()=>wt,controls_if_if:()=>Gt,controls_lambda:()=>Qt,controls_main:()=>ft,controls_pass:()=>qt,controls_range:()=>xt,controls_repeat_ext:()=>Jt,controls_thread:()=>zt,controls_try:()=>Ht,controls_try_finally:()=>Vt,controls_whileUntil:()=>bt,do_while:()=>jt,garbage_collection:()=>Zt,get_mem_alloc:()=>$t,get_mem_free:()=>te,get_unique_identifier:()=>ee});var n={};t.r(n),t.d(n,{base_map:()=>ge,math_arithmetic:()=>_e,math_bit:()=>ae,math_constant:()=>se,math_constant_mp:()=>oe,math_constrain:()=>he,math_dec:()=>re,math_indexer_number:()=>me,math_map:()=>Me,math_max_min:()=>de,math_number:()=>ne,math_number_base_conversion:()=>Ie,math_random:()=>Te,math_random_seed:()=>Oe,math_round:()=>Ee,math_selfcalcu:()=>pe,math_to_int:()=>le,math_trig:()=>ue,text_to_number:()=>Re,text_to_number_skulpt:()=>ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>De,char_to_ascii:()=>fe,number_to_text:()=>Pe,os_system:()=>ei,text:()=>Se,text_capital:()=>Be,text_center:()=>Ue,text_char:()=>Le,text_char_at:()=>Ye,text_char_at2:()=>ve,text_char_at3:()=>je,text_compareTo:()=>ze,text_compare_to:()=>ye,text_create_with_container:()=>Je,text_create_with_item:()=>Qe,text_encode:()=>$e,text_equals_starts_ends:()=>Ve,text_eval:()=>ti,text_find:()=>Ge,text_format:()=>Ke,text_format_noreturn:()=>Ze,text_join:()=>Ne,text_join_seq:()=>we,text_length:()=>Fe,text_random_char:()=>xe,text_replace:()=>ke,text_split:()=>He,text_strip:()=>We,text_substring:()=>be,text_substring2:()=>Xe,text_substring3:()=>qe,text_textarea:()=>Ae});var o={};t.r(o),t.d(o,{list_many_input:()=>Si,list_tolist:()=>Fi,list_tolist2:()=>Bi,list_trig:()=>ci,lists_2d_get_col_row_data:()=>_i,lists_2d_get_data_with_col_row:()=>oi,lists_append_extend:()=>di,lists_change_to:()=>Ci,lists_change_to_general:()=>Li,lists_clear:()=>mi,lists_create_with:()=>pi,lists_create_with2:()=>vi,lists_create_with_container:()=>ui,lists_create_with_item:()=>ri,lists_create_with_noreturn:()=>Ai,lists_create_with_text:()=>ai,lists_create_with_text2:()=>Yi,lists_del_general:()=>Ni,lists_find:()=>Ri,lists_getIndex3:()=>xi,lists_getSublist3:()=>Xi,lists_get_index:()=>ni,lists_get_random_item:()=>Ii,lists_get_random_sublist:()=>Ti,lists_get_sublist:()=>si,lists_insert_value:()=>hi,lists_insert_value2:()=>Vi,lists_pop:()=>Ei,lists_remove_at:()=>Oi,lists_remove_at2:()=>yi,lists_reverse:()=>Mi,lists_setIndex3:()=>bi,lists_set_index:()=>li,lists_sort:()=>gi,lists_zip:()=>Di,lists_zip_container:()=>fi,lists_zip_item:()=>Pi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>en,dicts_add_or_change:()=>Ji,dicts_clear:()=>zi,dicts_create_with:()=>Gi,dicts_create_with_container:()=>wi,dicts_create_with_item:()=>ki,dicts_create_with_noreturn:()=>on,dicts_deldict:()=>tn,dicts_delete:()=>Qi,dicts_get:()=>Wi,dicts_get_default:()=>Ki,dicts_items:()=>ji,dicts_keys:()=>Hi,dicts_length:()=>$i,dicts_pop:()=>nn,dicts_setdefault:()=>sn,dicts_to_json:()=>pn,dicts_todict:()=>_n,dicts_update:()=>qi,dicts_values:()=>Zi,json_to_dicts:()=>an});var p={};t.r(p),t.d(p,{logic_boolean:()=>Tn,logic_compare:()=>rn,logic_compare_continous:()=>ln,logic_is:()=>On,logic_is_in:()=>mn,logic_negate:()=>In,logic_null:()=>hn,logic_operation:()=>dn,logic_tobool:()=>En,logic_true_or_false:()=>Mn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>wn,sdcard_use_spi_init:()=>Gn,storage_can_write_ornot:()=>Dn,storage_change_dir:()=>Bn,storage_close_file:()=>Pn,storage_delete_file:()=>vn,storage_file_seek:()=>Xn,storage_file_tell:()=>xn,storage_file_write:()=>Sn,storage_fileopen:()=>cn,storage_fileopen_new:()=>gn,storage_fileopen_new_encoding:()=>Cn,storage_get_a_line:()=>Nn,storage_get_contents:()=>Ln,storage_get_contents_without_para:()=>An,storage_get_current_dir:()=>bn,storage_get_file_size:()=>Yn,storage_get_filename:()=>fn,storage_is_file:()=>Un,storage_list_all_files:()=>Fn,storage_make_dir:()=>Vn,storage_open_file_with_os:()=>Rn,storage_rename:()=>yn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>qn,procedures_callreturn:()=>zn,procedures_defnoreturn:()=>Wn,procedures_defreturn:()=>Kn,procedures_ifreturn:()=>jn,procedures_mutatorarg:()=>Qn,procedures_mutatorcontainer:()=>Jn,procedures_return:()=>Zn});var r={};t.r(r),t.d(r,{tuple_change_to:()=>rs,tuple_create_with:()=>ts,tuple_create_with_container:()=>es,tuple_create_with_item:()=>is,tuple_create_with_noreturn:()=>Ts,tuple_create_with_text2:()=>ns,tuple_create_with_text_return:()=>ss,tuple_del:()=>ps,tuple_find:()=>ls,tuple_getIndex:()=>os,tuple_getSublist:()=>Is,tuple_get_random_item:()=>Ms,tuple_get_sublist:()=>hs,tuple_join:()=>as,tuple_length:()=>_s,tuple_max:()=>us,tuple_totuple:()=>ms,tuple_trig:()=>ds});var l={};t.r(l),t.d(l,{set_add_discard:()=>Ns,set_clear:()=>Ss,set_create_with:()=>Es,set_create_with_container:()=>Rs,set_create_with_item:()=>cs,set_create_with_text_return:()=>Ps,set_length:()=>gs,set_operate:()=>As,set_operate_update:()=>Ls,set_pop:()=>Cs,set_sub:()=>Ds,set_toset:()=>Fs,set_update:()=>fs});var d={};t.r(d),t.d(d,{html_content:()=>bs,html_content_more:()=>Vs,html_document:()=>Ys,html_form:()=>Bs,html_head_body:()=>Xs,html_style:()=>ys,html_style_color:()=>Gs,html_style_content:()=>Us,html_text:()=>ws,html_title:()=>xs});var I={};t.r(I),t.d(I,{attribute_access:()=>io,function_call:()=>$s,function_call_container:()=>to,function_call_item:()=>eo,raw_block:()=>Ws,raw_empty:()=>Js,raw_expression:()=>Ks,raw_table:()=>Hs,text_comment:()=>Qs,text_print_multiple:()=>zs,text_print_multiple_container:()=>js,text_print_multiple_item:()=>Zs,type_check:()=>qs});var T={};t.r(T),t.d(T,{controls_type:()=>po,controls_typeLists:()=>ao,variables_change:()=>oo,variables_get:()=>no,variables_global:()=>_o,variables_set:()=>so});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>Eo,base_setup:()=>ro,controls_delay:()=>Oo,controls_flow_statements:()=>mo,controls_for:()=>To,controls_forEach:()=>So,controls_for_range:()=>ho,controls_if:()=>lo,controls_interrupts:()=>go,controls_lambda:()=>Lo,controls_main:()=>uo,controls_millis:()=>Ro,controls_nointerrupts:()=>Co,controls_pass:()=>Do,controls_range:()=>Ao,controls_repeat:()=>bo,controls_repeat_ext:()=>Fo,controls_thread:()=>fo,controls_try_finally:()=>Io,controls_whileUntil:()=>Mo,do_while:()=>Po,garbage_collection:()=>vo,get_mem_alloc:()=>Yo,get_mem_free:()=>xo,get_unique_identifier:()=>Xo,reset:()=>co,time_sleep:()=>No});var M={};t.r(M),t.d(M,{base_map:()=>n_,math_arithmetic:()=>Go,math_bit:()=>Uo,math_constant:()=>yo,math_constant_mp:()=>Bo,math_constrain:()=>zo,math_dec:()=>Wo,math_indexer_number:()=>$o,math_map:()=>qo,math_max_min:()=>Jo,math_number:()=>Vo,math_number_base_conversion:()=>jo,math_random:()=>Qo,math_random_seed:()=>Zo,math_round:()=>t_,math_selfcalcu:()=>wo,math_single:()=>ko,math_to_int:()=>Ko,math_trig:()=>Ho,text_to_number:()=>e_,text_to_number_skulpt:()=>i_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>a_,char_to_ascii:()=>u_,number_to_text:()=>r_,os_system:()=>Y_,text:()=>s_,text_capital:()=>E_,text_center:()=>R_,text_char:()=>__,text_char_at:()=>I_,text_char_at2:()=>d_,text_char_at3:()=>P_,text_compareTo:()=>f_,text_compare_to:()=>M_,text_encode:()=>F_,text_equals_starts_ends:()=>h_,text_eval:()=>v_,text_find:()=>c_,text_format:()=>L_,text_format_noreturn:()=>N_,text_join:()=>p_,text_join_seq:()=>g_,text_length:()=>l_,text_random_char:()=>T_,text_replace:()=>C_,text_split:()=>S_,text_strip:()=>A_,text_substring:()=>O_,text_substring2:()=>m_,text_substring3:()=>D_,text_textarea:()=>o_});var O={};t.r(O),t.d(O,{list_many_input:()=>$_,list_tolist:()=>lp,list_tolist2:()=>dp,list_trig:()=>z_,lists_2d_get_col_row_data:()=>b_,lists_2d_get_data_with_col_row:()=>X_,lists_append_extend:()=>G_,lists_change_to:()=>Z_,lists_change_to_general:()=>ep,lists_clear:()=>K_,lists_create_with:()=>V_,lists_create_with2:()=>np,lists_create_with_noreturn:()=>tp,lists_create_with_text:()=>y_,lists_create_with_text2:()=>sp,lists_del_general:()=>ip,lists_find:()=>J_,lists_getIndex3:()=>op,lists_getSublist3:()=>_p,lists_get_index:()=>B_,lists_get_random_item:()=>w_,lists_get_random_sublist:()=>k_,lists_get_sublist:()=>x_,lists_insert_value:()=>H_,lists_insert_value2:()=>ap,lists_pop:()=>q_,lists_remove_at:()=>Q_,lists_remove_at2:()=>up,lists_reverse:()=>W_,lists_setIndex3:()=>pp,lists_set_index:()=>U_,lists_sort:()=>j_,lists_zip:()=>rp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Ap,dicts_add_or_change:()=>mp,dicts_clear:()=>Rp,dicts_create_with:()=>Ip,dicts_create_with_noreturn:()=>Dp,dicts_deldict:()=>Sp,dicts_delete:()=>Op,dicts_get:()=>hp,dicts_get_default:()=>Mp,dicts_items:()=>cp,dicts_keys:()=>Tp,dicts_length:()=>Cp,dicts_pop:()=>Lp,dicts_setdefault:()=>Np,dicts_to_json:()=>Pp,dicts_todict:()=>fp,dicts_update:()=>Ep,dicts_values:()=>gp,json_to_dicts:()=>Fp});var R={};t.r(R),t.d(R,{logic_boolean:()=>bp,logic_compare:()=>vp,logic_compare_continous:()=>Yp,logic_is:()=>Up,logic_is_in:()=>Bp,logic_negate:()=>Xp,logic_null:()=>Vp,logic_operation:()=>xp,logic_tobool:()=>Gp,logic_true_or_false:()=>yp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>ra,sdcard_use_spi_init:()=>ua,storage_can_write_ornot:()=>zp,storage_change_dir:()=>sa,storage_close_file:()=>Zp,storage_delete_file:()=>ta,storage_file_seek:()=>na,storage_file_tell:()=>ia,storage_file_write:()=>Kp,storage_fileopen:()=>kp,storage_fileopen_new:()=>Hp,storage_fileopen_new_encoding:()=>Wp,storage_get_a_line:()=>qp,storage_get_contents:()=>Qp,storage_get_contents_without_para:()=>Jp,storage_get_current_dir:()=>oa,storage_get_file_size:()=>ea,storage_get_filename:()=>jp,storage_is_file:()=>aa,storage_list_all_files:()=>$p,storage_make_dir:()=>_a,storage_open_file_with_os:()=>wp,storage_rename:()=>pa});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Ta,procedures_callreturn:()=>Ia,procedures_defnoreturn:()=>da,procedures_defreturn:()=>la,procedures_ifreturn:()=>ha,procedures_return:()=>Ma});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Aa,tuple_create_with:()=>ma,tuple_create_with_noreturn:()=>fa,tuple_create_with_text2:()=>Oa,tuple_create_with_text_return:()=>Ea,tuple_del:()=>ga,tuple_find:()=>La,tuple_getIndex:()=>Ra,tuple_getSublist:()=>Da,tuple_get_random_item:()=>Fa,tuple_get_sublist:()=>Pa,tuple_join:()=>Ca,tuple_length:()=>ca,tuple_max:()=>Sa,tuple_totuple:()=>va,tuple_trig:()=>Na});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ba,set_clear:()=>ba,set_create_with:()=>Ya,set_create_with_text_return:()=>wa,set_length:()=>xa,set_operate:()=>Va,set_operate_update:()=>ya,set_pop:()=>Xa,set_sub:()=>Ua,set_toset:()=>ka,set_update:()=>Ga});var A={};t.r(A),t.d(A,{html_content:()=>Ja,html_content_more:()=>Qa,html_document:()=>Ha,html_form:()=>za,html_head_body:()=>Ka,html_style:()=>qa,html_style_content:()=>ja,html_text:()=>Za,html_title:()=>Wa});var L={};t.r(L),t.d(L,{attribute_access:()=>ou,function_call:()=>su,raw_block:()=>$a,raw_empty:()=>eu,raw_expression:()=>tu,raw_table:()=>iu,type_check:()=>nu});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>mu,actuator_extern_get_led_state:()=>Ou,actuator_extern_led_bright:()=>Mu,actuator_extern_led_brightness:()=>Eu,actuator_ms32006_dcmotor:()=>Du,actuator_ms32006_init:()=>Nu,actuator_ms32006_stepper:()=>fu,actuator_neopixel_init:()=>Pu,actuator_neopixel_rgb:()=>Fu,actuator_neopixel_rgb_all:()=>vu,actuator_neopixel_write:()=>Yu,actuator_use_uart_init:()=>xu,esp32_music_get_tempo_extern:()=>Iu,esp32_music_pitch:()=>uu,esp32_music_pitch_init:()=>au,esp32_music_pitch_with_time:()=>ru,esp32_music_play_list:()=>lu,esp32_music_reset_extern:()=>Tu,esp32_music_set_tempo_extern:()=>du,esp32_music_stop:()=>hu,mixbot_actuator_extern_get_addr:()=>Zu,mixbot_actuator_extern_set_addr:()=>$u,mixbot_addr_extern:()=>Bu,robot_led_extern:()=>ku,robot_led_extern_get_value:()=>Hu,robot_motor_extern:()=>Uu,robot_motor_extern_get_speed:()=>Gu,robot_servo_extern_absolute_run:()=>Qu,robot_servo_extern_get_status:()=>Wu,robot_servo_extern_relative_continue:()=>ju,robot_servo_extern_relative_origin:()=>qu,robot_servo_extern_relative_run:()=>zu,robot_servo_extern_stop:()=>Ju,robot_servo_extern_stop_mode:()=>Ku,robot_traffic_light_extern:()=>wu,servo_get_angle:()=>Au,servo_get_speed:()=>Lu,servo_init:()=>Ru,servo_move:()=>cu,servo_set_angle:()=>Cu,servo_set_speed:()=>Su,servo_speed_360:()=>gu,syn6288_builtin_voice:()=>Vu,syn6288_get_voice:()=>bu,syn6288_set_voice:()=>Xu,syn6288_tts_play:()=>yu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Fr,actuator_dc_motor_stop:()=>vr,actuator_get_led_bright:()=>sr,actuator_get_led_state:()=>or,actuator_led_bright:()=>nr,actuator_led_brightness:()=>_r,actuator_mixbot_buzzer_on_off:()=>Vr,actuator_mixgo_nova_mic_get:()=>wr,actuator_mixgo_nova_mic_set:()=>Gr,actuator_mixgo_nova_onboard_music_pitch:()=>Qr,actuator_mixgo_nova_onboard_music_stop:()=>qr,actuator_mixgo_nova_play_audio:()=>Kr,actuator_mixgo_nova_play_online_audio:()=>Jr,actuator_mixgo_nova_record_audio:()=>Wr,actuator_mixgo_nova_voice_get:()=>Hr,actuator_mixgo_nova_voice_set:()=>kr,actuator_mixgo_zero_led_color:()=>pr,actuator_onboard_neopixel_rgb:()=>Ir,actuator_onboard_neopixel_rgb_all:()=>Tr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Mr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>hr,actuator_onboard_neopixel_write:()=>mr,actuator_rm_onboard_neopixel_rgb:()=>Or,actuator_rm_onboard_neopixel_rgb_all:()=>Er,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Rr,actuator_stepper_keep:()=>fr,actuator_stepper_stop:()=>Pr,analog_keyboard_input:()=>$r,analog_keyboard_str:()=>sl,analog_mouse_input:()=>il,bitbot_motor:()=>Ur,bitbot_move:()=>yr,bitbot_stop:()=>Br,cc_number:()=>dr,esp32_music_get_tempo:()=>gr,esp32_music_reset:()=>Cr,esp32_music_set_tempo:()=>cr,esp32_onboard_music_pitch:()=>Sr,esp32_onboard_music_pitch_with_time:()=>Ar,esp32_onboard_music_play_list:()=>Nr,esp32_onboard_music_stop:()=>Lr,general_key:()=>el,get_power_output:()=>jr,ledswitch:()=>ir,mixbot_motor:()=>br,mixbot_motor_status:()=>Yr,mixbot_move:()=>xr,mixbot_stop:()=>Xr,mouse_key:()=>nl,number:()=>er,rm_actuator_get_led_bright:()=>ur,rm_actuator_get_led_state:()=>rr,rm_actuator_led_bright:()=>ar,rm_actuator_led_brightness:()=>lr,rm_motor:()=>Dr,set_all_power_output:()=>Zr,set_power_output:()=>zr,special_key:()=>tl});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>yl,ai_sensor_ailocal_class:()=>Nl,ai_sensor_ailocal_class_result:()=>Dl,ai_sensor_ailocal_train:()=>Ll,ai_sensor_asr_recognize:()=>Yl,ai_sensor_audio_play:()=>Pl,ai_sensor_audio_record:()=>fl,ai_sensor_barcode:()=>dl,ai_sensor_circle:()=>Ol,ai_sensor_classifier_faces:()=>Vl,ai_sensor_color:()=>gl,ai_sensor_color_chases:()=>Al,ai_sensor_color_chases_result:()=>Sl,ai_sensor_config:()=>rl,ai_sensor_face:()=>bl,ai_sensor_find_20objects:()=>Bl,ai_sensor_find_barcodes:()=>Il,ai_sensor_find_circles:()=>El,ai_sensor_find_colors:()=>Cl,ai_sensor_find_licenseplates:()=>Xl,ai_sensor_find_lines:()=>ml,ai_sensor_find_qrcodes:()=>ul,ai_sensor_find_rects:()=>cl,ai_sensor_find_tags:()=>hl,ai_sensor_licenseplate:()=>xl,ai_sensor_line:()=>Ml,ai_sensor_qrcode:()=>pl,ai_sensor_qrcode_lite:()=>al,ai_sensor_rect:()=>Rl,ai_sensor_rgb:()=>ll,ai_sensor_tag:()=>Tl,ai_sensor_use_uart_init:()=>_l,ai_sensor_yolo_recognize:()=>Fl,ai_sensor_yolo_recognize_result:()=>vl});var P={};t.r(P),t.d(P,{MICROPYTHON_AI_Speech_asr:()=>wl,MICROPYTHON_AI_Speech_unit:()=>Gl,MICROPYTHON_AI_client:()=>Ul});var F={};t.r(F),t.d(F,{mpython_blynk_app_data:()=>nd,mpython_blynk_app_notify:()=>zl,mpython_blynk_email:()=>$l,mpython_blynk_get_timers:()=>td,mpython_blynk_on_connected:()=>Jl,mpython_blynk_on_disconnected:()=>Kl,mpython_blynk_run:()=>ql,mpython_blynk_sensor_data_to_app:()=>id,mpython_blynk_set_property:()=>Zl,mpython_blynk_setup:()=>sd,mpython_blynk_stop_timers:()=>jl,mpython_blynk_sync_virtual:()=>Wl,mpython_blynk_terminal_widget_vpin:()=>Hl,mpython_blynktimer:()=>ed,mpython_blynktimer_run:()=>Ql});var v={};t.r(v),t.d(v,{communicate_bluetooth_central_init:()=>Ud,communicate_bluetooth_connect:()=>Hd,communicate_bluetooth_disconnect:()=>Wd,communicate_bluetooth_handle:()=>zd,communicate_bluetooth_is_connected:()=>Jd,communicate_bluetooth_mac:()=>kd,communicate_bluetooth_peripheral_init:()=>Gd,communicate_bluetooth_recv:()=>Qd,communicate_bluetooth_recv_only:()=>qd,communicate_bluetooth_scan:()=>wd,communicate_bluetooth_send:()=>Kd,communicate_espnow_init:()=>jd,communicate_espnow_init_new:()=>Zd,communicate_i2c_available:()=>gd,communicate_i2c_init:()=>ad,communicate_i2c_master_read:()=>cd,communicate_i2c_onboard:()=>_d,communicate_i2c_read:()=>ud,communicate_i2c_scan:()=>ld,communicate_i2c_write:()=>rd,communicate_ir_recv_init:()=>Pd,communicate_ir_send_init:()=>Xd,communicate_ow_init:()=>Sd,communicate_ow_read:()=>Ld,communicate_ow_reset:()=>fd,communicate_ow_scan:()=>Ad,communicate_ow_select:()=>Dd,communicate_ow_write:()=>Nd,communicate_spi_buffer:()=>Td,communicate_spi_init:()=>dd,communicate_spi_onboard:()=>pd,communicate_spi_read:()=>hd,communicate_spi_read_output:()=>Md,communicate_spi_readinto:()=>md,communicate_spi_readinto_output:()=>Od,communicate_spi_set:()=>Id,communicate_spi_write:()=>Ed,communicate_spi_write_readinto:()=>Rd,espnow_radio_channel:()=>sI,espnow_radio_channel_new:()=>_I,espnow_radio_on_off:()=>pI,espnow_radio_rec:()=>uI,espnow_radio_recv:()=>lI,espnow_radio_recv_certain_msg:()=>dI,espnow_radio_recv_certain_msg_new:()=>TI,espnow_radio_recv_msg:()=>rI,espnow_radio_recv_new:()=>II,espnow_radio_send:()=>aI,espnow_radio_txpower:()=>oI,i2c_available:()=>bI,i2c_init:()=>gI,i2c_master_reader2:()=>XI,i2c_read:()=>CI,i2c_scan:()=>AI,i2c_slave_onreceive:()=>Cd,i2c_write:()=>SI,internal_variable:()=>Fd,ir_recv_timeout:()=>xd,ir_transmit_busy:()=>Bd,ir_transmit_conventional_data:()=>bd,ir_transmit_raw_code:()=>yd,ir_transmit_study_code:()=>Vd,ir_whether_recv:()=>Yd,lora_init:()=>hI,lora_packet:()=>MI,lora_recv:()=>OI,lora_send:()=>mI,network_espnow_info:()=>tI,network_espnow_mac:()=>$d,network_espnow_recv:()=>eI,network_espnow_recv_handle:()=>nI,network_espnow_send:()=>iI,recv_fun:()=>vd,spi_buffer:()=>DI,spi_init:()=>LI,spi_read:()=>fI,spi_read_output:()=>PI,spi_readinto:()=>FI,spi_readinto_output:()=>vI,spi_set:()=>NI,spi_write:()=>YI,spi_write_readinto:()=>xI,urequests_attribute:()=>RI,urequests_get:()=>EI,urequests_method:()=>cI});var Y={};t.r(Y),t.d(Y,{display_animate:()=>dT,display_blink_rate:()=>aT,display_circle:()=>IT,display_color_seclet:()=>AT,display_draw_4strings:()=>iT,display_fill:()=>lT,display_get_screen_image:()=>pT,display_help:()=>hT,display_image_size:()=>nT,display_lcd_use_i2c_init:()=>FT,display_line:()=>oT,display_line_arbitrarily:()=>_T,display_matrix_extern_bright_point:()=>QI,display_matrix_extern_bright_screen:()=>zI,display_matrix_extern_clear:()=>jI,display_matrix_extern_get_pixel:()=>JI,display_matrix_extern_get_screen_pixel:()=>qI,display_matrix_extern_image_builtins:()=>ZI,display_matrix_extern_scroll_string:()=>wI,display_matrix_extern_scroll_string_delay:()=>kI,display_matrix_extern_shift:()=>KI,display_matrix_extern_show_frame_string:()=>HI,display_matrix_extern_show_frame_string_delay:()=>WI,display_matrix_extern_show_image:()=>UI,display_matrix_extern_show_image_or_string_delay:()=>GI,display_matrix_use_i2c_init:()=>BI,display_oled_drawPixel:()=>mT,display_oled_showBitmap:()=>MT,display_oled_use_i2c_init:()=>bT,display_onoff:()=>rT,display_rect:()=>sT,display_rgb_color:()=>uT,display_tm1650_power:()=>ET,display_tm1650_set_brightness:()=>gT,display_tm1650_show_dot:()=>cT,display_tm1650_show_num:()=>RT,display_tm_use_i2c_init:()=>OT,display_triangle:()=>TT,display_use_i2c_init:()=>eT,extern_oled_bright_point:()=>JT,extern_oled_clear:()=>QT,extern_oled_get_pixel:()=>KT,extern_oled_hvline:()=>zT,extern_oled_line:()=>jT,extern_oled_scroll_string:()=>GT,extern_oled_scroll_string_delay:()=>wT,extern_oled_shape_rect:()=>qT,extern_oled_shift:()=>WT,extern_oled_show_frame_string:()=>kT,extern_oled_show_frame_string_delay:()=>HT,extern_oled_show_image:()=>VT,extern_oled_show_image_or_string_delay:()=>UT,extern_oled_show_image_xy:()=>yT,extern_oled_show_string:()=>BT,lcd_backlight:()=>xT,lcd_clear:()=>XT,lcd_print_string:()=>YT,lcd_show_image_or_string_delay:()=>vT,matrix_extern_image_arithmetic:()=>$I,matrix_extern_image_invert:()=>tT,tft_fill:()=>fT,tft_line_arbitrarily:()=>PT,tft_scroll_string_delay:()=>NT,tft_show_frame_string_delay:()=>DT,tft_show_image_or_string_delay:()=>LT,tft_show_image_xy:()=>ST,tft_use_spi_init:()=>CT});var x={};t.r(x),t.d(x,{bitbot_display_image_create:()=>bh,display_bright_point:()=>dh,display_bright_screen:()=>Th,display_clear:()=>hh,display_get_pixel:()=>lh,display_get_screen_pixel:()=>Ih,display_image_builtins:()=>_h,display_image_builtins_all:()=>ph,display_image_create:()=>oh,display_scroll_string:()=>eh,display_scroll_string_delay:()=>ih,display_shift:()=>rh,display_show_frame_string:()=>nh,display_show_frame_string_delay:()=>sh,display_show_image:()=>$T,display_show_image_or_string_delay:()=>th,image_arithmetic:()=>ah,image_invert:()=>uh,mixbot_display_bright_screen:()=>xh,mixbot_display_get_ambientbright:()=>Yh,mixbot_display_get_screen_pixel:()=>vh,mixbot_display_image_create:()=>Fh,mixbot_display_rotate:()=>Xh,mixgo_display_image_create_new:()=>Oh,mixgome_display_font:()=>Eh,mixgome_display_image_create:()=>Mh,mixgomini_display_image_create:()=>mh,mpython_display_hvline:()=>Dh,mpython_display_line:()=>fh,mpython_display_shape_rect:()=>Nh,mpython_pbm_image:()=>Ph,onboard_oled_bright_point:()=>Lh,onboard_oled_scroll_string_delay:()=>Sh,onboard_oled_show_frame_string_delay:()=>Ah,onboard_oled_show_image:()=>Rh,onboard_oled_show_image_or_string_delay:()=>Ch,onboard_oled_show_image_xy:()=>ch,onboard_oled_show_string:()=>gh,onboard_tft_bright_point:()=>qh,onboard_tft_bright_screen:()=>Zh,onboard_tft_clear:()=>zh,onboard_tft_clock_clear:()=>sM,onboard_tft_clock_draw:()=>nM,onboard_tft_clock_get_rtctime:()=>eM,onboard_tft_clock_init:()=>tM,onboard_tft_clock_set_time:()=>iM,onboard_tft_display_hvline:()=>Wh,onboard_tft_display_line:()=>Kh,onboard_tft_display_shape_circle:()=>oM,onboard_tft_display_shape_rect:()=>Hh,onboard_tft_fill:()=>$h,onboard_tft_get_pixel:()=>Qh,onboard_tft_get_screen_pixel:()=>jh,onboard_tft_scroll_string:()=>Uh,onboard_tft_scroll_string_delay:()=>Gh,onboard_tft_shift:()=>Jh,onboard_tft_show_frame_string:()=>wh,onboard_tft_show_frame_string_delay:()=>kh,onboard_tft_show_image:()=>Vh,onboard_tft_show_image_or_string_delay:()=>Bh,onboard_tft_show_image_xy:()=>yh});var X={};t.r(X),t.d(X,{factory_block:()=>MM,factory_block_return:()=>mM,factory_block_return_with_textarea:()=>EM,factory_block_with_textarea:()=>OM,factory_callMethod_noreturn:()=>TM,factory_callMethod_return:()=>hM,factory_create_with_container:()=>rM,factory_create_with_item:()=>lM,factory_declare:()=>IM,factory_from_import:()=>pM,factory_function_noreturn:()=>uM,factory_function_return:()=>dM,factory_import:()=>aM,folding_block:()=>RM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>wM,inout_analog_atten:()=>PM,inout_analog_read:()=>fM,inout_analog_read_init:()=>bM,inout_analog_write:()=>LM,inout_analog_write_init:()=>XM,inout_analog_write_set:()=>NM,inout_analog_write_set_freq:()=>BM,inout_digital_init:()=>YM,inout_digital_read:()=>SM,inout_digital_write:()=>CM,inout_highlow:()=>gM,inout_pinMode:()=>yM,inout_pin_attachInterrupt:()=>vM,inout_pin_pressed:()=>FM,inout_pin_pressed_init:()=>VM,inout_pwm_analog_write:()=>AM,inout_pwm_analog_write_init:()=>xM,inout_pwm_analog_write_set_freq:()=>DM,pin_pressed:()=>GM,pin_pressed_init:()=>UM});var V={};t.r(V),t.d(V,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>dm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>lm,IOT_EMQX_PING:()=>um,IOT_FORMATTING:()=>pm,IOT_FORMAT_STRING:()=>am,IOT_MIXIO_NTP:()=>rm,IOT_MIXIO_PUBLISH:()=>tm,IOT_MIXIO_SUBSCRIBE:()=>em,iot_checkonenet:()=>gm,iot_client_onboard:()=>Tm,iot_create_with_item:()=>ZM,iot_http_client:()=>hm,iot_http_data:()=>Mm,iot_mixio_check:()=>sm,iot_mixio_connect:()=>$M,iot_mixio_connect_only:()=>nm,iot_mixio_disconnect:()=>im,iot_mixio_format_msg:()=>_m,iot_mixio_format_topic:()=>om,iot_mixly_key:()=>Im,iot_mqtt_client:()=>mm,iot_mqtt_data:()=>Om,iot_onenet_check:()=>JM,iot_onenet_connect:()=>WM,iot_onenet_disconnect:()=>KM,iot_onenet_publish:()=>qM,iot_onenet_publish_dict:()=>QM,iot_onenetconnect:()=>Rm,iot_onenetdisconnect:()=>cm,iot_publish:()=>Cm,iot_publish_container:()=>zM,iot_publish_item:()=>jM,iot_wifi_connect:()=>HM,iot_wificonnect:()=>Em});var y={};t.r(y),t.d(y,{network_ap_connect:()=>ym,network_connect:()=>fm,network_get_connect:()=>Xm,network_get_wifi:()=>Vm,network_init:()=>Am,network_is_active:()=>Nm,network_open:()=>Lm,network_scan:()=>Dm,network_server:()=>Bm,network_socket_accept:()=>Hm,network_socket_bind:()=>Gm,network_socket_close:()=>qm,network_socket_connect:()=>wm,network_socket_init:()=>Um,network_socket_listen:()=>km,network_socket_receive:()=>Wm,network_socket_receive_from:()=>Jm,network_socket_send:()=>Km,network_socket_send_to:()=>Qm,network_stop:()=>bm,network_wifi_connect:()=>Pm,ntptime_address:()=>tO,ntptime_time:()=>$m,requests_attribute:()=>jm,requests_get:()=>zm,requests_method:()=>Zm,urequests_connect_url:()=>Ym,urequests_response:()=>xm,urequests_wifi_connect:()=>Fm,urequests_wifi_url:()=>vm});var B={};t.r(B),t.d(B,{get_potential_num:()=>iO,nova_g1_motor:()=>nO,nova_g1_spk_en:()=>oO,nova_g1_usb:()=>sO});var U={};t.r(U),t.d(U,{pe_g1_battery_left:()=>aO,pe_g1_dc_motor:()=>uO,pe_g1_dc_motor_speed:()=>rO,pe_g1_servo_get_angle:()=>IO,pe_g1_servo_get_speed:()=>TO,pe_g1_servo_set_angle:()=>lO,pe_g1_servo_set_speed:()=>dO,pe_g1_use_i2c_init:()=>pO});var G={};t.r(G),t.d(G,{HCSR04:()=>hE,PS2_Button:()=>EE,PS2_Buttons:()=>cE,PS2_Buttons_new:()=>AE,PS2_State:()=>RE,PS2_init:()=>ME,PS2_init_new:()=>CE,PS2_stk:()=>gE,PS2_stk_new:()=>LE,PS2_vibration:()=>OE,PS2_vibration_new:()=>SE,esp32_s2_weather_init:()=>lE,esp32_s2_weather_rain:()=>IE,esp32_s2_weather_wd:()=>dE,esp32_s2_weather_ws:()=>TE,extern_rfid_read:()=>jO,extern_rfid_readcontent:()=>$O,extern_rfid_readid:()=>ZO,extern_rfid_status:()=>iE,extern_rfid_write:()=>tE,extern_rfid_write_return:()=>eE,gnss_get_data:()=>PE,gnss_have_data:()=>fE,mixbot_sensor_extern_get_addr:()=>VE,mixbot_sensor_extern_set_addr:()=>yE,pm25_get_data:()=>DE,robot_button_extern_get_value:()=>FE,robot_color_extern_get_value:()=>bE,robot_infrared_extern_get_value:()=>YE,robot_infrared_extern_grey_get_value:()=>xE,robot_potentiometer_extern_get_value:()=>XE,robot_sonar_extern_get_value:()=>BE,robot_sonar_extern_led:()=>UE,robot_touch_extern_get_value:()=>vE,sensor_APDS9960_extern:()=>YO,sensor_LTR308_extern:()=>xO,sensor_LTR390UV_extern:()=>bO,sensor_MAX30102_extern:()=>vO,sensor_QMC5883L_extern:()=>GO,sensor_VL530LX_extern:()=>VO,sensor_adxl345_get_acceleration:()=>cO,sensor_aht11_extern:()=>BO,sensor_bmp:()=>NO,sensor_compass_reset:()=>qO,sensor_dht11:()=>CO,sensor_ds18x20:()=>fO,sensor_hp203_extern:()=>UO,sensor_light_level:()=>gO,sensor_lm35:()=>PO,sensor_ltr381_extern:()=>XO,sensor_mixgo_extern_button_attachInterrupt:()=>EO,sensor_mixgo_extern_button_get_presses:()=>OO,sensor_mixgo_extern_button_is_pressed:()=>MO,sensor_mixgo_extern_button_was_pressed:()=>mO,sensor_mixgo_extern_light:()=>SO,sensor_mixgo_extern_pin_near:()=>LO,sensor_mixgo_extern_sound:()=>AO,sensor_mixgoce_hot_wheel_degrees:()=>rE,sensor_mixgoce_hot_wheel_is_touched:()=>uE,sensor_mpu9250_attachGestureInterrupt:()=>RO,sensor_mpu9250_calibrate_compass:()=>KO,sensor_mpu9250_field_strength:()=>QO,sensor_mpu9250_gesture:()=>wO,sensor_mpu9250_get_acceleration:()=>kO,sensor_mpu9250_get_gyro:()=>WO,sensor_mpu9250_get_magnetic:()=>HO,sensor_mpu9250_temperature:()=>JO,sensor_sht:()=>DO,sensor_shtc3_extern:()=>yO,sensor_use_i2c_init:()=>FO,sensor_use_spi_init:()=>zO,sensor_use_uart_init:()=>NE,sensor_weather_solo_init:()=>GE,sensor_weather_solo_rain:()=>HE,sensor_weather_solo_wd:()=>wE,sensor_weather_solo_ws:()=>kE,weather_data:()=>nE,weather_have_data:()=>sE,weather_set_label:()=>_E,weather_set_label_container:()=>pE,weather_set_label_item:()=>aE,weather_uart_mixio:()=>oE});var w={};t.r(w),t.d(w,{HCSR04:()=>pR,RTC_set_date:()=>_R,RTC_set_time:()=>oR,bitbot_als_num:()=>dc,dht11:()=>Ec,number1:()=>uR,number2:()=>rR,number3:()=>lR,number4:()=>dR,number5:()=>IR,number6:()=>TR,number7:()=>hR,onboard_RTC_get_time:()=>gR,onboard_RTC_get_timestamp:()=>CR,onboard_RTC_set_datetime:()=>LR,onboard_RTC_settime_string:()=>AR,onboard_RTC_timestamp_totuple:()=>SR,rfid_readcontent:()=>xR,rfid_readid:()=>YR,rfid_write:()=>XR,rfid_write_return:()=>bR,sensor_LTR308:()=>DR,sensor_aht11:()=>PR,sensor_bitbot_ALS:()=>lc,sensor_button_get_presses:()=>hc,sensor_button_is_pressed:()=>Ic,sensor_button_was_pressed:()=>Tc,sensor_distance_hrsc04:()=>sR,sensor_eulerangles:()=>yR,sensor_field_strength:()=>Rc,sensor_get_acceleration:()=>VR,sensor_get_temperature:()=>FR,sensor_hp203:()=>vR,sensor_light:()=>Oc,sensor_mixbot_get_gyro:()=>rc,sensor_mixbot_patrol_calibrate:()=>pc,sensor_mixbot_patrol_value:()=>ac,sensor_mixbot_temperature:()=>uc,sensor_mixgo_LTR308:()=>cR,sensor_mixgo_button_attachInterrupt:()=>qE,sensor_mixgo_button_get_presses:()=>QE,sensor_mixgo_button_is_pressed:()=>KE,sensor_mixgo_button_was_pressed:()=>JE,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>qR,sensor_mixgo_cc_mmc5603_get_angle:()=>QR,sensor_mixgo_cc_mmc5603_get_magnetic:()=>JR,sensor_mixgo_light:()=>aR,sensor_mixgo_nova_LTR308:()=>RR,sensor_mixgo_nova_pin_near:()=>ER,sensor_mixgo_pin_near:()=>OR,sensor_mixgo_pin_near_double:()=>mR,sensor_mixgo_pin_near_single:()=>MR,sensor_mixgo_pin_pressed:()=>tR,sensor_mixgo_touch_slide:()=>nR,sensor_mixgocar42_button_attachInterrupt:()=>$E,sensor_mixgocar42_button_get_presses:()=>ZE,sensor_mixgocar42_button_is_pressed:()=>zE,sensor_mixgocar42_button_was_pressed:()=>jE,sensor_mixgocar_battery_left:()=>_c,sensor_mixgocar_pin_near:()=>sc,sensor_mixgocar_pin_near_line:()=>nc,sensor_mixgocar_pin_near_state_change:()=>oc,sensor_mixgoce_pin_pressed:()=>eR,sensor_mixgoce_temperature:()=>jR,sensor_mixgome_temperature:()=>zR,sensor_mpython_pin_pressed:()=>iR,sensor_mpython_qmi8658_get_gyro:()=>ZR,sensor_mpython_qmi8658_temperature:()=>$R,sensor_onboard_compass_reset:()=>KR,sensor_onboard_mpu9250_calibrate_compass:()=>kR,sensor_onboard_mpu9250_field_strength:()=>WR,sensor_onboard_mpu9250_gesture:()=>BR,sensor_onboard_mpu9250_get_acceleration:()=>UR,sensor_onboard_mpu9250_get_gyro:()=>wR,sensor_onboard_mpu9250_get_magnetic:()=>GR,sensor_onboard_mpu9250_temperature:()=>HR,sensor_pin_near:()=>mc,sensor_pin_pressed:()=>Mc,sensor_rm_acc:()=>ic,sensor_rm_battery_left:()=>ec,sensor_rm_pin_near_double:()=>tc,sensor_rtc_init:()=>NR,sensor_sound:()=>fR,sensor_temperature:()=>cc});var k={};t.r(k),t.d(k,{serial_any:()=>fc,serial_begin:()=>xc,serial_print:()=>Sc,serial_print_byte:()=>Cc,serial_print_hex:()=>Lc,serial_println:()=>Ac,serial_read_from_ai:()=>kc,serial_readline:()=>Pc,serial_readstr:()=>Dc,serial_readstr_until:()=>Fc,serial_receive_data_event:()=>Nc,serial_send_to_ai:()=>wc,serial_softserial:()=>Yc,serial_softserial_new:()=>vc,system_input:()=>Xc,system_print:()=>bc,system_print_container:()=>Uc,system_print_end:()=>yc,system_print_inline:()=>Vc,system_print_item:()=>Gc,system_print_many:()=>Bc});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>Jc,Timer_init:()=>_g,base_delay:()=>ug,controls_delay:()=>Kc,controls_delay_new:()=>Wc,controls_millis:()=>qc,controls_uname:()=>jc,raw_block:()=>zc,reset:()=>Qc,system_bitbot_shutdown:()=>og,system_machine_reset:()=>sg,system_ticks_diff:()=>tg,system_timer:()=>$c,system_timer_init:()=>eg,system_wdt_feed:()=>ng,system_wdt_init:()=>ig,time_ticks_diff:()=>ag,timer:()=>Zc,timer2:()=>pg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>dg,WEATHER_HOUR:()=>Ig,WEATHER_NOW:()=>lg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>Yg,actuator_extern_get_led_state:()=>xg,actuator_extern_led_bright:()=>vg,actuator_extern_led_brightness:()=>Xg,actuator_ms32006_dcmotor:()=>cg,actuator_ms32006_init:()=>Rg,actuator_ms32006_stepper:()=>gg,actuator_neopixel_init:()=>bg,actuator_neopixel_rgb:()=>Bg,actuator_neopixel_rgb_all:()=>Vg,actuator_neopixel_write:()=>yg,actuator_use_uart_init:()=>Ug,esp32_music_get_tempo_extern:()=>Dg,esp32_music_pitch:()=>Sg,esp32_music_pitch_init:()=>Cg,esp32_music_pitch_with_time:()=>Ag,esp32_music_play_list:()=>fg,esp32_music_reset_extern:()=>Pg,esp32_music_set_tempo_extern:()=>Ng,esp32_music_stop:()=>Lg,mixbot_actuator_extern_get_addr:()=>sC,mixbot_actuator_extern_set_addr:()=>oC,mixbot_addr_extern:()=>Wg,robot_led_extern:()=>qg,robot_led_extern_get_value:()=>zg,robot_motor_extern:()=>Kg,robot_motor_extern_get_speed:()=>Jg,robot_servo_extern_absolute_run:()=>tC,robot_servo_extern_get_status:()=>jg,robot_servo_extern_relative_continue:()=>nC,robot_servo_extern_relative_origin:()=>eC,robot_servo_extern_relative_run:()=>iC,robot_servo_extern_stop:()=>$g,robot_servo_extern_stop_mode:()=>Zg,robot_traffic_light_extern:()=>Qg,servo_get_angle:()=>Og,servo_get_speed:()=>Eg,servo_init:()=>Tg,servo_move:()=>Fg,servo_set_angle:()=>Mg,servo_set_speed:()=>mg,servo_speed_360:()=>hg,syn6288_builtin_voice:()=>kg,syn6288_get_voice:()=>wg,syn6288_set_voice:()=>Gg,syn6288_tts_play:()=>Hg});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>YC,actuator_dc_motor_stop:()=>xC,actuator_get_led_bright:()=>MC,actuator_get_led_state:()=>mC,actuator_led_bright:()=>hC,actuator_led_brightness:()=>OC,actuator_mixbot_buzzer_on_off:()=>BC,actuator_mixgo_nova_mic_get:()=>HC,actuator_mixgo_nova_mic_set:()=>kC,actuator_mixgo_nova_onboard_music_pitch:()=>zC,actuator_mixgo_nova_onboard_music_stop:()=>jC,actuator_mixgo_nova_play_audio:()=>QC,actuator_mixgo_nova_play_online_audio:()=>qC,actuator_mixgo_nova_record_audio:()=>JC,actuator_mixgo_nova_voice_get:()=>KC,actuator_mixgo_nova_voice_set:()=>WC,actuator_mixgo_zero_led_color:()=>EC,actuator_onboard_neopixel_rgb:()=>LC,actuator_onboard_neopixel_rgb_all:()=>NC,actuator_onboard_neopixel_rgb_show_all_chase:()=>DC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>fC,actuator_onboard_neopixel_write:()=>AC,actuator_stepper_keep:()=>FC,actuator_stepper_stop:()=>vC,analog_keyboard_input:()=>eS,analog_keyboard_str:()=>_S,analog_mouse_input:()=>sS,bitbot_motor:()=>wC,bitbot_move:()=>UC,bitbot_stop:()=>GC,cc_number:()=>RC,esp32_music_get_tempo:()=>pC,esp32_music_reset:()=>dC,esp32_music_set_tempo:()=>_C,esp32_onboard_music_pitch:()=>aC,esp32_onboard_music_pitch_with_time:()=>uC,esp32_onboard_music_play_list:()=>lC,esp32_onboard_music_stop:()=>rC,general_key:()=>nS,get_power_output:()=>$C,ledswitch:()=>TC,mixbot_motor:()=>yC,mixbot_motor_status:()=>XC,mixbot_move:()=>bC,mixbot_stop:()=>VC,mouse_key:()=>oS,number:()=>IC,rm_actuator_get_led_bright:()=>gC,rm_actuator_get_led_state:()=>CC,rm_actuator_led_bright:()=>cC,rm_actuator_led_brightness:()=>SC,rm_motor:()=>PC,set_all_power_output:()=>tS,set_power_output:()=>ZC,special_key:()=>iS});var Q={};t.r(Q),t.d(Q,{ai_sensor_20object:()=>BS,ai_sensor_ailocal_class:()=>DS,ai_sensor_ailocal_class_result:()=>fS,ai_sensor_ailocal_train:()=>NS,ai_sensor_asr_recognize:()=>xS,ai_sensor_audio_play:()=>FS,ai_sensor_audio_record:()=>PS,ai_sensor_barcode:()=>IS,ai_sensor_circle:()=>ES,ai_sensor_classifier_faces:()=>yS,ai_sensor_color:()=>CS,ai_sensor_color_chases:()=>LS,ai_sensor_color_chases_result:()=>AS,ai_sensor_config:()=>uS,ai_sensor_face:()=>VS,ai_sensor_find_20objects:()=>US,ai_sensor_find_barcodes:()=>TS,ai_sensor_find_circles:()=>RS,ai_sensor_find_colors:()=>SS,ai_sensor_find_licenseplates:()=>bS,ai_sensor_find_lines:()=>OS,ai_sensor_find_qrcodes:()=>dS,ai_sensor_find_rects:()=>gS,ai_sensor_find_tags:()=>MS,ai_sensor_licenseplate:()=>XS,ai_sensor_line:()=>mS,ai_sensor_qrcode:()=>lS,ai_sensor_qrcode_lite:()=>aS,ai_sensor_rect:()=>cS,ai_sensor_rgb:()=>rS,ai_sensor_tag:()=>hS,ai_sensor_use_uart_init:()=>pS,ai_sensor_yolo_recognize:()=>vS,ai_sensor_yolo_recognize_result:()=>YS});var q={};t.r(q),t.d(q,{MICROPYTHON_AI_Speech_asr:()=>kS,MICROPYTHON_AI_Speech_unit:()=>wS,MICROPYTHON_AI_client:()=>GS});var z={};t.r(z),t.d(z,{mpython_blynk_app_data:()=>eA,mpython_blynk_app_notify:()=>zS,mpython_blynk_email:()=>iA,mpython_blynk_get_timers:()=>ZS,mpython_blynk_on_connected:()=>JS,mpython_blynk_on_disconnected:()=>KS,mpython_blynk_run:()=>qS,mpython_blynk_sensor_data_to_app:()=>tA,mpython_blynk_set_property:()=>nA,mpython_blynk_setup:()=>sA,mpython_blynk_stop_timers:()=>jS,mpython_blynk_sync_virtual:()=>WS,mpython_blynk_terminal_widget_vpin:()=>HS,mpython_blynktimer:()=>$S,mpython_blynktimer_run:()=>QS});var j={};t.r(j),t.d(j,{communicate_bluetooth_central_init:()=>BA,communicate_bluetooth_connect:()=>wA,communicate_bluetooth_disconnect:()=>kA,communicate_bluetooth_handle:()=>qA,communicate_bluetooth_is_connected:()=>WA,communicate_bluetooth_mac:()=>HA,communicate_bluetooth_peripheral_init:()=>UA,communicate_bluetooth_recv:()=>QA,communicate_bluetooth_recv_only:()=>JA,communicate_bluetooth_scan:()=>GA,communicate_bluetooth_send:()=>KA,communicate_espnow_init:()=>zA,communicate_espnow_init_new:()=>jA,communicate_i2c_available:()=>dA,communicate_i2c_init:()=>pA,communicate_i2c_master_read:()=>lA,communicate_i2c_onboard:()=>oA,communicate_i2c_read:()=>aA,communicate_i2c_scan:()=>rA,communicate_i2c_write:()=>uA,communicate_ir_recv_init:()=>fA,communicate_ir_send_init:()=>xA,communicate_ow_init:()=>CA,communicate_ow_read:()=>LA,communicate_ow_reset:()=>AA,communicate_ow_scan:()=>SA,communicate_ow_select:()=>DA,communicate_ow_write:()=>NA,communicate_spi_buffer:()=>MA,communicate_spi_init:()=>TA,communicate_spi_onboard:()=>_A,communicate_spi_read:()=>mA,communicate_spi_read_output:()=>OA,communicate_spi_readinto:()=>EA,communicate_spi_readinto_output:()=>RA,communicate_spi_set:()=>hA,communicate_spi_write:()=>cA,communicate_spi_write_readinto:()=>gA,espnow_radio_channel:()=>nL,espnow_radio_channel_new:()=>oL,espnow_radio_on_off:()=>_L,espnow_radio_rec:()=>aL,espnow_radio_recv:()=>rL,espnow_radio_recv_certain_msg:()=>lL,espnow_radio_recv_certain_msg_new:()=>IL,espnow_radio_recv_msg:()=>uL,espnow_radio_recv_new:()=>dL,espnow_radio_send:()=>pL,espnow_radio_txpower:()=>sL,i2c_slave_onreceive:()=>IA,internal_variable:()=>PA,ir_recv_timeout:()=>YA,ir_transmit_busy:()=>yA,ir_transmit_conventional_data:()=>XA,ir_transmit_raw_code:()=>VA,ir_transmit_study_code:()=>bA,ir_whether_recv:()=>vA,lora_init:()=>TL,lora_packet:()=>hL,lora_recv:()=>mL,lora_send:()=>ML,network_espnow_info:()=>$A,network_espnow_mac:()=>ZA,network_espnow_recv:()=>tL,network_espnow_recv_handle:()=>iL,network_espnow_send:()=>eL,recv_fun:()=>FA,urequests_attribute:()=>EL,urequests_get:()=>OL,urequests_method:()=>RL});var Z={};t.r(Z),t.d(Z,{display_animate:()=>WL,display_circle:()=>KL,display_color_seclet:()=>nN,display_draw_4strings:()=>yL,display_fill:()=>HL,display_lcd_use_i2c_init:()=>uN,display_line:()=>GL,display_line_arbitrarily:()=>BL,display_matrix_extern_bright_point:()=>FL,display_matrix_extern_bright_screen:()=>YL,display_matrix_extern_clear:()=>DL,display_matrix_extern_get_pixel:()=>PL,display_matrix_extern_get_screen_pixel:()=>vL,display_matrix_extern_image_builtins:()=>xL,display_matrix_extern_scroll_string:()=>LL,display_matrix_extern_scroll_string_delay:()=>NL,display_matrix_extern_shift:()=>fL,display_matrix_extern_show_frame_string:()=>SL,display_matrix_extern_show_frame_string_delay:()=>AL,display_matrix_extern_show_image:()=>gL,display_matrix_extern_show_image_or_string_delay:()=>CL,display_matrix_use_i2c_init:()=>cL,display_oled_drawPixel:()=>qL,display_oled_showBitmap:()=>QL,display_oled_use_i2c_init:()=>TN,display_onoff:()=>wL,display_rect:()=>UL,display_tm1650_power:()=>jL,display_tm1650_set_brightness:()=>tN,display_tm1650_show_dot:()=>$L,display_tm1650_show_num:()=>ZL,display_tm_use_i2c_init:()=>zL,display_triangle:()=>JL,display_use_i2c_init:()=>VL,extern_oled_bright_point:()=>LN,extern_oled_clear:()=>CN,extern_oled_get_pixel:()=>AN,extern_oled_hvline:()=>DN,extern_oled_line:()=>fN,extern_oled_scroll_string:()=>cN,extern_oled_scroll_string_delay:()=>gN,extern_oled_shape_rect:()=>NN,extern_oled_shift:()=>SN,extern_oled_show_frame_string:()=>EN,extern_oled_show_frame_string_delay:()=>RN,extern_oled_show_image:()=>hN,extern_oled_show_image_or_string_delay:()=>ON,extern_oled_show_image_xy:()=>MN,extern_oled_show_string:()=>mN,image_shift:()=>kL,lcd_backlight:()=>dN,lcd_clear:()=>IN,lcd_print_string:()=>lN,lcd_show_image_or_string_delay:()=>rN,matrix_extern_image_arithmetic:()=>XL,matrix_extern_image_invert:()=>bL,tft_fill:()=>pN,tft_line_arbitrarily:()=>aN,tft_scroll_string_delay:()=>_N,tft_show_frame_string_delay:()=>oN,tft_show_image_or_string_delay:()=>sN,tft_show_image_xy:()=>iN,tft_use_spi_init:()=>eN});var $={};t.r($),t.d($,{bitbot_display_image_create:()=>ID,display_bright_point:()=>HN,display_bright_screen:()=>KN,display_clear:()=>BN,display_get_pixel:()=>kN,display_get_screen_pixel:()=>WN,display_image_builtins:()=>bN,display_image_builtins_all:()=>VN,display_image_create:()=>yN,display_scroll_string:()=>xN,display_scroll_string_delay:()=>XN,display_shift:()=>wN,display_show_frame_string:()=>vN,display_show_frame_string_delay:()=>YN,display_show_image:()=>PN,display_show_image_or_string_delay:()=>FN,image_arithmetic:()=>UN,image_invert:()=>GN,mixbot_display_bright_screen:()=>lD,mixbot_display_get_ambientbright:()=>rD,mixbot_display_get_screen_pixel:()=>uD,mixbot_display_image_create:()=>aD,mixbot_display_rotate:()=>dD,mixgo_display_image_create_new:()=>zN,mixgome_display_font:()=>qN,mixgome_display_image_create:()=>JN,mixgomini_display_image_create:()=>QN,mpython_display_hvline:()=>_D,mpython_display_line:()=>pD,mpython_display_shape_rect:()=>oD,mpython_pbm_image:()=>jN,onboard_oled_bright_point:()=>sD,onboard_oled_scroll_string_delay:()=>nD,onboard_oled_show_frame_string_delay:()=>iD,onboard_oled_show_image:()=>ZN,onboard_oled_show_image_or_string_delay:()=>eD,onboard_oled_show_image_xy:()=>$N,onboard_oled_show_string:()=>tD,onboard_tft_bright_point:()=>ND,onboard_tft_bright_screen:()=>fD,onboard_tft_clear:()=>SD,onboard_tft_clock_clear:()=>XD,onboard_tft_clock_draw:()=>xD,onboard_tft_clock_get_rtctime:()=>vD,onboard_tft_clock_init:()=>FD,onboard_tft_clock_set_time:()=>YD,onboard_tft_display_hvline:()=>gD,onboard_tft_display_line:()=>CD,onboard_tft_display_shape_circle:()=>bD,onboard_tft_display_shape_rect:()=>cD,onboard_tft_fill:()=>PD,onboard_tft_get_pixel:()=>LD,onboard_tft_get_screen_pixel:()=>DD,onboard_tft_scroll_string:()=>ED,onboard_tft_scroll_string_delay:()=>RD,onboard_tft_shift:()=>AD,onboard_tft_show_frame_string:()=>mD,onboard_tft_show_frame_string_delay:()=>OD,onboard_tft_show_image:()=>TD,onboard_tft_show_image_or_string_delay:()=>MD,onboard_tft_show_image_xy:()=>hD});var tt={};t.r(tt),t.d(tt,{factory_block:()=>HD,factory_block_return:()=>WD,factory_block_return_with_textarea:()=>JD,factory_block_with_textarea:()=>KD,factory_callMethod_noreturn:()=>wD,factory_callMethod_return:()=>kD,factory_declare:()=>GD,factory_from_import:()=>VD,factory_function_noreturn:()=>BD,factory_function_return:()=>UD,factory_import:()=>yD,folding_block:()=>QD});var et={};t.r(et),t.d(et,{inout_analog_atten:()=>rf,inout_analog_read:()=>nf,inout_analog_read_init:()=>uf,inout_analog_write:()=>$D,inout_analog_write_init:()=>af,inout_analog_write_set:()=>tf,inout_digital_init:()=>_f,inout_digital_read:()=>jD,inout_digital_write:()=>zD,inout_highlow:()=>qD,inout_pin_attachInterrupt:()=>of,inout_pin_pressed:()=>sf,inout_pin_pressed_init:()=>lf,inout_pwm_analog_write:()=>ZD,inout_pwm_analog_write_init:()=>pf,inout_pwm_analog_write_set_freq:()=>ef});var it={};t.r(it),t.d(it,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>Pf,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Df,IOT_EMQX_PING:()=>Ff,IOT_FORMATTING:()=>Lf,IOT_FORMAT_STRING:()=>Nf,IOT_MIXIO_NTP:()=>vf,IOT_MIXIO_PUBLISH:()=>Ef,IOT_MIXIO_SUBSCRIBE:()=>Rf,iot_client_onboard:()=>Yf,iot_http_client:()=>xf,iot_http_data:()=>Xf,iot_mixio_check:()=>Cf,iot_mixio_connect:()=>Of,iot_mixio_connect_only:()=>gf,iot_mixio_disconnect:()=>cf,iot_mixio_format_msg:()=>Af,iot_mixio_format_topic:()=>Sf,iot_mixly_key:()=>ff,iot_mqtt_client:()=>bf,iot_mqtt_data:()=>Vf,iot_onenet_check:()=>Mf,iot_onenet_connect:()=>If,iot_onenet_disconnect:()=>Tf,iot_onenet_publish:()=>mf,iot_onenet_publish_dict:()=>hf,iot_wifi_connect:()=>df});var nt={};t.r(nt),t.d(nt,{network_ap_connect:()=>Kf,network_connect:()=>Bf,network_get_connect:()=>Gf,network_get_wifi:()=>Wf,network_init:()=>yf,network_is_active:()=>Hf,network_open:()=>kf,network_scan:()=>Jf,network_server:()=>Qf,network_socket_accept:()=>$f,network_socket_bind:()=>zf,network_socket_close:()=>sP,network_socket_connect:()=>jf,network_socket_init:()=>qf,network_socket_listen:()=>Zf,network_socket_receive:()=>tP,network_socket_receive_from:()=>iP,network_socket_send:()=>eP,network_socket_send_to:()=>nP,network_stop:()=>wf,network_wifi_connect:()=>Uf,ntptime_address:()=>uP,ntptime_time:()=>aP,requests_attribute:()=>_P,requests_get:()=>oP,requests_method:()=>pP,urequests_connect_url:()=>dP,urequests_response:()=>IP,urequests_wifi_connect:()=>rP,urequests_wifi_url:()=>lP});var st={};t.r(st),t.d(st,{get_potential_num:()=>TP,nova_g1_motor:()=>hP,nova_g1_spk_en:()=>mP,nova_g1_usb:()=>MP});var ot={};t.r(ot),t.d(ot,{pe_g1_battery_left:()=>EP,pe_g1_dc_motor:()=>RP,pe_g1_dc_motor_speed:()=>cP,pe_g1_servo_get_angle:()=>SP,pe_g1_servo_get_speed:()=>AP,pe_g1_servo_set_angle:()=>gP,pe_g1_servo_set_speed:()=>CP,pe_g1_use_i2c_init:()=>OP});var _t={};t.r(_t),t.d(_t,{HCSR04:()=>TF,PS2_Button:()=>mF,PS2_Buttons:()=>OF,PS2_Buttons_new:()=>LF,PS2_State:()=>EF,PS2_init:()=>hF,PS2_init_new:()=>SF,PS2_stk:()=>RF,PS2_stk_new:()=>NF,PS2_vibration:()=>MF,PS2_vibration_new:()=>AF,RTC_get_time:()=>gF,RTC_set_date:()=>YP,RTC_set_datetime:()=>cF,RTC_set_time:()=>vP,esp32_s2_weather_init:()=>rF,esp32_s2_weather_rain:()=>dF,esp32_s2_weather_wd:()=>lF,esp32_s2_weather_ws:()=>IF,extern_rfid_read:()=>ZP,extern_rfid_readcontent:()=>tF,extern_rfid_readid:()=>$P,extern_rfid_status:()=>nF,extern_rfid_write:()=>eF,extern_rfid_write_return:()=>iF,gnss_get_data:()=>PF,gnss_have_data:()=>FF,mixbot_sensor_extern_get_addr:()=>UF,mixbot_sensor_extern_set_addr:()=>GF,pm25_get_data:()=>fF,robot_button_extern_get_value:()=>vF,robot_color_extern_get_value:()=>VF,robot_infrared_extern_get_value:()=>xF,robot_infrared_extern_grey_get_value:()=>XF,robot_potentiometer_extern_get_value:()=>bF,robot_sonar_extern_get_value:()=>yF,robot_sonar_extern_led:()=>BF,robot_touch_extern_get_value:()=>YF,sensor_APDS9960_extern:()=>wP,sensor_LTR308_extern:()=>kP,sensor_LTR390UV_extern:()=>KP,sensor_MAX30102_extern:()=>GP,sensor_QMC5883L_extern:()=>JP,sensor_VL530LX_extern:()=>zP,sensor_aht11_extern:()=>qP,sensor_bmp:()=>yP,sensor_dht11:()=>CF,sensor_distance_hrsc04:()=>FP,sensor_hp203_extern:()=>HP,sensor_ltr381_extern:()=>WP,sensor_mixgo_extern_button_attachInterrupt:()=>fP,sensor_mixgo_extern_button_get_presses:()=>DP,sensor_mixgo_extern_button_is_pressed:()=>LP,sensor_mixgo_extern_button_was_pressed:()=>NP,sensor_mixgo_extern_light:()=>xP,sensor_mixgo_extern_pin_near:()=>bP,sensor_mixgo_extern_sound:()=>XP,sensor_mixgoce_hot_wheel_degrees:()=>uF,sensor_mixgoce_hot_wheel_is_touched:()=>aF,sensor_mpu9250_attachGestureInterrupt:()=>PP,sensor_rtc_init:()=>VP,sensor_sht:()=>BP,sensor_shtc3_extern:()=>QP,sensor_use_i2c_init:()=>UP,sensor_use_spi_init:()=>jP,sensor_use_uart_init:()=>DF,sensor_weather_solo_init:()=>wF,sensor_weather_solo_rain:()=>WF,sensor_weather_solo_wd:()=>kF,sensor_weather_solo_ws:()=>HF,weather_data:()=>sF,weather_have_data:()=>oF,weather_set_label:()=>pF,weather_uart_mixio:()=>_F});var pt={};t.r(pt),t.d(pt,{HCSR04:()=>tv,bitbot_als_num:()=>OY,dht11:()=>LY,number1:()=>ev,number2:()=>iv,number3:()=>nv,number4:()=>sv,number5:()=>ov,number6:()=>_v,number7:()=>pv,onboard_RTC_get_time:()=>zv,onboard_RTC_get_timestamp:()=>jv,onboard_RTC_set_datetime:()=>Qv,onboard_RTC_settime_string:()=>qv,onboard_RTC_timestamp_totuple:()=>Zv,rfid_readcontent:()=>gv,rfid_readid:()=>cv,rfid_write:()=>Cv,rfid_write_return:()=>Sv,sensor_LTR308:()=>Mv,sensor_adxl345_get_acceleration:()=>Yv,sensor_aht11:()=>Ev,sensor_bitbot_ALS:()=>mY,sensor_button_get_presses:()=>cY,sensor_button_is_pressed:()=>EY,sensor_button_was_pressed:()=>RY,sensor_compass_reset:()=>Bv,sensor_ds18x20:()=>Tv,sensor_eulerangles:()=>Lv,sensor_get_acceleration:()=>Av,sensor_get_temperature:()=>Rv,sensor_hp203:()=>Ov,sensor_light:()=>AY,sensor_lm35:()=>hv,sensor_mixbot_get_gyro:()=>MY,sensor_mixbot_patrol_calibrate:()=>IY,sensor_mixbot_patrol_value:()=>TY,sensor_mixbot_temperature:()=>hY,sensor_mixgo_LTR308:()=>dv,sensor_mixgo_button_attachInterrupt:()=>qF,sensor_mixgo_button_get_presses:()=>QF,sensor_mixgo_button_is_pressed:()=>KF,sensor_mixgo_button_was_pressed:()=>JF,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>eY,sensor_mixgo_cc_mmc5603_get_angle:()=>tY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>$v,sensor_mixgo_light:()=>SY,sensor_mixgo_nova_LTR308:()=>Iv,sensor_mixgo_nova_pin_near:()=>lv,sensor_mixgo_pin_near:()=>rv,sensor_mixgo_pin_near_double:()=>uv,sensor_mixgo_pin_near_single:()=>av,sensor_mixgo_pin_pressed:()=>Fv,sensor_mixgo_touch_slide:()=>Pv,sensor_mixgocar42_button_attachInterrupt:()=>$F,sensor_mixgocar42_button_get_presses:()=>ZF,sensor_mixgocar42_button_is_pressed:()=>zF,sensor_mixgocar42_button_was_pressed:()=>jF,sensor_mixgocar_battery_left:()=>dY,sensor_mixgocar_pin_near:()=>rY,sensor_mixgocar_pin_near_line:()=>uY,sensor_mixgocar_pin_near_state_change:()=>lY,sensor_mixgoce_pin_pressed:()=>fv,sensor_mixgoce_temperature:()=>nY,sensor_mixgome_temperature:()=>iY,sensor_mpu9250_calibrate_compass:()=>bv,sensor_mpu9250_field_strength:()=>yv,sensor_mpu9250_gesture:()=>Nv,sensor_mpu9250_get_acceleration:()=>Dv,sensor_mpu9250_get_gyro:()=>Xv,sensor_mpu9250_get_magnetic:()=>xv,sensor_mpu9250_temperature:()=>Vv,sensor_mpython_pin_pressed:()=>vv,sensor_mpython_qmi8658_get_gyro:()=>sY,sensor_mpython_qmi8658_temperature:()=>oY,sensor_onboard_compass_reset:()=>Jv,sensor_onboard_mpu9250_calibrate_compass:()=>Hv,sensor_onboard_mpu9250_field_strength:()=>Kv,sensor_onboard_mpu9250_gesture:()=>Uv,sensor_onboard_mpu9250_get_acceleration:()=>Gv,sensor_onboard_mpu9250_get_gyro:()=>kv,sensor_onboard_mpu9250_get_magnetic:()=>wv,sensor_onboard_mpu9250_temperature:()=>Wv,sensor_pin_near:()=>CY,sensor_pin_pressed:()=>gY,sensor_rm_acc:()=>aY,sensor_rm_battery_left:()=>pY,sensor_rm_pin_near_double:()=>_Y,sensor_sound:()=>mv});var at={};t.r(at),t.d(at,{serial_any:()=>FY,serial_print:()=>NY,serial_print_byte:()=>DY,serial_print_hex:()=>PY,serial_println:()=>fY,serial_read_from_ai:()=>wY,serial_readline:()=>YY,serial_readstr:()=>vY,serial_send_to_ai:()=>GY,serial_softserial:()=>xY,serial_softserial_new:()=>XY,system_input:()=>bY,system_print:()=>VY,system_print_end:()=>BY,system_print_inline:()=>yY,system_print_many:()=>UY});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>tx,Timer_init:()=>hx,base_delay:()=>Ox,controls_delay:()=>ox,controls_delay_new:()=>_x,controls_end_program:()=>ix,controls_millis:()=>ex,controls_uname:()=>sx,reset:()=>nx,system_bitbot_shutdown:()=>Tx,system_device_name:()=>ZY,system_device_serial_number:()=>$Y,system_event_bus_source:()=>zY,system_event_bus_value:()=>jY,system_machine_reset:()=>Ix,system_on_event:()=>JY,system_raise_event:()=>KY,system_reset:()=>HY,system_run_in_background:()=>kY,system_ticks_diff:()=>ux,system_timer:()=>ax,system_timer_init:()=>rx,system_timestamp:()=>QY,system_value:()=>qY,system_wait:()=>WY,system_wdt_feed:()=>dx,system_wdt_init:()=>lx,time_ticks_diff:()=>mx,timer:()=>px,timer2:()=>Mx});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>Rx,WEATHER_HOUR:()=>cx,WEATHER_NOW:()=>Ex});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>Wx,inout_analog_atten:()=>Yx,inout_analog_read:()=>vx,inout_analog_read_init:()=>Bx,inout_analog_write:()=>fx,inout_analog_write_init:()=>yx,inout_analog_write_set:()=>Px,inout_analog_write_set_freq:()=>wx,inout_digital_init:()=>bx,inout_digital_read:()=>Nx,inout_digital_write:()=>Lx,inout_highlow:()=>Ax,inout_pinMode:()=>Gx,inout_pin_attachInterrupt:()=>Xx,inout_pin_pressed:()=>xx,inout_pin_pressed_init:()=>Ux,inout_pwm_analog_write:()=>Dx,inout_pwm_analog_write_init:()=>Vx,inout_pwm_analog_write_set_freq:()=>Fx,pin_pressed:()=>Hx,pin_pressed_init:()=>kx});var dt={};t.r(dt),t.d(dt,{analog_input:()=>tX,analog_output:()=>iX,espnow_channel:()=>jx,haskylens_model:()=>Zx,i2c_A_pin:()=>nX,i2c_B_pin:()=>sX,pins_analog:()=>uX,pins_analog_pin:()=>rX,pins_axis:()=>NX,pins_brightness:()=>DX,pins_builtinimg:()=>RX,pins_builtinimg_extern:()=>cX,pins_button:()=>IX,pins_buttonB:()=>TX,pins_dac:()=>lX,pins_dac_pin:()=>dX,pins_digital:()=>Jx,pins_digital_dot:()=>bX,pins_digital_pin:()=>Qx,pins_exlcdh:()=>AX,pins_exlcdv:()=>LX,pins_imglist:()=>gX,pins_input_pin:()=>qx,pins_one_more:()=>XX,pins_output_pin:()=>zx,pins_playlist:()=>CX,pins_playlist_extern:()=>SX,pins_pwm:()=>hX,pins_pwm_pin:()=>MX,pins_radio_datarate:()=>xX,pins_radio_power:()=>YX,pins_serial:()=>EX,pins_tone_notes:()=>vX,pins_touch:()=>OX,pins_touch_pin:()=>mX,pins_tts_bgmusic:()=>FX,pins_tts_builtin_music:()=>PX,pins_tts_voice:()=>fX,pwm_input:()=>$x,pwm_output:()=>eX,spi_A_pin:()=>oX,spi_B_pin:()=>_X,spi_C_pin:()=>pX,spi_D_pin:()=>aX});var It={};t.r(It),t.d(It,{inout_analog_atten:()=>jX,inout_analog_read:()=>HX,inout_analog_read_init:()=>zX,inout_analog_write:()=>GX,inout_analog_write_init:()=>qX,inout_analog_write_set:()=>wX,inout_digital_init:()=>JX,inout_digital_read:()=>BX,inout_digital_write:()=>yX,inout_highlow:()=>VX,inout_pin_attachInterrupt:()=>KX,inout_pin_pressed:()=>WX,inout_pin_pressed_init:()=>ZX,inout_pwm_analog_write:()=>UX,inout_pwm_analog_write_init:()=>QX,inout_pwm_analog_write_set_freq:()=>kX});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>ab,analog_output:()=>rb,espnow_channel:()=>_b,haskylens_model:()=>pb,i2c_A_pin:()=>lb,i2c_B_pin:()=>db,pins_analog:()=>Ob,pins_analog_pin:()=>mb,pins_axis:()=>vb,pins_brightness:()=>Xb,pins_builtinimg:()=>Nb,pins_builtinimg_extern:()=>Db,pins_button:()=>tb,pins_buttonB:()=>eb,pins_dac:()=>gb,pins_dac_pin:()=>cb,pins_digital:()=>$X,pins_digital_dot:()=>kb,pins_digital_pin:()=>ib,pins_exlcdh:()=>Yb,pins_exlcdv:()=>xb,pins_imglist:()=>fb,pins_input_pin:()=>nb,pins_interrupt:()=>Ab,pins_one_more:()=>wb,pins_output_pin:()=>sb,pins_playlist:()=>Pb,pins_playlist_extern:()=>Fb,pins_pwm:()=>Rb,pins_pwm_input:()=>ob,pins_pwm_pin:()=>Eb,pins_radio_datarate:()=>Gb,pins_radio_power:()=>Ub,pins_serial:()=>Lb,pins_tone_notes:()=>Bb,pins_touch:()=>Sb,pins_touch_pin:()=>Cb,pins_tts_bgmusic:()=>yb,pins_tts_builtin_music:()=>Vb,pins_tts_voice:()=>bb,pwm_output:()=>ub,spi_A_pin:()=>Ib,spi_B_pin:()=>Tb,spi_C_pin:()=>hb,spi_D_pin:()=>Mb});const ht=Blockly,Mt=Mixly,mt={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Ot=mt; +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Lt,controls_typeLists:()=>Nt,variables_change:()=>St,variables_get:()=>gt,variables_global:()=>At,variables_set:()=>Ct});var i={};t.r(i),t.d(i,{base_setup:()=>Pt,controls_delay:()=>Ft,controls_end_program:()=>vt,controls_except:()=>Wt,controls_finally:()=>Kt,controls_flow_statements:()=>yt,controls_for:()=>Bt,controls_forEach:()=>Xt,controls_for_range:()=>Gt,controls_if:()=>Yt,controls_if_else:()=>kt,controls_if_elseif:()=>wt,controls_if_if:()=>Ut,controls_lambda:()=>Qt,controls_main:()=>ft,controls_pass:()=>qt,controls_range:()=>xt,controls_repeat_ext:()=>Jt,controls_thread:()=>zt,controls_try:()=>Ht,controls_try_finally:()=>Vt,controls_whileUntil:()=>bt,do_while:()=>jt,garbage_collection:()=>Zt,get_mem_alloc:()=>$t,get_mem_free:()=>te,get_unique_identifier:()=>ee});var n={};t.r(n),t.d(n,{base_map:()=>ge,math_arithmetic:()=>_e,math_bit:()=>ae,math_constant:()=>se,math_constant_mp:()=>oe,math_constrain:()=>he,math_dec:()=>re,math_indexer_number:()=>me,math_map:()=>Me,math_max_min:()=>de,math_number:()=>ne,math_number_base_conversion:()=>Ie,math_random:()=>Te,math_random_seed:()=>Oe,math_round:()=>Ee,math_selfcalcu:()=>pe,math_to_int:()=>le,math_trig:()=>ue,text_to_number:()=>Re,text_to_number_skulpt:()=>ce});var s={};t.r(s),t.d(s,{ascii_to_char:()=>De,char_to_ascii:()=>fe,number_to_text:()=>Pe,os_system:()=>ei,text:()=>Se,text_capital:()=>Be,text_center:()=>Ge,text_char:()=>Le,text_char_at:()=>Ye,text_char_at2:()=>ve,text_char_at3:()=>je,text_compareTo:()=>ze,text_compare_to:()=>ye,text_create_with_container:()=>Je,text_create_with_item:()=>Qe,text_encode:()=>$e,text_equals_starts_ends:()=>Ve,text_eval:()=>ti,text_find:()=>Ue,text_format:()=>Ke,text_format_noreturn:()=>Ze,text_join:()=>Ne,text_join_seq:()=>we,text_length:()=>Fe,text_random_char:()=>xe,text_replace:()=>ke,text_split:()=>He,text_strip:()=>We,text_substring:()=>be,text_substring2:()=>Xe,text_substring3:()=>qe,text_textarea:()=>Ae});var o={};t.r(o),t.d(o,{list_many_input:()=>Si,list_tolist:()=>Fi,list_tolist2:()=>Bi,list_trig:()=>ci,lists_2d_get_col_row_data:()=>_i,lists_2d_get_data_with_col_row:()=>oi,lists_append_extend:()=>di,lists_change_to:()=>Ci,lists_change_to_general:()=>Li,lists_clear:()=>mi,lists_create_with:()=>pi,lists_create_with2:()=>vi,lists_create_with_container:()=>ui,lists_create_with_item:()=>ri,lists_create_with_noreturn:()=>Ai,lists_create_with_text:()=>ai,lists_create_with_text2:()=>Yi,lists_del_general:()=>Ni,lists_find:()=>Ri,lists_getIndex3:()=>xi,lists_getSublist3:()=>Xi,lists_get_index:()=>ni,lists_get_random_item:()=>Ii,lists_get_random_sublist:()=>Ti,lists_get_sublist:()=>si,lists_insert_value:()=>hi,lists_insert_value2:()=>Vi,lists_pop:()=>Ei,lists_remove_at:()=>Oi,lists_remove_at2:()=>yi,lists_reverse:()=>Mi,lists_setIndex3:()=>bi,lists_set_index:()=>li,lists_sort:()=>gi,lists_zip:()=>Di,lists_zip_container:()=>fi,lists_zip_item:()=>Pi});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>en,dicts_add_or_change:()=>Ji,dicts_clear:()=>zi,dicts_create_with:()=>Ui,dicts_create_with_container:()=>wi,dicts_create_with_item:()=>ki,dicts_create_with_noreturn:()=>on,dicts_deldict:()=>tn,dicts_delete:()=>Qi,dicts_get:()=>Wi,dicts_get_default:()=>Ki,dicts_items:()=>ji,dicts_keys:()=>Hi,dicts_length:()=>$i,dicts_pop:()=>nn,dicts_setdefault:()=>sn,dicts_to_json:()=>pn,dicts_todict:()=>_n,dicts_update:()=>qi,dicts_values:()=>Zi,json_to_dicts:()=>an});var p={};t.r(p),t.d(p,{logic_boolean:()=>Tn,logic_compare:()=>rn,logic_compare_continous:()=>ln,logic_is:()=>On,logic_is_in:()=>mn,logic_negate:()=>In,logic_null:()=>hn,logic_operation:()=>dn,logic_tobool:()=>En,logic_true_or_false:()=>Mn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>wn,sdcard_use_spi_init:()=>Un,storage_can_write_ornot:()=>Dn,storage_change_dir:()=>Bn,storage_close_file:()=>Pn,storage_delete_file:()=>vn,storage_file_seek:()=>Xn,storage_file_tell:()=>xn,storage_file_write:()=>Sn,storage_fileopen:()=>cn,storage_fileopen_new:()=>gn,storage_fileopen_new_encoding:()=>Cn,storage_get_a_line:()=>Nn,storage_get_contents:()=>Ln,storage_get_contents_without_para:()=>An,storage_get_current_dir:()=>bn,storage_get_file_size:()=>Yn,storage_get_filename:()=>fn,storage_is_file:()=>Gn,storage_list_all_files:()=>Fn,storage_make_dir:()=>Vn,storage_open_file_with_os:()=>Rn,storage_rename:()=>yn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>qn,procedures_callreturn:()=>zn,procedures_defnoreturn:()=>Wn,procedures_defreturn:()=>Kn,procedures_ifreturn:()=>jn,procedures_mutatorarg:()=>Qn,procedures_mutatorcontainer:()=>Jn,procedures_return:()=>Zn});var r={};t.r(r),t.d(r,{tuple_change_to:()=>rs,tuple_create_with:()=>ts,tuple_create_with_container:()=>es,tuple_create_with_item:()=>is,tuple_create_with_noreturn:()=>Ts,tuple_create_with_text2:()=>ns,tuple_create_with_text_return:()=>ss,tuple_del:()=>ps,tuple_find:()=>ls,tuple_getIndex:()=>os,tuple_getSublist:()=>Is,tuple_get_random_item:()=>Ms,tuple_get_sublist:()=>hs,tuple_join:()=>as,tuple_length:()=>_s,tuple_max:()=>us,tuple_totuple:()=>ms,tuple_trig:()=>ds});var l={};t.r(l),t.d(l,{set_add_discard:()=>Ns,set_clear:()=>Ss,set_create_with:()=>Es,set_create_with_container:()=>Rs,set_create_with_item:()=>cs,set_create_with_text_return:()=>Ps,set_length:()=>gs,set_operate:()=>As,set_operate_update:()=>Ls,set_pop:()=>Cs,set_sub:()=>Ds,set_toset:()=>Fs,set_update:()=>fs});var d={};t.r(d),t.d(d,{html_content:()=>bs,html_content_more:()=>Vs,html_document:()=>Ys,html_form:()=>Bs,html_head_body:()=>Xs,html_style:()=>ys,html_style_color:()=>Us,html_style_content:()=>Gs,html_text:()=>ws,html_title:()=>xs});var I={};t.r(I),t.d(I,{attribute_access:()=>io,function_call:()=>$s,function_call_container:()=>to,function_call_item:()=>eo,raw_block:()=>Ws,raw_empty:()=>Js,raw_expression:()=>Ks,raw_table:()=>Hs,text_comment:()=>Qs,text_print_multiple:()=>zs,text_print_multiple_container:()=>js,text_print_multiple_item:()=>Zs,type_check:()=>qs});var T={};t.r(T),t.d(T,{controls_type:()=>po,controls_typeLists:()=>ao,variables_change:()=>oo,variables_get:()=>no,variables_global:()=>_o,variables_set:()=>so});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>Eo,base_setup:()=>ro,controls_delay:()=>Oo,controls_flow_statements:()=>mo,controls_for:()=>To,controls_forEach:()=>So,controls_for_range:()=>ho,controls_if:()=>lo,controls_interrupts:()=>go,controls_lambda:()=>Lo,controls_main:()=>uo,controls_millis:()=>Ro,controls_nointerrupts:()=>Co,controls_pass:()=>Do,controls_range:()=>Ao,controls_repeat:()=>bo,controls_repeat_ext:()=>Fo,controls_thread:()=>fo,controls_try_finally:()=>Io,controls_whileUntil:()=>Mo,do_while:()=>Po,garbage_collection:()=>vo,get_mem_alloc:()=>Yo,get_mem_free:()=>xo,get_unique_identifier:()=>Xo,reset:()=>co,time_sleep:()=>No});var M={};t.r(M),t.d(M,{base_map:()=>n_,math_arithmetic:()=>Uo,math_bit:()=>Go,math_constant:()=>yo,math_constant_mp:()=>Bo,math_constrain:()=>zo,math_dec:()=>Wo,math_indexer_number:()=>$o,math_map:()=>qo,math_max_min:()=>Jo,math_number:()=>Vo,math_number_base_conversion:()=>jo,math_random:()=>Qo,math_random_seed:()=>Zo,math_round:()=>t_,math_selfcalcu:()=>wo,math_single:()=>ko,math_to_int:()=>Ko,math_trig:()=>Ho,text_to_number:()=>e_,text_to_number_skulpt:()=>i_});var m={};t.r(m),t.d(m,{ascii_to_char:()=>a_,char_to_ascii:()=>u_,number_to_text:()=>r_,os_system:()=>Y_,text:()=>s_,text_capital:()=>E_,text_center:()=>R_,text_char:()=>__,text_char_at:()=>I_,text_char_at2:()=>d_,text_char_at3:()=>P_,text_compareTo:()=>f_,text_compare_to:()=>M_,text_encode:()=>F_,text_equals_starts_ends:()=>h_,text_eval:()=>v_,text_find:()=>c_,text_format:()=>L_,text_format_noreturn:()=>N_,text_join:()=>p_,text_join_seq:()=>g_,text_length:()=>l_,text_random_char:()=>T_,text_replace:()=>C_,text_split:()=>S_,text_strip:()=>A_,text_substring:()=>O_,text_substring2:()=>m_,text_substring3:()=>D_,text_textarea:()=>o_});var O={};t.r(O),t.d(O,{list_many_input:()=>$_,list_tolist:()=>lp,list_tolist2:()=>dp,list_trig:()=>z_,lists_2d_get_col_row_data:()=>b_,lists_2d_get_data_with_col_row:()=>X_,lists_append_extend:()=>U_,lists_change_to:()=>Z_,lists_change_to_general:()=>ep,lists_clear:()=>K_,lists_create_with:()=>V_,lists_create_with2:()=>np,lists_create_with_noreturn:()=>tp,lists_create_with_text:()=>y_,lists_create_with_text2:()=>sp,lists_del_general:()=>ip,lists_find:()=>J_,lists_getIndex3:()=>op,lists_getSublist3:()=>_p,lists_get_index:()=>B_,lists_get_random_item:()=>w_,lists_get_random_sublist:()=>k_,lists_get_sublist:()=>x_,lists_insert_value:()=>H_,lists_insert_value2:()=>ap,lists_pop:()=>q_,lists_remove_at:()=>Q_,lists_remove_at2:()=>up,lists_reverse:()=>W_,lists_setIndex3:()=>pp,lists_set_index:()=>G_,lists_sort:()=>j_,lists_zip:()=>rp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Ap,dicts_add_or_change:()=>mp,dicts_clear:()=>Rp,dicts_create_with:()=>Ip,dicts_create_with_noreturn:()=>Dp,dicts_deldict:()=>Sp,dicts_delete:()=>Op,dicts_get:()=>hp,dicts_get_default:()=>Mp,dicts_items:()=>cp,dicts_keys:()=>Tp,dicts_length:()=>Cp,dicts_pop:()=>Lp,dicts_setdefault:()=>Np,dicts_to_json:()=>Pp,dicts_todict:()=>fp,dicts_update:()=>Ep,dicts_values:()=>gp,json_to_dicts:()=>Fp});var R={};t.r(R),t.d(R,{logic_boolean:()=>bp,logic_compare:()=>vp,logic_compare_continous:()=>Yp,logic_is:()=>Gp,logic_is_in:()=>Bp,logic_negate:()=>Xp,logic_null:()=>Vp,logic_operation:()=>xp,logic_tobool:()=>Up,logic_true_or_false:()=>yp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>ra,sdcard_use_spi_init:()=>ua,storage_can_write_ornot:()=>zp,storage_change_dir:()=>sa,storage_close_file:()=>Zp,storage_delete_file:()=>ta,storage_file_seek:()=>na,storage_file_tell:()=>ia,storage_file_write:()=>Kp,storage_fileopen:()=>kp,storage_fileopen_new:()=>Hp,storage_fileopen_new_encoding:()=>Wp,storage_get_a_line:()=>qp,storage_get_contents:()=>Qp,storage_get_contents_without_para:()=>Jp,storage_get_current_dir:()=>oa,storage_get_file_size:()=>ea,storage_get_filename:()=>jp,storage_is_file:()=>aa,storage_list_all_files:()=>$p,storage_make_dir:()=>_a,storage_open_file_with_os:()=>wp,storage_rename:()=>pa});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>Ta,procedures_callreturn:()=>Ia,procedures_defnoreturn:()=>da,procedures_defreturn:()=>la,procedures_ifreturn:()=>ha,procedures_return:()=>Ma});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Aa,tuple_create_with:()=>ma,tuple_create_with_noreturn:()=>fa,tuple_create_with_text2:()=>Oa,tuple_create_with_text_return:()=>Ea,tuple_del:()=>ga,tuple_find:()=>La,tuple_getIndex:()=>Ra,tuple_getSublist:()=>Da,tuple_get_random_item:()=>Fa,tuple_get_sublist:()=>Pa,tuple_join:()=>Ca,tuple_length:()=>ca,tuple_max:()=>Sa,tuple_totuple:()=>va,tuple_trig:()=>Na});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ba,set_clear:()=>ba,set_create_with:()=>Ya,set_create_with_text_return:()=>wa,set_length:()=>xa,set_operate:()=>Va,set_operate_update:()=>ya,set_pop:()=>Xa,set_sub:()=>Ga,set_toset:()=>ka,set_update:()=>Ua});var A={};t.r(A),t.d(A,{html_content:()=>Ja,html_content_more:()=>Qa,html_document:()=>Ha,html_form:()=>za,html_head_body:()=>Ka,html_style:()=>qa,html_style_content:()=>ja,html_text:()=>Za,html_title:()=>Wa});var L={};t.r(L),t.d(L,{attribute_access:()=>ou,function_call:()=>su,raw_block:()=>$a,raw_empty:()=>eu,raw_expression:()=>tu,raw_table:()=>iu,type_check:()=>nu});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>mu,actuator_extern_get_led_state:()=>Ou,actuator_extern_led_bright:()=>Mu,actuator_extern_led_brightness:()=>Eu,actuator_ms32006_dcmotor:()=>Du,actuator_ms32006_init:()=>Nu,actuator_ms32006_stepper:()=>fu,actuator_neopixel_init:()=>Pu,actuator_neopixel_rgb:()=>Fu,actuator_neopixel_rgb_all:()=>vu,actuator_neopixel_write:()=>Yu,actuator_use_uart_init:()=>xu,esp32_music_get_tempo_extern:()=>Iu,esp32_music_pitch:()=>uu,esp32_music_pitch_init:()=>au,esp32_music_pitch_with_time:()=>ru,esp32_music_play_list:()=>lu,esp32_music_reset_extern:()=>Tu,esp32_music_set_tempo_extern:()=>du,esp32_music_stop:()=>hu,mixbot_actuator_extern_get_addr:()=>Zu,mixbot_actuator_extern_set_addr:()=>$u,mixbot_addr_extern:()=>Bu,robot_led_extern:()=>ku,robot_led_extern_get_value:()=>Hu,robot_motor_extern:()=>Gu,robot_motor_extern_get_speed:()=>Uu,robot_servo_extern_absolute_run:()=>Qu,robot_servo_extern_get_status:()=>Wu,robot_servo_extern_relative_continue:()=>ju,robot_servo_extern_relative_origin:()=>qu,robot_servo_extern_relative_run:()=>zu,robot_servo_extern_stop:()=>Ju,robot_servo_extern_stop_mode:()=>Ku,robot_traffic_light_extern:()=>wu,servo_get_angle:()=>Au,servo_get_speed:()=>Lu,servo_init:()=>Ru,servo_move:()=>cu,servo_set_angle:()=>Cu,servo_set_speed:()=>Su,servo_speed_360:()=>gu,syn6288_builtin_voice:()=>Vu,syn6288_get_voice:()=>bu,syn6288_set_voice:()=>Xu,syn6288_tts_play:()=>yu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Fr,actuator_dc_motor_stop:()=>vr,actuator_get_led_bright:()=>sr,actuator_get_led_state:()=>or,actuator_led_bright:()=>nr,actuator_led_brightness:()=>_r,actuator_mixbot_buzzer_on_off:()=>Vr,actuator_mixgo_nova_mic_get:()=>wr,actuator_mixgo_nova_mic_set:()=>Ur,actuator_mixgo_nova_onboard_music_pitch:()=>Qr,actuator_mixgo_nova_onboard_music_stop:()=>qr,actuator_mixgo_nova_play_audio:()=>Kr,actuator_mixgo_nova_play_online_audio:()=>Jr,actuator_mixgo_nova_record_audio:()=>Wr,actuator_mixgo_nova_voice_get:()=>Hr,actuator_mixgo_nova_voice_set:()=>kr,actuator_mixgo_zero_led_color:()=>pr,actuator_onboard_neopixel_rgb:()=>Ir,actuator_onboard_neopixel_rgb_all:()=>Tr,actuator_onboard_neopixel_rgb_show_all_chase:()=>Mr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>hr,actuator_onboard_neopixel_write:()=>mr,actuator_rm_onboard_neopixel_rgb:()=>Or,actuator_rm_onboard_neopixel_rgb_all:()=>Er,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Rr,actuator_stepper_keep:()=>fr,actuator_stepper_stop:()=>Pr,analog_keyboard_input:()=>$r,analog_keyboard_str:()=>pl,analog_mouse_input:()=>ol,bitbot_motor:()=>Gr,bitbot_move:()=>yr,bitbot_stop:()=>Br,cc_number:()=>dr,esp32_music_get_tempo:()=>gr,esp32_music_reset:()=>Cr,esp32_music_set_tempo:()=>cr,esp32_onboard_music_pitch:()=>Sr,esp32_onboard_music_pitch_with_time:()=>Ar,esp32_onboard_music_play_list:()=>Nr,esp32_onboard_music_stop:()=>Lr,general_key:()=>el,general_key_tuple:()=>il,generalkey_container:()=>nl,generalkey_create_with_item:()=>sl,get_power_output:()=>jr,ledswitch:()=>ir,mixbot_motor:()=>br,mixbot_motor_status:()=>Yr,mixbot_move:()=>xr,mixbot_stop:()=>Xr,mouse_key:()=>_l,number:()=>er,rm_actuator_get_led_bright:()=>ur,rm_actuator_get_led_state:()=>rr,rm_actuator_led_bright:()=>ar,rm_actuator_led_brightness:()=>lr,rm_motor:()=>Dr,set_all_power_output:()=>Zr,set_power_output:()=>zr,special_key:()=>tl});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>Ul,ai_sensor_ailocal_class:()=>Pl,ai_sensor_ailocal_class_result:()=>Fl,ai_sensor_ailocal_train:()=>fl,ai_sensor_asr_recognize:()=>bl,ai_sensor_audio_play:()=>Yl,ai_sensor_audio_record:()=>vl,ai_sensor_barcode:()=>hl,ai_sensor_circle:()=>cl,ai_sensor_classifier_faces:()=>Gl,ai_sensor_color:()=>Al,ai_sensor_color_chases:()=>Dl,ai_sensor_color_chases_result:()=>Nl,ai_sensor_config:()=>Il,ai_sensor_face:()=>Bl,ai_sensor_find_20objects:()=>wl,ai_sensor_find_barcodes:()=>Ml,ai_sensor_find_circles:()=>gl,ai_sensor_find_colors:()=>Ll,ai_sensor_find_licenseplates:()=>yl,ai_sensor_find_lines:()=>Rl,ai_sensor_find_qrcodes:()=>dl,ai_sensor_find_rects:()=>Sl,ai_sensor_find_tags:()=>Ol,ai_sensor_licenseplate:()=>Vl,ai_sensor_line:()=>El,ai_sensor_qrcode:()=>rl,ai_sensor_qrcode_lite:()=>ll,ai_sensor_rect:()=>Cl,ai_sensor_rgb:()=>Tl,ai_sensor_tag:()=>ml,ai_sensor_use_uart_init:()=>ul,ai_sensor_yolo_recognize:()=>xl,ai_sensor_yolo_recognize_result:()=>Xl});var P={};t.r(P),t.d(P,{MICROPYTHON_AI_Speech_asr:()=>Wl,MICROPYTHON_AI_Speech_unit:()=>Hl,MICROPYTHON_AI_client:()=>kl});var F={};t.r(F),t.d(F,{mpython_blynk_app_data:()=>_d,mpython_blynk_app_notify:()=>$l,mpython_blynk_email:()=>id,mpython_blynk_get_timers:()=>nd,mpython_blynk_on_connected:()=>zl,mpython_blynk_on_disconnected:()=>ql,mpython_blynk_run:()=>Zl,mpython_blynk_sensor_data_to_app:()=>od,mpython_blynk_set_property:()=>ed,mpython_blynk_setup:()=>pd,mpython_blynk_stop_timers:()=>td,mpython_blynk_sync_virtual:()=>Ql,mpython_blynk_terminal_widget_vpin:()=>Jl,mpython_blynktimer:()=>sd,mpython_blynktimer_run:()=>jl});var v={};t.r(v),t.d(v,{communicate_bluetooth_central_init:()=>kd,communicate_bluetooth_connect:()=>Jd,communicate_bluetooth_disconnect:()=>Qd,communicate_bluetooth_handle:()=>$d,communicate_bluetooth_is_connected:()=>zd,communicate_bluetooth_mac:()=>Kd,communicate_bluetooth_peripheral_init:()=>Hd,communicate_bluetooth_recv:()=>jd,communicate_bluetooth_recv_only:()=>Zd,communicate_bluetooth_scan:()=>Wd,communicate_bluetooth_send:()=>qd,communicate_espnow_init:()=>tI,communicate_espnow_init_new:()=>eI,communicate_i2c_available:()=>Ad,communicate_i2c_init:()=>ld,communicate_i2c_master_read:()=>Sd,communicate_i2c_onboard:()=>ud,communicate_i2c_read:()=>dd,communicate_i2c_scan:()=>Td,communicate_i2c_write:()=>Id,communicate_ir_recv_init:()=>Yd,communicate_ir_send_init:()=>yd,communicate_ow_init:()=>Nd,communicate_ow_read:()=>fd,communicate_ow_reset:()=>vd,communicate_ow_scan:()=>Dd,communicate_ow_select:()=>Fd,communicate_ow_write:()=>Pd,communicate_spi_buffer:()=>md,communicate_spi_init:()=>hd,communicate_spi_onboard:()=>rd,communicate_spi_read:()=>Od,communicate_spi_read_output:()=>Ed,communicate_spi_readinto:()=>Rd,communicate_spi_readinto_output:()=>cd,communicate_spi_set:()=>Md,communicate_spi_write:()=>gd,communicate_spi_write_readinto:()=>Cd,espnow_radio_channel:()=>pI,espnow_radio_channel_new:()=>uI,espnow_radio_on_off:()=>rI,espnow_radio_rec:()=>dI,espnow_radio_recv:()=>TI,espnow_radio_recv_certain_msg:()=>hI,espnow_radio_recv_certain_msg_new:()=>mI,espnow_radio_recv_msg:()=>II,espnow_radio_recv_new:()=>MI,espnow_radio_send:()=>lI,espnow_radio_txpower:()=>aI,i2c_available:()=>BI,i2c_init:()=>AI,i2c_master_reader2:()=>yI,i2c_read:()=>LI,i2c_scan:()=>DI,i2c_slave_onreceive:()=>Ld,i2c_write:()=>NI,internal_variable:()=>xd,ir_recv_timeout:()=>Vd,ir_transmit_busy:()=>wd,ir_transmit_conventional_data:()=>Bd,ir_transmit_raw_code:()=>Ud,ir_transmit_study_code:()=>Gd,ir_whether_recv:()=>bd,lora_init:()=>OI,lora_packet:()=>EI,lora_recv:()=>cI,lora_send:()=>RI,network_espnow_info:()=>nI,network_espnow_mac:()=>iI,network_espnow_recv:()=>sI,network_espnow_recv_handle:()=>_I,network_espnow_send:()=>oI,recv_fun:()=>Xd,spi_buffer:()=>FI,spi_init:()=>fI,spi_read:()=>vI,spi_read_output:()=>YI,spi_readinto:()=>xI,spi_readinto_output:()=>XI,spi_set:()=>PI,spi_write:()=>bI,spi_write_readinto:()=>VI,urequests_attribute:()=>CI,urequests_get:()=>gI,urequests_method:()=>SI});var Y={};t.r(Y),t.d(Y,{display_animate:()=>hT,display_blink_rate:()=>lT,display_circle:()=>MT,display_color_seclet:()=>DT,display_draw_4strings:()=>oT,display_fill:()=>TT,display_get_screen_image:()=>rT,display_help:()=>OT,display_image_size:()=>_T,display_lcd_use_i2c_init:()=>xT,display_line:()=>aT,display_line_arbitrarily:()=>uT,display_matrix_extern_bright_point:()=>jI,display_matrix_extern_bright_screen:()=>$I,display_matrix_extern_clear:()=>tT,display_matrix_extern_get_pixel:()=>zI,display_matrix_extern_get_screen_pixel:()=>ZI,display_matrix_extern_image_builtins:()=>eT,display_matrix_extern_scroll_string:()=>WI,display_matrix_extern_scroll_string_delay:()=>KI,display_matrix_extern_shift:()=>qI,display_matrix_extern_show_frame_string:()=>JI,display_matrix_extern_show_frame_string_delay:()=>QI,display_matrix_extern_show_image:()=>kI,display_matrix_extern_show_image_or_string_delay:()=>HI,display_matrix_use_i2c_init:()=>wI,display_oled_drawPixel:()=>RT,display_oled_showBitmap:()=>ET,display_oled_use_i2c_init:()=>BT,display_onoff:()=>IT,display_rect:()=>pT,display_rgb_color:()=>dT,display_tm1650_power:()=>gT,display_tm1650_set_brightness:()=>AT,display_tm1650_show_dot:()=>ST,display_tm1650_show_num:()=>CT,display_tm_use_i2c_init:()=>cT,display_triangle:()=>mT,display_use_i2c_init:()=>sT,extern_oled_bright_point:()=>zT,extern_oled_clear:()=>jT,extern_oled_get_pixel:()=>qT,extern_oled_hvline:()=>$T,extern_oled_line:()=>th,extern_oled_scroll_string:()=>HT,extern_oled_scroll_string_delay:()=>WT,extern_oled_shape_rect:()=>ZT,extern_oled_shift:()=>QT,extern_oled_show_frame_string:()=>KT,extern_oled_show_frame_string_delay:()=>JT,extern_oled_show_image:()=>GT,extern_oled_show_image_or_string_delay:()=>kT,extern_oled_show_image_xy:()=>UT,extern_oled_show_string:()=>wT,lcd_backlight:()=>VT,lcd_clear:()=>yT,lcd_print_string:()=>bT,lcd_show_image_or_string_delay:()=>XT,matrix_extern_image_arithmetic:()=>iT,matrix_extern_image_invert:()=>nT,tft_fill:()=>vT,tft_line_arbitrarily:()=>YT,tft_scroll_string_delay:()=>PT,tft_show_frame_string_delay:()=>FT,tft_show_image_or_string_delay:()=>fT,tft_show_image_xy:()=>NT,tft_use_spi_init:()=>LT});var x={};t.r(x),t.d(x,{bitbot_display_image_create:()=>Bh,display_bright_point:()=>hh,display_bright_screen:()=>mh,display_clear:()=>Oh,display_get_pixel:()=>Th,display_get_screen_pixel:()=>Mh,display_image_builtins:()=>uh,display_image_builtins_all:()=>rh,display_image_create:()=>ah,display_scroll_string:()=>sh,display_scroll_string_delay:()=>oh,display_shift:()=>Ih,display_show_frame_string:()=>_h,display_show_frame_string_delay:()=>ph,display_show_image:()=>ih,display_show_image_or_string_delay:()=>nh,image_arithmetic:()=>lh,image_invert:()=>dh,mixbot_display_bright_screen:()=>Vh,mixbot_display_get_ambientbright:()=>bh,mixbot_display_get_screen_pixel:()=>Xh,mixbot_display_image_create:()=>xh,mixbot_display_rotate:()=>yh,mixgo_display_image_create_new:()=>ch,mixgome_display_font:()=>gh,mixgome_display_image_create:()=>Eh,mixgomini_display_image_create:()=>Rh,mpython_display_hvline:()=>Fh,mpython_display_line:()=>vh,mpython_display_shape_rect:()=>Ph,mpython_pbm_image:()=>Yh,onboard_oled_bright_point:()=>fh,onboard_oled_scroll_string_delay:()=>Nh,onboard_oled_show_frame_string_delay:()=>Dh,onboard_oled_show_image:()=>Ch,onboard_oled_show_image_or_string_delay:()=>Lh,onboard_oled_show_image_xy:()=>Sh,onboard_oled_show_string:()=>Ah,onboard_tft_bright_point:()=>Zh,onboard_tft_bright_screen:()=>eM,onboard_tft_clear:()=>$h,onboard_tft_clock_clear:()=>pM,onboard_tft_clock_draw:()=>_M,onboard_tft_clock_get_rtctime:()=>sM,onboard_tft_clock_init:()=>nM,onboard_tft_clock_set_time:()=>oM,onboard_tft_display_hvline:()=>Qh,onboard_tft_display_line:()=>qh,onboard_tft_display_shape_circle:()=>aM,onboard_tft_display_shape_rect:()=>Jh,onboard_tft_fill:()=>iM,onboard_tft_get_pixel:()=>jh,onboard_tft_get_screen_pixel:()=>tM,onboard_tft_scroll_string:()=>kh,onboard_tft_scroll_string_delay:()=>Hh,onboard_tft_shift:()=>zh,onboard_tft_show_frame_string:()=>Wh,onboard_tft_show_frame_string_delay:()=>Kh,onboard_tft_show_image:()=>Gh,onboard_tft_show_image_or_string_delay:()=>wh,onboard_tft_show_image_xy:()=>Uh});var X={};t.r(X),t.d(X,{factory_block:()=>EM,factory_block_return:()=>RM,factory_block_return_with_textarea:()=>gM,factory_block_with_textarea:()=>cM,factory_callMethod_noreturn:()=>mM,factory_callMethod_return:()=>OM,factory_create_with_container:()=>IM,factory_create_with_item:()=>TM,factory_declare:()=>MM,factory_from_import:()=>rM,factory_function_noreturn:()=>dM,factory_function_return:()=>hM,factory_import:()=>lM,folding_block:()=>CM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>WM,inout_analog_atten:()=>YM,inout_analog_read:()=>vM,inout_analog_read_init:()=>BM,inout_analog_write:()=>fM,inout_analog_write_init:()=>yM,inout_analog_write_set:()=>PM,inout_analog_write_set_freq:()=>wM,inout_digital_init:()=>bM,inout_digital_read:()=>NM,inout_digital_write:()=>LM,inout_highlow:()=>AM,inout_pinMode:()=>UM,inout_pin_attachInterrupt:()=>XM,inout_pin_pressed:()=>xM,inout_pin_pressed_init:()=>GM,inout_pwm_analog_write:()=>DM,inout_pwm_analog_write_init:()=>VM,inout_pwm_analog_write_set_freq:()=>FM,pin_pressed:()=>HM,pin_pressed_init:()=>kM});var V={};t.r(V),t.d(V,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>hm,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>Tm,IOT_EMQX_PING:()=>dm,IOT_FORMATTING:()=>rm,IOT_FORMAT_STRING:()=>lm,IOT_MIXIO_NTP:()=>Im,IOT_MIXIO_PUBLISH:()=>nm,IOT_MIXIO_SUBSCRIBE:()=>sm,iot_checkonenet:()=>Am,iot_client_onboard:()=>mm,iot_create_with_item:()=>em,iot_http_client:()=>Om,iot_http_data:()=>Em,iot_mixio_check:()=>pm,iot_mixio_connect:()=>im,iot_mixio_connect_only:()=>_m,iot_mixio_disconnect:()=>om,iot_mixio_format_msg:()=>um,iot_mixio_format_topic:()=>am,iot_mixly_key:()=>Mm,iot_mqtt_client:()=>Rm,iot_mqtt_data:()=>cm,iot_onenet_check:()=>zM,iot_onenet_connect:()=>QM,iot_onenet_disconnect:()=>qM,iot_onenet_publish:()=>ZM,iot_onenet_publish_dict:()=>jM,iot_onenetconnect:()=>Cm,iot_onenetdisconnect:()=>Sm,iot_publish:()=>Lm,iot_publish_container:()=>$M,iot_publish_item:()=>tm,iot_wifi_connect:()=>JM,iot_wificonnect:()=>gm});var y={};t.r(y),t.d(y,{network_ap_connect:()=>Um,network_connect:()=>vm,network_get_connect:()=>ym,network_get_wifi:()=>Gm,network_init:()=>Dm,network_is_active:()=>Pm,network_open:()=>fm,network_scan:()=>Fm,network_server:()=>wm,network_socket_accept:()=>Jm,network_socket_bind:()=>Hm,network_socket_close:()=>Zm,network_socket_connect:()=>Wm,network_socket_init:()=>km,network_socket_listen:()=>Km,network_socket_receive:()=>Qm,network_socket_receive_from:()=>zm,network_socket_send:()=>qm,network_socket_send_to:()=>jm,network_stop:()=>Bm,network_wifi_connect:()=>Ym,ntptime_address:()=>nO,ntptime_time:()=>iO,requests_attribute:()=>tO,requests_get:()=>$m,requests_method:()=>eO,urequests_connect_url:()=>bm,urequests_response:()=>Vm,urequests_wifi_connect:()=>xm,urequests_wifi_url:()=>Xm});var B={};t.r(B),t.d(B,{get_potential_num:()=>oO,nova_g1_motor:()=>_O,nova_g1_spk_en:()=>aO,nova_g1_usb:()=>pO});var G={};t.r(G),t.d(G,{pe_g1_battery_left:()=>lO,pe_g1_dc_motor:()=>dO,pe_g1_dc_motor_speed:()=>IO,pe_g1_servo_get_angle:()=>MO,pe_g1_servo_get_speed:()=>mO,pe_g1_servo_set_angle:()=>TO,pe_g1_servo_set_speed:()=>hO,pe_g1_use_i2c_init:()=>rO});var U={};t.r(U),t.d(U,{HCSR04:()=>OE,PS2_Button:()=>gE,PS2_Buttons:()=>SE,PS2_Buttons_new:()=>DE,PS2_State:()=>CE,PS2_init:()=>EE,PS2_init_new:()=>LE,PS2_stk:()=>AE,PS2_stk_new:()=>fE,PS2_vibration:()=>cE,PS2_vibration_new:()=>NE,esp32_s2_weather_init:()=>TE,esp32_s2_weather_rain:()=>ME,esp32_s2_weather_wd:()=>hE,esp32_s2_weather_ws:()=>mE,extern_rfid_read:()=>tE,extern_rfid_readcontent:()=>iE,extern_rfid_readid:()=>eE,extern_rfid_status:()=>oE,extern_rfid_write:()=>nE,extern_rfid_write_return:()=>sE,gnss_get_data:()=>YE,gnss_have_data:()=>vE,mixbot_sensor_extern_get_addr:()=>GE,mixbot_sensor_extern_set_addr:()=>UE,pm25_get_data:()=>FE,robot_button_extern_get_value:()=>xE,robot_color_extern_get_value:()=>BE,robot_infrared_extern_get_value:()=>bE,robot_infrared_extern_grey_get_value:()=>VE,robot_potentiometer_extern_get_value:()=>yE,robot_sonar_extern_get_value:()=>wE,robot_sonar_extern_led:()=>kE,robot_touch_extern_get_value:()=>XE,sensor_APDS9960_extern:()=>bO,sensor_LTR308_extern:()=>VO,sensor_LTR390UV_extern:()=>BO,sensor_MAX30102_extern:()=>XO,sensor_QMC5883L_extern:()=>HO,sensor_VL530LX_extern:()=>GO,sensor_adxl345_get_acceleration:()=>SO,sensor_aht11_extern:()=>wO,sensor_bmp:()=>PO,sensor_compass_reset:()=>ZO,sensor_dht11:()=>LO,sensor_ds18x20:()=>vO,sensor_hp203_extern:()=>kO,sensor_light_level:()=>AO,sensor_lm35:()=>YO,sensor_ltr381_extern:()=>yO,sensor_mixgo_extern_button_attachInterrupt:()=>gO,sensor_mixgo_extern_button_get_presses:()=>cO,sensor_mixgo_extern_button_is_pressed:()=>EO,sensor_mixgo_extern_button_was_pressed:()=>RO,sensor_mixgo_extern_light:()=>NO,sensor_mixgo_extern_pin_near:()=>fO,sensor_mixgo_extern_sound:()=>DO,sensor_mixgoce_hot_wheel_degrees:()=>IE,sensor_mixgoce_hot_wheel_is_touched:()=>dE,sensor_mpu9250_attachGestureInterrupt:()=>CO,sensor_mpu9250_calibrate_compass:()=>qO,sensor_mpu9250_field_strength:()=>jO,sensor_mpu9250_gesture:()=>WO,sensor_mpu9250_get_acceleration:()=>KO,sensor_mpu9250_get_gyro:()=>QO,sensor_mpu9250_get_magnetic:()=>JO,sensor_mpu9250_temperature:()=>zO,sensor_sht:()=>FO,sensor_shtc3_extern:()=>UO,sensor_use_i2c_init:()=>xO,sensor_use_spi_init:()=>$O,sensor_use_uart_init:()=>PE,sensor_weather_solo_init:()=>HE,sensor_weather_solo_rain:()=>JE,sensor_weather_solo_wd:()=>WE,sensor_weather_solo_ws:()=>KE,weather_data:()=>_E,weather_have_data:()=>pE,weather_set_label:()=>uE,weather_set_label_container:()=>rE,weather_set_label_item:()=>lE,weather_uart_mixio:()=>aE});var w={};t.r(w),t.d(w,{HCSR04:()=>rR,RTC_set_date:()=>uR,RTC_set_time:()=>aR,bitbot_als_num:()=>hc,dht11:()=>gc,number1:()=>dR,number2:()=>IR,number3:()=>TR,number4:()=>hR,number5:()=>MR,number6:()=>mR,number7:()=>OR,onboard_RTC_get_time:()=>AR,onboard_RTC_get_timestamp:()=>LR,onboard_RTC_set_datetime:()=>fR,onboard_RTC_settime_string:()=>DR,onboard_RTC_timestamp_totuple:()=>NR,rfid_readcontent:()=>VR,rfid_readid:()=>bR,rfid_write:()=>yR,rfid_write_return:()=>BR,sensor_LTR308:()=>FR,sensor_aht11:()=>YR,sensor_bitbot_ALS:()=>Tc,sensor_button_get_presses:()=>Oc,sensor_button_is_pressed:()=>Mc,sensor_button_was_pressed:()=>mc,sensor_distance_hrsc04:()=>pR,sensor_eulerangles:()=>UR,sensor_field_strength:()=>Cc,sensor_get_acceleration:()=>GR,sensor_get_temperature:()=>xR,sensor_hp203:()=>XR,sensor_light:()=>cc,sensor_mixbot_get_gyro:()=>Ic,sensor_mixbot_patrol_calibrate:()=>rc,sensor_mixbot_patrol_value:()=>lc,sensor_mixbot_temperature:()=>dc,sensor_mixgo_LTR308:()=>SR,sensor_mixgo_button_attachInterrupt:()=>ZE,sensor_mixgo_button_get_presses:()=>jE,sensor_mixgo_button_is_pressed:()=>qE,sensor_mixgo_button_was_pressed:()=>zE,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>ZR,sensor_mixgo_cc_mmc5603_get_angle:()=>jR,sensor_mixgo_cc_mmc5603_get_magnetic:()=>zR,sensor_mixgo_light:()=>lR,sensor_mixgo_nova_LTR308:()=>CR,sensor_mixgo_nova_pin_near:()=>gR,sensor_mixgo_pin_near:()=>cR,sensor_mixgo_pin_near_double:()=>RR,sensor_mixgo_pin_near_single:()=>ER,sensor_mixgo_pin_pressed:()=>nR,sensor_mixgo_touch_slide:()=>_R,sensor_mixgocar42_button_attachInterrupt:()=>iR,sensor_mixgocar42_button_get_presses:()=>eR,sensor_mixgocar42_button_is_pressed:()=>$E,sensor_mixgocar42_button_was_pressed:()=>tR,sensor_mixgocar_battery_left:()=>uc,sensor_mixgocar_pin_near:()=>pc,sensor_mixgocar_pin_near_line:()=>_c,sensor_mixgocar_pin_near_state_change:()=>ac,sensor_mixgoce_pin_pressed:()=>sR,sensor_mixgoce_temperature:()=>tc,sensor_mixgome_temperature:()=>$R,sensor_mpython_pin_pressed:()=>oR,sensor_mpython_qmi8658_get_gyro:()=>ec,sensor_mpython_qmi8658_temperature:()=>ic,sensor_onboard_compass_reset:()=>qR,sensor_onboard_mpu9250_calibrate_compass:()=>KR,sensor_onboard_mpu9250_field_strength:()=>QR,sensor_onboard_mpu9250_gesture:()=>wR,sensor_onboard_mpu9250_get_acceleration:()=>kR,sensor_onboard_mpu9250_get_gyro:()=>WR,sensor_onboard_mpu9250_get_magnetic:()=>HR,sensor_onboard_mpu9250_temperature:()=>JR,sensor_pin_near:()=>Rc,sensor_pin_pressed:()=>Ec,sensor_rm_acc:()=>oc,sensor_rm_battery_left:()=>sc,sensor_rm_pin_near_double:()=>nc,sensor_rtc_init:()=>PR,sensor_sound:()=>vR,sensor_temperature:()=>Sc});var k={};t.r(k),t.d(k,{serial_any:()=>vc,serial_begin:()=>Vc,serial_print:()=>Nc,serial_print_byte:()=>Lc,serial_print_hex:()=>fc,serial_println:()=>Dc,serial_read_from_ai:()=>Kc,serial_readline:()=>Yc,serial_readstr:()=>Fc,serial_readstr_until:()=>xc,serial_receive_data_event:()=>Pc,serial_send_to_ai:()=>Wc,serial_softserial:()=>bc,serial_softserial_new:()=>Xc,system_input:()=>yc,system_print:()=>Bc,system_print_container:()=>kc,system_print_end:()=>Uc,system_print_inline:()=>Gc,system_print_item:()=>Hc,system_print_many:()=>wc});var H={};t.r(H),t.d(H,{Panic_with_status_code:()=>zc,Timer_init:()=>ug,base_delay:()=>dg,controls_delay:()=>qc,controls_delay_new:()=>Qc,controls_millis:()=>Zc,controls_uname:()=>tg,raw_block:()=>$c,reset:()=>jc,system_bitbot_shutdown:()=>ag,system_machine_reset:()=>pg,system_ticks_diff:()=>ng,system_timer:()=>ig,system_timer_init:()=>sg,system_wdt_feed:()=>_g,system_wdt_init:()=>og,time_ticks_diff:()=>lg,timer:()=>eg,timer2:()=>rg});var W={};t.r(W),t.d(W,{WEATHER_DAILY:()=>hg,WEATHER_HOUR:()=>Mg,WEATHER_NOW:()=>Tg});var K={};t.r(K),t.d(K,{actuator_extern_get_led_bright:()=>bg,actuator_extern_get_led_state:()=>Vg,actuator_extern_led_bright:()=>Xg,actuator_extern_led_brightness:()=>yg,actuator_ms32006_dcmotor:()=>Sg,actuator_ms32006_init:()=>Cg,actuator_ms32006_stepper:()=>Ag,actuator_neopixel_init:()=>Bg,actuator_neopixel_rgb:()=>wg,actuator_neopixel_rgb_all:()=>Gg,actuator_neopixel_write:()=>Ug,actuator_use_uart_init:()=>kg,esp32_music_get_tempo_extern:()=>Fg,esp32_music_pitch:()=>Ng,esp32_music_pitch_init:()=>Lg,esp32_music_pitch_with_time:()=>Dg,esp32_music_play_list:()=>vg,esp32_music_reset_extern:()=>Yg,esp32_music_set_tempo_extern:()=>Pg,esp32_music_stop:()=>fg,mixbot_actuator_extern_get_addr:()=>pC,mixbot_actuator_extern_set_addr:()=>aC,mixbot_addr_extern:()=>Qg,robot_led_extern:()=>Zg,robot_led_extern_get_value:()=>$g,robot_motor_extern:()=>qg,robot_motor_extern_get_speed:()=>zg,robot_servo_extern_absolute_run:()=>nC,robot_servo_extern_get_status:()=>tC,robot_servo_extern_relative_continue:()=>_C,robot_servo_extern_relative_origin:()=>sC,robot_servo_extern_relative_run:()=>oC,robot_servo_extern_stop:()=>iC,robot_servo_extern_stop_mode:()=>eC,robot_traffic_light_extern:()=>jg,servo_get_angle:()=>cg,servo_get_speed:()=>gg,servo_init:()=>mg,servo_move:()=>xg,servo_set_angle:()=>Eg,servo_set_speed:()=>Rg,servo_speed_360:()=>Og,syn6288_builtin_voice:()=>Kg,syn6288_get_voice:()=>Wg,syn6288_set_voice:()=>Hg,syn6288_tts_play:()=>Jg});var J={};t.r(J),t.d(J,{actuator_dc_motor:()=>bC,actuator_dc_motor_stop:()=>VC,actuator_get_led_bright:()=>EC,actuator_get_led_state:()=>RC,actuator_led_bright:()=>OC,actuator_led_brightness:()=>cC,actuator_mixbot_buzzer_on_off:()=>wC,actuator_mixgo_nova_mic_get:()=>JC,actuator_mixgo_nova_mic_set:()=>KC,actuator_mixgo_nova_onboard_music_pitch:()=>$C,actuator_mixgo_nova_onboard_music_stop:()=>tS,actuator_mixgo_nova_play_audio:()=>jC,actuator_mixgo_nova_play_online_audio:()=>ZC,actuator_mixgo_nova_record_audio:()=>zC,actuator_mixgo_nova_voice_get:()=>qC,actuator_mixgo_nova_voice_set:()=>QC,actuator_mixgo_zero_led_color:()=>gC,actuator_onboard_neopixel_rgb:()=>fC,actuator_onboard_neopixel_rgb_all:()=>PC,actuator_onboard_neopixel_rgb_show_all_chase:()=>FC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>vC,actuator_onboard_neopixel_write:()=>DC,actuator_stepper_keep:()=>xC,actuator_stepper_stop:()=>XC,analog_keyboard_input:()=>sS,analog_keyboard_str:()=>uS,analog_mouse_input:()=>pS,bitbot_motor:()=>WC,bitbot_move:()=>kC,bitbot_stop:()=>HC,cc_number:()=>CC,esp32_music_get_tempo:()=>rC,esp32_music_reset:()=>hC,esp32_music_set_tempo:()=>uC,esp32_onboard_music_pitch:()=>lC,esp32_onboard_music_pitch_with_time:()=>dC,esp32_onboard_music_play_list:()=>TC,esp32_onboard_music_stop:()=>IC,general_key:()=>_S,general_key_tuple:()=>rS,get_power_output:()=>iS,ledswitch:()=>mC,mixbot_motor:()=>UC,mixbot_motor_status:()=>yC,mixbot_move:()=>BC,mixbot_stop:()=>GC,mouse_key:()=>aS,number:()=>MC,rm_actuator_get_led_bright:()=>AC,rm_actuator_get_led_state:()=>LC,rm_actuator_led_bright:()=>SC,rm_actuator_led_brightness:()=>NC,rm_motor:()=>YC,set_all_power_output:()=>nS,set_power_output:()=>eS,special_key:()=>oS});var Q={};t.r(Q),t.d(Q,{ai_sensor_20object:()=>kS,ai_sensor_ailocal_class:()=>vS,ai_sensor_ailocal_class_result:()=>YS,ai_sensor_ailocal_train:()=>FS,ai_sensor_asr_recognize:()=>yS,ai_sensor_audio_play:()=>XS,ai_sensor_audio_record:()=>xS,ai_sensor_barcode:()=>mS,ai_sensor_circle:()=>CS,ai_sensor_classifier_faces:()=>wS,ai_sensor_color:()=>NS,ai_sensor_color_chases:()=>PS,ai_sensor_color_chases_result:()=>fS,ai_sensor_config:()=>IS,ai_sensor_face:()=>US,ai_sensor_find_20objects:()=>HS,ai_sensor_find_barcodes:()=>OS,ai_sensor_find_circles:()=>SS,ai_sensor_find_colors:()=>DS,ai_sensor_find_licenseplates:()=>GS,ai_sensor_find_lines:()=>gS,ai_sensor_find_qrcodes:()=>MS,ai_sensor_find_rects:()=>LS,ai_sensor_find_tags:()=>RS,ai_sensor_licenseplate:()=>BS,ai_sensor_line:()=>cS,ai_sensor_qrcode:()=>hS,ai_sensor_qrcode_lite:()=>dS,ai_sensor_rect:()=>AS,ai_sensor_rgb:()=>TS,ai_sensor_tag:()=>ES,ai_sensor_use_uart_init:()=>lS,ai_sensor_yolo_recognize:()=>bS,ai_sensor_yolo_recognize_result:()=>VS});var q={};t.r(q),t.d(q,{MICROPYTHON_AI_Speech_asr:()=>JS,MICROPYTHON_AI_Speech_unit:()=>KS,MICROPYTHON_AI_client:()=>WS});var z={};t.r(z),t.d(z,{mpython_blynk_app_data:()=>oA,mpython_blynk_app_notify:()=>tA,mpython_blynk_email:()=>_A,mpython_blynk_get_timers:()=>iA,mpython_blynk_on_connected:()=>jS,mpython_blynk_on_disconnected:()=>zS,mpython_blynk_run:()=>$S,mpython_blynk_sensor_data_to_app:()=>sA,mpython_blynk_set_property:()=>pA,mpython_blynk_setup:()=>aA,mpython_blynk_stop_timers:()=>eA,mpython_blynk_sync_virtual:()=>qS,mpython_blynk_terminal_widget_vpin:()=>QS,mpython_blynktimer:()=>nA,mpython_blynktimer_run:()=>ZS});var j={};t.r(j),t.d(j,{communicate_bluetooth_central_init:()=>kA,communicate_bluetooth_connect:()=>KA,communicate_bluetooth_disconnect:()=>JA,communicate_bluetooth_handle:()=>$A,communicate_bluetooth_is_connected:()=>qA,communicate_bluetooth_mac:()=>QA,communicate_bluetooth_peripheral_init:()=>HA,communicate_bluetooth_recv:()=>ZA,communicate_bluetooth_recv_only:()=>jA,communicate_bluetooth_scan:()=>WA,communicate_bluetooth_send:()=>zA,communicate_espnow_init:()=>tL,communicate_espnow_init_new:()=>eL,communicate_i2c_available:()=>MA,communicate_i2c_init:()=>lA,communicate_i2c_master_read:()=>hA,communicate_i2c_onboard:()=>uA,communicate_i2c_read:()=>dA,communicate_i2c_scan:()=>TA,communicate_i2c_write:()=>IA,communicate_ir_recv_init:()=>YA,communicate_ir_send_init:()=>yA,communicate_ow_init:()=>NA,communicate_ow_read:()=>PA,communicate_ow_reset:()=>fA,communicate_ow_scan:()=>DA,communicate_ow_select:()=>vA,communicate_ow_write:()=>FA,communicate_spi_buffer:()=>RA,communicate_spi_init:()=>OA,communicate_spi_onboard:()=>rA,communicate_spi_read:()=>cA,communicate_spi_read_output:()=>gA,communicate_spi_readinto:()=>CA,communicate_spi_readinto_output:()=>SA,communicate_spi_set:()=>EA,communicate_spi_write:()=>AA,communicate_spi_write_readinto:()=>LA,espnow_radio_channel:()=>pL,espnow_radio_channel_new:()=>uL,espnow_radio_on_off:()=>rL,espnow_radio_rec:()=>dL,espnow_radio_recv:()=>TL,espnow_radio_recv_certain_msg:()=>hL,espnow_radio_recv_certain_msg_new:()=>mL,espnow_radio_recv_msg:()=>IL,espnow_radio_recv_new:()=>ML,espnow_radio_send:()=>lL,espnow_radio_txpower:()=>aL,i2c_slave_onreceive:()=>mA,internal_variable:()=>xA,ir_recv_timeout:()=>VA,ir_transmit_busy:()=>wA,ir_transmit_conventional_data:()=>BA,ir_transmit_raw_code:()=>UA,ir_transmit_study_code:()=>GA,ir_whether_recv:()=>bA,lora_init:()=>OL,lora_packet:()=>EL,lora_recv:()=>cL,lora_send:()=>RL,network_espnow_info:()=>nL,network_espnow_mac:()=>iL,network_espnow_recv:()=>sL,network_espnow_recv_handle:()=>_L,network_espnow_send:()=>oL,recv_fun:()=>XA,urequests_attribute:()=>CL,urequests_get:()=>gL,urequests_method:()=>SL});var Z={};t.r(Z),t.d(Z,{display_animate:()=>qL,display_circle:()=>zL,display_color_seclet:()=>pN,display_draw_4strings:()=>wL,display_fill:()=>QL,display_lcd_use_i2c_init:()=>IN,display_line:()=>WL,display_line_arbitrarily:()=>kL,display_matrix_extern_bright_point:()=>XL,display_matrix_extern_bright_screen:()=>VL,display_matrix_extern_clear:()=>vL,display_matrix_extern_get_pixel:()=>xL,display_matrix_extern_get_screen_pixel:()=>bL,display_matrix_extern_image_builtins:()=>yL,display_matrix_extern_scroll_string:()=>PL,display_matrix_extern_scroll_string_delay:()=>FL,display_matrix_extern_shift:()=>YL,display_matrix_extern_show_frame_string:()=>DL,display_matrix_extern_show_frame_string_delay:()=>fL,display_matrix_extern_show_image:()=>LL,display_matrix_extern_show_image_or_string_delay:()=>NL,display_matrix_use_i2c_init:()=>AL,display_oled_drawPixel:()=>$L,display_oled_showBitmap:()=>ZL,display_oled_use_i2c_init:()=>ON,display_onoff:()=>KL,display_rect:()=>HL,display_tm1650_power:()=>eN,display_tm1650_set_brightness:()=>sN,display_tm1650_show_dot:()=>nN,display_tm1650_show_num:()=>iN,display_tm_use_i2c_init:()=>tN,display_triangle:()=>jL,display_use_i2c_init:()=>UL,extern_oled_bright_point:()=>PN,extern_oled_clear:()=>NN,extern_oled_get_pixel:()=>fN,extern_oled_hvline:()=>vN,extern_oled_line:()=>YN,extern_oled_scroll_string:()=>AN,extern_oled_scroll_string_delay:()=>LN,extern_oled_shape_rect:()=>FN,extern_oled_shift:()=>DN,extern_oled_show_frame_string:()=>CN,extern_oled_show_frame_string_delay:()=>SN,extern_oled_show_image:()=>EN,extern_oled_show_image_or_string_delay:()=>gN,extern_oled_show_image_xy:()=>RN,extern_oled_show_string:()=>cN,image_shift:()=>JL,lcd_backlight:()=>MN,lcd_clear:()=>mN,lcd_print_string:()=>hN,lcd_show_image_or_string_delay:()=>TN,matrix_extern_image_arithmetic:()=>BL,matrix_extern_image_invert:()=>GL,tft_fill:()=>lN,tft_line_arbitrarily:()=>dN,tft_scroll_string_delay:()=>rN,tft_show_frame_string_delay:()=>uN,tft_show_image_or_string_delay:()=>aN,tft_show_image_xy:()=>_N,tft_use_spi_init:()=>oN});var $={};t.r($),t.d($,{bitbot_display_image_create:()=>mD,display_bright_point:()=>QN,display_bright_screen:()=>zN,display_clear:()=>kN,display_get_pixel:()=>JN,display_get_screen_pixel:()=>qN,display_image_builtins:()=>GN,display_image_builtins_all:()=>UN,display_image_create:()=>wN,display_scroll_string:()=>yN,display_scroll_string_delay:()=>BN,display_shift:()=>KN,display_show_frame_string:()=>bN,display_show_frame_string_delay:()=>VN,display_show_image:()=>xN,display_show_image_or_string_delay:()=>XN,image_arithmetic:()=>HN,image_invert:()=>WN,mixbot_display_bright_screen:()=>hD,mixbot_display_get_ambientbright:()=>TD,mixbot_display_get_screen_pixel:()=>ID,mixbot_display_image_create:()=>dD,mixbot_display_rotate:()=>MD,mixgo_display_image_create_new:()=>tD,mixgome_display_font:()=>$N,mixgome_display_image_create:()=>jN,mixgomini_display_image_create:()=>ZN,mpython_display_hvline:()=>rD,mpython_display_line:()=>lD,mpython_display_shape_rect:()=>uD,mpython_pbm_image:()=>eD,onboard_oled_bright_point:()=>aD,onboard_oled_scroll_string_delay:()=>pD,onboard_oled_show_frame_string_delay:()=>_D,onboard_oled_show_image:()=>iD,onboard_oled_show_image_or_string_delay:()=>oD,onboard_oled_show_image_xy:()=>nD,onboard_oled_show_string:()=>sD,onboard_tft_bright_point:()=>FD,onboard_tft_bright_screen:()=>YD,onboard_tft_clear:()=>DD,onboard_tft_clock_clear:()=>BD,onboard_tft_clock_draw:()=>yD,onboard_tft_clock_get_rtctime:()=>bD,onboard_tft_clock_init:()=>XD,onboard_tft_clock_set_time:()=>VD,onboard_tft_display_hvline:()=>LD,onboard_tft_display_line:()=>ND,onboard_tft_display_shape_circle:()=>GD,onboard_tft_display_shape_rect:()=>AD,onboard_tft_fill:()=>xD,onboard_tft_get_pixel:()=>PD,onboard_tft_get_screen_pixel:()=>vD,onboard_tft_scroll_string:()=>CD,onboard_tft_scroll_string_delay:()=>SD,onboard_tft_shift:()=>fD,onboard_tft_show_frame_string:()=>cD,onboard_tft_show_frame_string_delay:()=>gD,onboard_tft_show_image:()=>OD,onboard_tft_show_image_or_string_delay:()=>RD,onboard_tft_show_image_xy:()=>ED});var tt={};t.r(tt),t.d(tt,{factory_block:()=>QD,factory_block_return:()=>qD,factory_block_return_with_textarea:()=>jD,factory_block_with_textarea:()=>zD,factory_callMethod_noreturn:()=>KD,factory_callMethod_return:()=>JD,factory_declare:()=>WD,factory_from_import:()=>UD,factory_function_noreturn:()=>kD,factory_function_return:()=>HD,factory_import:()=>wD,folding_block:()=>ZD});var et={};t.r(et),t.d(et,{inout_analog_atten:()=>Tf,inout_analog_read:()=>pf,inout_analog_read_init:()=>If,inout_analog_write:()=>sf,inout_analog_write_init:()=>df,inout_analog_write_set:()=>of,inout_digital_init:()=>rf,inout_digital_read:()=>ef,inout_digital_write:()=>tf,inout_highlow:()=>$D,inout_pin_attachInterrupt:()=>uf,inout_pin_pressed:()=>af,inout_pin_pressed_init:()=>hf,inout_pwm_analog_write:()=>nf,inout_pwm_analog_write_init:()=>lf,inout_pwm_analog_write_set_freq:()=>_f});var it={};t.r(it),t.d(it,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>xf,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>vf,IOT_EMQX_PING:()=>Xf,IOT_FORMATTING:()=>Pf,IOT_FORMAT_STRING:()=>Ff,IOT_MIXIO_NTP:()=>bf,IOT_MIXIO_PUBLISH:()=>Cf,IOT_MIXIO_SUBSCRIBE:()=>Sf,iot_client_onboard:()=>Vf,iot_http_client:()=>yf,iot_http_data:()=>Bf,iot_mixio_check:()=>Nf,iot_mixio_connect:()=>gf,iot_mixio_connect_only:()=>Lf,iot_mixio_disconnect:()=>Af,iot_mixio_format_msg:()=>ff,iot_mixio_format_topic:()=>Df,iot_mixly_key:()=>Yf,iot_mqtt_client:()=>Gf,iot_mqtt_data:()=>Uf,iot_onenet_check:()=>Rf,iot_onenet_connect:()=>mf,iot_onenet_disconnect:()=>Of,iot_onenet_publish:()=>cf,iot_onenet_publish_dict:()=>Ef,iot_wifi_connect:()=>Mf});var nt={};t.r(nt),t.d(nt,{network_ap_connect:()=>zf,network_connect:()=>kf,network_get_connect:()=>Wf,network_get_wifi:()=>qf,network_init:()=>wf,network_is_active:()=>Qf,network_open:()=>Jf,network_scan:()=>jf,network_server:()=>Zf,network_socket_accept:()=>nP,network_socket_bind:()=>tP,network_socket_close:()=>aP,network_socket_connect:()=>eP,network_socket_init:()=>$f,network_socket_listen:()=>iP,network_socket_receive:()=>sP,network_socket_receive_from:()=>_P,network_socket_send:()=>oP,network_socket_send_to:()=>pP,network_stop:()=>Kf,network_wifi_connect:()=>Hf,ntptime_address:()=>IP,ntptime_time:()=>dP,requests_attribute:()=>rP,requests_get:()=>uP,requests_method:()=>lP,urequests_connect_url:()=>MP,urequests_response:()=>mP,urequests_wifi_connect:()=>TP,urequests_wifi_url:()=>hP});var st={};t.r(st),t.d(st,{get_potential_num:()=>OP,nova_g1_motor:()=>EP,nova_g1_spk_en:()=>cP,nova_g1_usb:()=>RP});var ot={};t.r(ot),t.d(ot,{pe_g1_battery_left:()=>CP,pe_g1_dc_motor:()=>SP,pe_g1_dc_motor_speed:()=>AP,pe_g1_servo_get_angle:()=>DP,pe_g1_servo_get_speed:()=>fP,pe_g1_servo_set_angle:()=>LP,pe_g1_servo_set_speed:()=>NP,pe_g1_use_i2c_init:()=>gP});var _t={};t.r(_t),t.d(_t,{HCSR04:()=>OF,PS2_Button:()=>cF,PS2_Buttons:()=>gF,PS2_Buttons_new:()=>PF,PS2_State:()=>CF,PS2_init:()=>EF,PS2_init_new:()=>DF,PS2_stk:()=>SF,PS2_stk_new:()=>FF,PS2_vibration:()=>RF,PS2_vibration_new:()=>fF,RTC_get_time:()=>LF,RTC_set_date:()=>VP,RTC_set_datetime:()=>AF,RTC_set_time:()=>bP,esp32_s2_weather_init:()=>TF,esp32_s2_weather_rain:()=>MF,esp32_s2_weather_wd:()=>hF,esp32_s2_weather_ws:()=>mF,extern_rfid_read:()=>iF,extern_rfid_readcontent:()=>sF,extern_rfid_readid:()=>nF,extern_rfid_status:()=>pF,extern_rfid_write:()=>oF,extern_rfid_write_return:()=>_F,gnss_get_data:()=>xF,gnss_have_data:()=>XF,mixbot_sensor_extern_get_addr:()=>HF,mixbot_sensor_extern_set_addr:()=>WF,pm25_get_data:()=>YF,robot_button_extern_get_value:()=>bF,robot_color_extern_get_value:()=>UF,robot_infrared_extern_get_value:()=>yF,robot_infrared_extern_grey_get_value:()=>BF,robot_potentiometer_extern_get_value:()=>GF,robot_sonar_extern_get_value:()=>wF,robot_sonar_extern_led:()=>kF,robot_touch_extern_get_value:()=>VF,sensor_APDS9960_extern:()=>KP,sensor_LTR308_extern:()=>JP,sensor_LTR390UV_extern:()=>zP,sensor_MAX30102_extern:()=>WP,sensor_QMC5883L_extern:()=>jP,sensor_VL530LX_extern:()=>tF,sensor_aht11_extern:()=>$P,sensor_bmp:()=>wP,sensor_dht11:()=>NF,sensor_distance_hrsc04:()=>XP,sensor_hp203_extern:()=>QP,sensor_ltr381_extern:()=>qP,sensor_mixgo_extern_button_attachInterrupt:()=>YP,sensor_mixgo_extern_button_get_presses:()=>vP,sensor_mixgo_extern_button_is_pressed:()=>PP,sensor_mixgo_extern_button_was_pressed:()=>FP,sensor_mixgo_extern_light:()=>yP,sensor_mixgo_extern_pin_near:()=>GP,sensor_mixgo_extern_sound:()=>BP,sensor_mixgoce_hot_wheel_degrees:()=>IF,sensor_mixgoce_hot_wheel_is_touched:()=>dF,sensor_mpu9250_attachGestureInterrupt:()=>xP,sensor_rtc_init:()=>UP,sensor_sht:()=>kP,sensor_shtc3_extern:()=>ZP,sensor_use_i2c_init:()=>HP,sensor_use_spi_init:()=>eF,sensor_use_uart_init:()=>vF,sensor_weather_solo_init:()=>KF,sensor_weather_solo_rain:()=>qF,sensor_weather_solo_wd:()=>JF,sensor_weather_solo_ws:()=>QF,weather_data:()=>aF,weather_have_data:()=>uF,weather_set_label:()=>lF,weather_uart_mixio:()=>rF});var pt={};t.r(pt),t.d(pt,{HCSR04:()=>sv,bitbot_als_num:()=>gY,dht11:()=>PY,number1:()=>ov,number2:()=>_v,number3:()=>pv,number4:()=>av,number5:()=>uv,number6:()=>rv,number7:()=>lv,onboard_RTC_get_time:()=>tY,onboard_RTC_get_timestamp:()=>eY,onboard_RTC_set_datetime:()=>Zv,onboard_RTC_settime_string:()=>$v,onboard_RTC_timestamp_totuple:()=>iY,rfid_readcontent:()=>Lv,rfid_readid:()=>Av,rfid_write:()=>Nv,rfid_write_return:()=>Dv,sensor_LTR308:()=>Rv,sensor_adxl345_get_acceleration:()=>Vv,sensor_aht11:()=>Cv,sensor_bitbot_ALS:()=>cY,sensor_button_get_presses:()=>AY,sensor_button_is_pressed:()=>CY,sensor_button_was_pressed:()=>SY,sensor_compass_reset:()=>kv,sensor_ds18x20:()=>Ov,sensor_eulerangles:()=>Pv,sensor_get_acceleration:()=>fv,sensor_get_temperature:()=>Sv,sensor_hp203:()=>gv,sensor_light:()=>fY,sensor_lm35:()=>Ev,sensor_mixbot_get_gyro:()=>RY,sensor_mixbot_patrol_calibrate:()=>mY,sensor_mixbot_patrol_value:()=>OY,sensor_mixbot_temperature:()=>EY,sensor_mixgo_LTR308:()=>Mv,sensor_mixgo_button_attachInterrupt:()=>$F,sensor_mixgo_button_get_presses:()=>ZF,sensor_mixgo_button_is_pressed:()=>zF,sensor_mixgo_button_was_pressed:()=>jF,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>oY,sensor_mixgo_cc_mmc5603_get_angle:()=>sY,sensor_mixgo_cc_mmc5603_get_magnetic:()=>nY,sensor_mixgo_light:()=>DY,sensor_mixgo_nova_LTR308:()=>mv,sensor_mixgo_nova_pin_near:()=>hv,sensor_mixgo_pin_near:()=>Tv,sensor_mixgo_pin_near_double:()=>Iv,sensor_mixgo_pin_near_single:()=>dv,sensor_mixgo_pin_pressed:()=>Xv,sensor_mixgo_touch_slide:()=>xv,sensor_mixgocar42_button_attachInterrupt:()=>nv,sensor_mixgocar42_button_get_presses:()=>iv,sensor_mixgocar42_button_is_pressed:()=>tv,sensor_mixgocar42_button_was_pressed:()=>ev,sensor_mixgocar_battery_left:()=>MY,sensor_mixgocar_pin_near:()=>TY,sensor_mixgocar_pin_near_line:()=>IY,sensor_mixgocar_pin_near_state_change:()=>hY,sensor_mixgoce_pin_pressed:()=>Yv,sensor_mixgoce_temperature:()=>pY,sensor_mixgome_temperature:()=>_Y,sensor_mpu9250_calibrate_compass:()=>Gv,sensor_mpu9250_field_strength:()=>wv,sensor_mpu9250_gesture:()=>Fv,sensor_mpu9250_get_acceleration:()=>vv,sensor_mpu9250_get_gyro:()=>Bv,sensor_mpu9250_get_magnetic:()=>yv,sensor_mpu9250_temperature:()=>Uv,sensor_mpython_pin_pressed:()=>bv,sensor_mpython_qmi8658_get_gyro:()=>aY,sensor_mpython_qmi8658_temperature:()=>uY,sensor_onboard_compass_reset:()=>jv,sensor_onboard_mpu9250_calibrate_compass:()=>Qv,sensor_onboard_mpu9250_field_strength:()=>zv,sensor_onboard_mpu9250_gesture:()=>Hv,sensor_onboard_mpu9250_get_acceleration:()=>Wv,sensor_onboard_mpu9250_get_gyro:()=>Jv,sensor_onboard_mpu9250_get_magnetic:()=>Kv,sensor_onboard_mpu9250_temperature:()=>qv,sensor_pin_near:()=>NY,sensor_pin_pressed:()=>LY,sensor_rm_acc:()=>dY,sensor_rm_battery_left:()=>lY,sensor_rm_pin_near_double:()=>rY,sensor_sound:()=>cv});var at={};t.r(at),t.d(at,{serial_any:()=>XY,serial_print:()=>FY,serial_print_byte:()=>vY,serial_print_hex:()=>xY,serial_println:()=>YY,serial_read_from_ai:()=>KY,serial_readline:()=>VY,serial_readstr:()=>bY,serial_send_to_ai:()=>WY,serial_softserial:()=>yY,serial_softserial_new:()=>BY,system_input:()=>GY,system_print:()=>UY,system_print_end:()=>kY,system_print_inline:()=>wY,system_print_many:()=>HY});var ut={};t.r(ut),t.d(ut,{Panic_with_status_code:()=>sx,Timer_init:()=>Ex,base_delay:()=>gx,controls_delay:()=>ux,controls_delay_new:()=>rx,controls_end_program:()=>_x,controls_millis:()=>ox,controls_uname:()=>ax,reset:()=>px,system_bitbot_shutdown:()=>Ox,system_device_name:()=>ix,system_device_serial_number:()=>nx,system_event_bus_source:()=>tx,system_event_bus_value:()=>ex,system_machine_reset:()=>mx,system_on_event:()=>jY,system_raise_event:()=>zY,system_reset:()=>QY,system_run_in_background:()=>JY,system_ticks_diff:()=>Ix,system_timer:()=>dx,system_timer_init:()=>Tx,system_timestamp:()=>ZY,system_value:()=>$Y,system_wait:()=>qY,system_wdt_feed:()=>Mx,system_wdt_init:()=>hx,time_ticks_diff:()=>cx,timer:()=>lx,timer2:()=>Rx});var rt={};t.r(rt),t.d(rt,{WEATHER_DAILY:()=>Sx,WEATHER_HOUR:()=>Ax,WEATHER_NOW:()=>Cx});var lt={};t.r(lt),t.d(lt,{controls_pin_attachInterrupt:()=>qx,inout_analog_atten:()=>Vx,inout_analog_read:()=>bx,inout_analog_read_init:()=>kx,inout_analog_write:()=>Yx,inout_analog_write_init:()=>wx,inout_analog_write_set:()=>xx,inout_analog_write_set_freq:()=>Kx,inout_digital_init:()=>Gx,inout_digital_read:()=>Fx,inout_digital_write:()=>Px,inout_highlow:()=>fx,inout_pinMode:()=>Wx,inout_pin_attachInterrupt:()=>Bx,inout_pin_pressed:()=>yx,inout_pin_pressed_init:()=>Hx,inout_pwm_analog_write:()=>vx,inout_pwm_analog_write_init:()=>Ux,inout_pwm_analog_write_set_freq:()=>Xx,pin_pressed:()=>Qx,pin_pressed_init:()=>Jx});var dt={};t.r(dt),t.d(dt,{analog_input:()=>sX,analog_output:()=>_X,espnow_channel:()=>eX,haskylens_model:()=>iX,i2c_A_pin:()=>pX,i2c_B_pin:()=>aX,pins_analog:()=>IX,pins_analog_pin:()=>TX,pins_axis:()=>FX,pins_brightness:()=>vX,pins_builtinimg:()=>SX,pins_builtinimg_extern:()=>AX,pins_button:()=>mX,pins_buttonB:()=>OX,pins_dac:()=>hX,pins_dac_pin:()=>MX,pins_digital:()=>jx,pins_digital_dot:()=>GX,pins_digital_pin:()=>Zx,pins_exlcdh:()=>fX,pins_exlcdv:()=>PX,pins_imglist:()=>LX,pins_input_pin:()=>$x,pins_one_more:()=>BX,pins_output_pin:()=>tX,pins_playlist:()=>NX,pins_playlist_extern:()=>DX,pins_pwm:()=>EX,pins_pwm_pin:()=>RX,pins_radio_datarate:()=>yX,pins_radio_power:()=>VX,pins_serial:()=>CX,pins_tone_notes:()=>bX,pins_touch:()=>gX,pins_touch_pin:()=>cX,pins_tts_bgmusic:()=>XX,pins_tts_builtin_music:()=>xX,pins_tts_voice:()=>YX,pwm_input:()=>nX,pwm_output:()=>oX,spi_A_pin:()=>uX,spi_B_pin:()=>rX,spi_C_pin:()=>lX,spi_D_pin:()=>dX});var It={};t.r(It),t.d(It,{inout_analog_atten:()=>eb,inout_analog_read:()=>QX,inout_analog_read_init:()=>tb,inout_analog_write:()=>WX,inout_analog_write_init:()=>$X,inout_analog_write_set:()=>KX,inout_digital_init:()=>jX,inout_digital_read:()=>kX,inout_digital_write:()=>wX,inout_highlow:()=>UX,inout_pin_attachInterrupt:()=>zX,inout_pin_pressed:()=>qX,inout_pin_pressed_init:()=>ib,inout_pwm_analog_write:()=>HX,inout_pwm_analog_write_init:()=>ZX,inout_pwm_analog_write_set_freq:()=>JX});var Tt={};t.r(Tt),t.d(Tt,{analog_input:()=>db,analog_output:()=>Tb,espnow_channel:()=>rb,haskylens_model:()=>lb,i2c_A_pin:()=>hb,i2c_B_pin:()=>Mb,pins_analog:()=>gb,pins_analog_pin:()=>cb,pins_axis:()=>bb,pins_brightness:()=>Bb,pins_builtinimg:()=>Fb,pins_builtinimg_extern:()=>vb,pins_button:()=>sb,pins_buttonB:()=>ob,pins_dac:()=>Lb,pins_dac_pin:()=>Ab,pins_digital:()=>nb,pins_digital_dot:()=>Jb,pins_digital_pin:()=>_b,pins_exlcdh:()=>Vb,pins_exlcdv:()=>yb,pins_imglist:()=>Yb,pins_input_pin:()=>pb,pins_interrupt:()=>fb,pins_one_more:()=>Kb,pins_output_pin:()=>ab,pins_playlist:()=>xb,pins_playlist_extern:()=>Xb,pins_pwm:()=>Sb,pins_pwm_input:()=>ub,pins_pwm_pin:()=>Cb,pins_radio_datarate:()=>Wb,pins_radio_power:()=>Hb,pins_serial:()=>Pb,pins_tone_notes:()=>kb,pins_touch:()=>Db,pins_touch_pin:()=>Nb,pins_tts_bgmusic:()=>wb,pins_tts_builtin_music:()=>Ub,pins_tts_voice:()=>Gb,pwm_output:()=>Ib,spi_A_pin:()=>mb,spi_B_pin:()=>Ob,spi_C_pin:()=>Eb,spi_D_pin:()=>Rb});const ht=Blockly,Mt=Mixly,mt={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},Ot=mt; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class Et{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ht.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(ht.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ht.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(ht.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},xt={init:function(){this.setColour(Dt),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PYTHON_RANGE).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Xt={init:function(){this.setColour(Dt),this.appendValueInput("LIST").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(ht.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return ht.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},bt={init:function(){this.setColour(Dt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new ht.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ht.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Vt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ht.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},yt={init:function(){this.setColour(Dt);var t=new ht.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Bt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ht.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ht.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ut={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ht.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ht.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};bt.OPERATORS=[[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],yt.OPERATORS=[[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Gt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},wt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},kt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(ht.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Dt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Wt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Kt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Jt={init:function(){this.jsonInit({message0:ht.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Dt,tooltip:ht.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:ht.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Qt={init:function(){this.setColour(Dt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_STAT),this.setOutput(!0)}},qt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},zt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},jt={init:function(){this.appendDummyInput().appendField(ht.Msg.CONTROLS_REPEAT_TITLE_REPEAT+ht.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(ht.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new ht.FieldDropdown([[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Dt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Zt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$t={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},te={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ee={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_GET_UNIQUE_IDEN)}},ie=230;ht.FieldTextInput.math_number_validator=function(t){return String(t)},ht.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const ne={init:function(){this.setColour(ie),this.appendDummyInput().appendField(new ht.FieldTextInput("0",ht.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MATH_NUMBER_TOOLTIP)}},se={init:function(){this.setColour(ie);this.appendDummyInput("").appendField(ht.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ht.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},oe={init:function(){this.setColour(ie);this.appendDummyInput("").appendField(ht.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ht.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},_e={init:function(){this.setColour(ie),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ht.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ht.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ht.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},pe={init:function(){this.setColour(ie),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ht.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ht.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ht.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ae={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new ht.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},ue={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new ht.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:ht.Msg.MATH_TRIG_TOOLTIP_SIN,COS:ht.Msg.MATH_TRIG_TOOLTIP_COS,TAN:ht.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:ht.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:ht.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:ht.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:ht.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},re={init:function(){var t=[[ht.Msg.MATH_BIN,"bin"],[ht.Msg.MATH_OCT,"oct"],[ht.Msg.MATH_HEX,"hex"]];this.setColour(ie),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new ht.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:ht.Msg.MATH_DEC_TOOLTIP_BIN,oct:ht.Msg.MATH_DEC_TOOLTIP_OCT,hex:ht.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},le={init:function(){var t=[[ht.Msg.LANG_MATH_TO_ROUND,"round"],[ht.Msg.LANG_MATH_TO_CEIL,"ceil"],[ht.Msg.LANG_MATH_TO_FLOOR,"floor"],[ht.Msg.MATH_ABS,"fabs"],[ht.Msg.MATH_SQRT,"sqrt"]];this.setColour(ie),this.appendValueInput("A").setCheck(Number).appendField(new ht.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:ht.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:ht.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:ht.Msg.MATH_SINGLE_TOOLTIP_SQ,round:ht.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:ht.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:ht.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},de={init:function(){var t=[[ht.Msg.MIXLY_MAX,"max"],[ht.Msg.MIXLY_MIN,"min"]];this.setColour(ie),this.appendValueInput("A").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(ht.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:ht.Msg.MIXLY_TOOLTIP_MATH_MAX,min:ht.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},Ie={init:function(){var t=[[ht.Msg.MATH_TWO,"two"],[ht.Msg.MATH_EIGHT,"eight"],[ht.Msg.MATH_TEN,"ten"],[ht.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(ie),this.appendDummyInput("").appendField(ht.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new ht.FieldDropdown(t),"OP").appendField(ht.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MATH_ZHW).appendField(new ht.FieldDropdown(t),"OP2").appendField(ht.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:ht.Msg.MATH_Before_two,eight:ht.Msg.MATH_Before_eight,ten:ht.Msg.MATH_Before_ten,sixteen:ht.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:ht.Msg.MATH_Behind_two,eight:ht.Msg.MATH_Behind_eight,ten:ht.Msg.MATH_Behind_ten,sixteen:ht.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Te={init:function(){var t=[[ht.Msg.LANG_MATH_INT,"int"],[ht.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(ie),this.setOutput(!0,Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_RANDOM).appendField(new ht.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:ht.Msg.LANG_MATH_INT,float:ht.Msg.LANG_MATH_FLOAT_RANDOM};return ht.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},he={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(ht.Msg.MATH_CONSTRAIN_TOOLTIP)}},Me={init:function(){this.setColour(ie),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(ht.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(ht.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_MATH_MAP)}},me={init:function(){this.setColour(ie),this.appendDummyInput().appendField(new ht.FieldTextInput("0",ht.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(ht.Msg.MATH_NUMBER_TOOLTIP)}},Oe={init:function(){this.setColour(ie),this.appendValueInput("NUM").setCheck(Number).appendField(ht.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ee={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MATH_ROUND).appendField(ht.Msg.TEXT_KEEP),this.appendDummyInput().appendField(ht.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(ht.Msg.MATH_ROUND_NEW_TOOLTIP)}},Re={init:function(){var t=[[ht.Msg.MIXLY_TO_INT,"int"],[ht.Msg.MIXLY_TO_FLOAT,"float"],[ht.Msg.MIXLY_TO_BITES,"b"]];this.setColour(ie),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ht.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:ht.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:ht.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},ce={init:function(){var t=[[ht.Msg.MIXLY_TO_INT,"int"],[ht.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(ie),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ht.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:ht.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},ge=Me,Ce=160,Se={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ht.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ht.FieldImage(e,12,12,'"')}},Ae={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ht.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ht.FieldImage(e,12,12,'"')}};ht.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Le={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldTextInput("",ht.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(ht.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new ht.FieldImage(e,7,12,'"')}},Ne={init:function(){this.setColour(Ce),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(ht.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},De={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},fe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(String).appendField(ht.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Pe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Fe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},ve={init:function(){this.WHERE_OPTIONS=[[ht.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ht.Msg.TEXT_GET_INDEX_RANDOM+1+ht.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.LISTS_GET_INDEX_GET,"MODE"),ht.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(ht.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+ht.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",ht.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:ht.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:ht.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:ht.Msg.TEXT_GET_INDEX_RANDOM};return ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+ht.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==ht.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),ht.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(ht.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new ht.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),ht.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ye={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(ht.Msg.LISTS_GET_INDEX_GET+" "+ht.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(ht.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+ht.Msg.LISTS_GET_INDEX_FROM_START+"n"+ht.Msg.TEXT_CHARAT2)}},xe={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(ht.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(ht.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Xe={init:function(){this.WHERE_OPTIONS_1=[[ht.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ht.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[ht.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[ht.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(ht.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==ht.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==ht.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),ht.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(ht.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new ht.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},be={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(ht.Msg.LISTS_GET_INDEX_GET+" "+ht.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(ht.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(ht.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(ht.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Ve={init:function(){var t=[[ht.Msg.MIXLY_EQUALS,"==="],[ht.Msg.MIXLY_STARTSWITH,"startswith"],[ht.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ce),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new ht.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},ye={init:function(){this.setColour(Ce),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(ht.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_COMPARETO_HELP)}},Be={init:function(){var t=[[ht.Msg.TEXT_UPPER,"upper"],[ht.Msg.TEXT_TITLE,"title"],[ht.Msg.TEXT_CAPITALIZE,"capitalize"],[ht.Msg.TEXT_SWAPCASE,"swapcase"],[ht.Msg.TEXT_LOWER,"lower"]];this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ht.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:ht.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:ht.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:ht.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:ht.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:ht.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},Ue={init:function(){var t=[[ht.Msg.TEXT_LJUST,"ljust"],[ht.Msg.TEXT_CENTER,"center"],[ht.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ce),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(ht.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(ht.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},Ge={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(ht.Msg.MIXLY_MID+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(ht.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},we={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},ke={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(ht.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(ht.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},He={init:function(){this.setColour(Ce),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(ht.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(ht.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},We={init:function(){var t=[[ht.Msg.TEXT_TRIM_BOTH,"strip"],[ht.Msg.TEXT_TRIM_LEFT,"lstrip"],[ht.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ce),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ht.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(ht.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:ht.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:ht.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:ht.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Ke={init:function(){this.setColour(Ce),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new ht.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ht.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wi={init:function(){this.setColour(Ui),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},ki={init:function(){this.setColour(Ui),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Hi={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_KEYS),this.setTooltip(ht.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Wi={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(ht.Msg.DICTS_GET_TOOLTIP)}},Ki={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(ht.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(ht.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Ji={init:function(){this.setColour(Ui),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(ht.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Qi={init:function(){this.setColour(Ui),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_DELETE_TOOLTIP)}},qi={init:function(){this.setColour(Ui),this.appendValueInput("DICT2").setCheck("Dict").appendField(ht.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(ht.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MID),this.setTooltip(ht.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zi={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_CLEAR),this.setTooltip(ht.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ji={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_ITEMS),this.setTooltip(ht.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Zi={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_VALUES),this.setTooltip(ht.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},$i={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_LENGTH),this.setTooltip(ht.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},tn={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_DELDICT),this.setTooltip(ht.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},en={init:function(){this.MODE=[[ht.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[ht.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(ht.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=ht.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=ht.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==ht.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new ht.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},nn={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.setTooltip(ht.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},sn={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(ht.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_SETDEFAULT_TOOLTIP)}},on={init:function(){this.setColour(Ui),this.appendDummyInput("").appendField(new ht.FieldLabel(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new ht.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},_n={init:function(){this.setColour(Ui),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},pn={init:function(){this.setColour(Ui),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TO_JSON),this.setTooltip(ht.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},an={init:function(){this.setColour(Ui),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(ht.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},un=210,rn={init:function(){var t=ht.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:ht.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:ht.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:ht.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:ht.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:ht.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:ht.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},ln={init:function(){var t=ht.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=ht.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new ht.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},dn={init:function(){var t=[[ht.Msg.LOGIC_OPERATION_AND,"AND"],[ht.Msg.LOGIC_OPERATION_OR,"OR"],[ht.Msg.LOGIC_OPERATION_NOR,"NOR"],[ht.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:ht.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:ht.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:ht.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:ht.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},In={init:function(){this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(ht.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(ht.Msg.LOGIC_NEGATE_TOOLTIP)}},Tn={init:function(){var t=[[ht.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[ht.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new ht.FieldDropdown(t),"BOOL"),this.setTooltip(ht.Msg.LOGIC_BOOLEAN_TOOLTIP)}},hn={init:function(){this.setColour(un),this.setOutput(!0),this.appendDummyInput().appendField(ht.Msg.LOGIC_NULL),this.setTooltip(ht.Msg.LOGIC_NULL_TOOLTIP)}},Mn={init:function(){this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").appendField(ht.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(ht.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},mn={init:function(){var t=[[ht.Msg.TEXT_APPEND_TO,"in"],[ht.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new ht.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(ht.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.IN)}},On={init:function(){var t=[[ht.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[ht.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},En={init:function(){this.setColour(un),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Rn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(ht.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},gn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG,_=ht.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(ht.Msg.MIXPY_TEXT_ENCODE).appendField(new ht.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG,_=ht.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Sn={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},An={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ht.Msg.MICROBIT_PYTHON_TYPE)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.HTML_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Fn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},bn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Vn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+ht.Msg.MIXLY_ESP32_SET+{mkdir:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(ht.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Un={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.HTML_FILE,"isfile"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Gn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(ht.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},wn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(ht.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},kn={};kn.NAME_TYPE=ht.PROCEDURE_CATEGORY_NAME,kn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(ht.Msg.MIXLY_AIP_ATTR).setAlign(ht.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ys={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Bs={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_FORM_CONTENT).appendField(new ht.FieldDropdown([[ht.Msg.HTML_TEXT,"text"],[ht.Msg.HTML_EMAIL,"email"],[ht.Msg.HTML_NUMBER,"number"],[ht.Msg.HTML_PASSWORD,"password"],[ht.Msg.HTML_CHECKBOX,"checkbox"],[ht.Msg.HTML_RADIOBUTTON,"radiobutton"],[ht.Msg.HTML_BUTTON,"button"],[ht.Msg.HTML_COLOUR,"colour"],[ht.Msg.HTML_DATE,"date"],[ht.Msg.HTML_LOCALTIME,"local time"],[ht.Msg.HTML_FILE,"file"],[ht.Msg.HTML_HIDDEN,"hidden"],[ht.Msg.HTML_IMAGE,"image"],[ht.Msg.HTML_MONTH,"month"],[ht.Msg.HTML_RANGE,"range"],[ht.Msg.HTML_RESET,"reset"],[ht.Msg.HTML_SEARCH,"search"],[ht.Msg.HTML_SUBMIT,"submit"],[ht.Msg.HTML_TELEPHONENUMBER,"telephone number"],[ht.Msg.HTML_TIME,"time"],[ht.Msg.HTML_URL,"url"],[ht.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(ht.Msg.HTML_NAME).appendField(new ht.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(ht.Msg.HTML_VALUE).appendField(new ht.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(ht.Msg.MIXLY_AIP_ATTR).setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Us={init:function(){this.setColour(vs),this.appendDummyInput().appendField(new ht.FieldTextInput("property"),"KEY").appendField(":").appendField(new ht.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(vs),this.appendDummyInput().appendField(new ht.FieldTextInput("property"),"KEY").appendField(":").appendField(new ht.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_TEXT).appendField(new ht.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks=160,Hs={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new ht.FieldTable(""),"TEXT")}},Ws={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new ht.FieldMultilineInput(""),"TEXT")}},Ks={init:function(){this.setColour(ks),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new ht.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Js={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Qs={init:function(){this.setColour(ks),this.appendDummyInput().appendTitle("Comment:").appendTitle(new ht.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},qs={init:function(){this.setColour(ks),this.appendValueInput("VALUE").appendField(ht.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},zs={init:function(){this.setColour(ks),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ht.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(ht.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=ht.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},ht.isNumber(n)&&ht.isNumber(s)&&ht.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const xp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},Xp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},bp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Vp=function(t,e){return["None",e.ORDER_ATOMIC]},yp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Bp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Up=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Gp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},wp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},kp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Hp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Wp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Kp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Jp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Qp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},qp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},jp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},Zp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},$p=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ta=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ea=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ia=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},na=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},sa=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},oa=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},_a=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},pa=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},aa=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},ua=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},ra=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},la=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),ht.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Wa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Ka=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},Ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},qa=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},za=function(t,e){return'"},ja=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Za=function(){return this.getFieldValue("TEXT")+"\n"},$a=function(t){return t.getFieldValue("TEXT")+"\n"},tu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},eu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},iu=function(){return""},nu=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},su=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},_u.scrubNakedValue=function(t){return t+"\n"},_u.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},_u.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},_u.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=ht.utils.string.wrap(o,_u.COMMENT_WRAP-3),n+=_u.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const pu="#74A55B",au={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_RGB_PIN_COUNT)}},uu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},ru={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},lu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},du={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ht.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ht.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Iu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Tu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_RESET)}},hu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Mu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},mu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ou={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Eu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Ru={init:function(){this.setColour(pu),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},gu={init:function(){this.setColour(pu),this.appendValueInput("VAR").appendField("360°"+ht.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SETTING+ht.Msg.blockpy_turtle_rotate+ht.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Cu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Au={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Lu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Nu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new ht.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(ht.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Du={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ht.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[ht.Msg.MOTOR_N,"ms32006.MOT_N"],[ht.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},fu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new ht.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ht.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Pu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_RGB_PIN_COUNT)}},Fu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},vu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Yu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_WRI)}},xu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ht.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+ht.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},Xu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},bu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(ht.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},yu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(ht.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Bu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},Uu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Gu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},wu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_TRAFFIC_LIGHT).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LISTS_SET_INDEX_SET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ku={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_WHITE,"W"],[ht.Msg.COLOUR_RGB_RED,"R"],[ht.Msg.COLOUR_RGB_YELLOW,"Y"],[ht.Msg.COLOUR_RGB_GREEN,"G"],[ht.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_WHITE,"W"],[ht.Msg.COLOUR_RGB_RED,"R"],[ht.Msg.COLOUR_RGB_YELLOW,"Y"],[ht.Msg.COLOUR_RGB_GREEN,"G"],[ht.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[ht.Msg.MIXLY_SPEED,"[1]"],[ht.Msg.MATH_SINGLE_OP_ABSOLUTE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[ht.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[ht.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[ht.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MATH_SINGLE_OP_ABSOLUTE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"0"],[ht.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[ht.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},qu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField("("+ht.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField("("+ht.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"0"],[ht.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MOTOR,"ext_motor"],[ht.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ht.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ht.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ht.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ht.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ht.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ht.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},$u={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MOTOR,"ext_motor"],[ht.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ht.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ht.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ht.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ht.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ht.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ht.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr="#6C9858",er={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},ir={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_ON,"1"],[ht.Msg.MIXLY_ESP32_OFF,"0"],[ht.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},nr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},sr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},or={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},_r={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_BUILDIN_LED+ht.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},pr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(ht.Msg.MIXLY_LCD_SETCOLOR).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LIGHT_OFF,"0"],[ht.Msg.MIXLY_LIGHT_RED,"1"],[ht.Msg.MIXLY_LIGHT_GREEN,"2"],[ht.Msg.MIXLY_LIGHT_BLUE,"3"],[ht.Msg.MIXLY_LIGHT_YELLOW,"4"],[ht.Msg.MIXLY_LIGHT_CYAN,"5"],[ht.Msg.MIXLY_LIGHT_PURPLE,"6"],[ht.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},ar={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},ur={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},rr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},lr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_BUILDIN_LED+ht.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},dr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},Ir={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Mt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Tr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},hr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Mr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.PYTHON_RANGE_STEP).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},mr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_WRI)}},Or={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Mt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Er={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Rr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.PYTHON_RANGE_STEP).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cr={init:function(){this.setColour(tr),this.appendValueInput("TICKS").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ht.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ht.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},gr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Cr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_RESET)}},Sr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Ar={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Lr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nr={init:function(){this.setColour(tr),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Dr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fr={init:function(){this.setColour(tr),this.appendDummyInput().appendField("MixGo Car").appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField("MixGo Car").appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Fr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([[ht.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ht.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([[ht.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ht.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_STOP).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},xr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ht.Msg.MIXLY_SPEED,"SPEED"],[ht.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Xr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},br={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.MIXLY_MOTOR).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"1"],[ht.Msg.TEXT_TRIM_RIGHT,"2"],[ht.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ht.Msg.MIXLY_SPEED,"SPEED"],[ht.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Vr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},yr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Br={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(ht.Msg.MIXLY_MOTOR).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"0"],[ht.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(tr),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},wr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},kr={init:function(){this.setColour(tr),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_MIXBOT_BUZZER+ht.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MIXBOT_BUZZER+ht.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_RECORD_AUDIO).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(ht.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Kr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_PLAY_AUDIO).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Jr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},qr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.LISTS_SET_INDEX_SET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},jr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT+ht.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},Zr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.LISTS_SET_INDEX_SET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.MIXLY_ALL+ht.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(ht.ALIGN_RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT+ht.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},$r={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(ht.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(ht.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(ht.Msg.MIXLY_RELEASE).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT)}},tl={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPECIAL_KEY0,"0"],[ht.Msg.MIXLY_SPECIAL_KEY1,"1"],[ht.Msg.MIXLY_SPECIAL_KEY2,"2"],[ht.Msg.MIXLY_SPECIAL_KEY1,"4"],[ht.Msg.MIXLY_SPECIAL_KEY8,"8"],[ht.Msg.MIXLY_SPECIAL_KEY16,"16"],[ht.Msg.MIXLY_SPECIAL_KEY32,"32"],[ht.Msg.MIXLY_SPECIAL_KEY64,"64"],[ht.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},el={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},il={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.ANALOG+ht.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(ht.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(ht.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(ht.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(ht.Msg.MIXLY_RELEASE).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT)}},nl={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPECIAL_KEY0,"0"],[ht.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[ht.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[ht.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},sl={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(ht.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(ht.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},ol="#90A244",_l={init:function(){this.setColour(ol),this.appendDummyInput("").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ht.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+ht.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},pl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_QR_CODE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.OLED_STRING,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},al={init:function(){this.setColour(ol),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_QR_CODE+ht.Msg.MIXPY_OBJECT,"qrcode"],[ht.Msg.MIXLY_BAR_CODE+ht.Msg.MIXPY_OBJECT,"barcode"],[ht.Msg.MIXLY_TAG+ht.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},ul={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},rl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().appendField(ht.Msg.SOFT_RESET+ht.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},ll={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(ht.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},dl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_BAR_CODE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.OLED_STRING,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},Il={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},Tl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TAG+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.OLED_STRING,"info1"],[ht.Msg.blockpy_turtle_rotate+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},hl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},Ml={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_LINE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LINE_ANGLE,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},ml={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ht.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},Ol={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_CIRCLE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_CIRCLE_AREA,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},El={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ht.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Rl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_RECT+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_CIRCLE_AREA,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},cl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},gl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["RGB"+ht.Msg.HTML_COLOUR,"[0]"],["LAB"+ht.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},Cl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Sl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_COLOR_CHASE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_CIRCLE_AREA,"info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Al={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+ht.Msg.MIXLY_COLOR_LAB).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ht.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Ll={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_OBJECT_LIST).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+ht.Msg.MIXLY_MODEL_NAME).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ht.Msg.MIXLY_TRAIN_TIME).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ht.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},Nl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_OBJECT_LIST).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_MODEL_NAME).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ht.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},Dl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_LOCAL_CLASS+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["ID","info1"],[ht.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},fl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXPY_AI_AUDIO_TIME).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},Pl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_MP3_VOL).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_ANCHOR).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_MODEL_PATH).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ht.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},vl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_YOLO_RECOGNIZE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["ID","info1"],[ht.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"],[ht.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ht.Msg.MIXLY_POSITION_XY,"xc"],[ht.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ht.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},Yl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(ht.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ht.Msg.MIXLY_ESP32_THRESHOLD).setAlign(ht.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},xl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_LICENSEPLATE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["ID","info1"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},Xl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},bl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_FACE+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["ID","info1"],[ht.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Vl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},yl={init:function(){this.setColour(ol),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_20OBJECTS+ht.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([["ID","info1"],[ht.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ht.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ht.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ht.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ht.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ht.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},Bl={init:function(){this.setColour(ol),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},Ul={init:function(){this.setColour(205),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_AipSpeech_asr,"ASR"],[ht.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_Client).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Gl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_AI_UNIT).appendField(ht.Msg.MIXLY_Client).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(ht.Msg.OLED_STRING).setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},wl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_AipSpeech_asr).appendField(ht.Msg.MIXLY_Client).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(ht.Msg.MIXPY_AI_AUDIO_TIME).setAlign(ht.inputs.Align.RIGHT),this.appendDummyInput("").appendField(ht.Msg.MIXLY_LANGUAGE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[ht.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[ht.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},kl="#2FAD7A",Hl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Wl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Kl={init:function(){this.jsonInit({inputsInline:!0,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(ht.CONTROLS_REPEAT_INPUT_DO)}},Jl={init:function(){this.jsonInit({inputsInline:!0,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(ht.CONTROLS_REPEAT_INPUT_DO)}},Ql={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},ql={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},Zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},$l={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},td={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},ed={init:function(){this.jsonInit({message0:ht.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[ht.Msg.MIXLY_PYTHON_PERIODIC,"False"],[ht.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(ht.CONTROLS_REPEAT_INPUT_DO)}},id={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},nd={init:function(){this.jsonInit({inputsInline:!0,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(ht.CONTROLS_REPEAT_INPUT_DO)}},sd={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:kl,helpUrl:ht.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:ht.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:ht.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},od=140,_d={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},pd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},ad={init:function(){this.setColour(od),this.appendValueInput("SUB").appendField("I2C "+ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_I2C_INIT)}},ud={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},rd={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},ld={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_I2C_SCAN1+ht.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_I2C_SCAN)}},dd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(ht.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},Id={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_SET)}},Td={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_SET+ht.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},hd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(ht.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ht.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_READ)}},Md={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ht.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(ht.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ht.Msg.LANG_MATH_BYTE+" "+ht.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},md={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(ht.Msg.MIXLY_SERIAL_READ+ht.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_READINTO)}},Od={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(ht.Msg.MIXLY_SERIAL_READ+ht.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},Ed={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_WRITE)}},Rd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(ht.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},cd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},gd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_READ+ht.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},Cd={init:function(){this.setColour(od),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Sd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+ht.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(ht.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_INIT)}},Ad={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_SCAN)}},Ld={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_READ)}},Nd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_WRITE).appendField(new ht.FieldDropdown([[ht.Msg.LANG_MATH_STRING,"write"],[ht.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_WRITE)}},Dd={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(ht.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_SELECT)}},fd={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_OW_RESET)}},Pd={init:function(){this.setColour(od),this.appendValueInput("PIN").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_IR_INPUT1,"8"],[ht.Msg.MIXLY_IR_INPUT2,"16"],[ht.Msg.MIXLY_IR_INPUT3,"0"],[ht.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(ht.Msg.CONTROLS_REPEAT_INPUT_DO+ht.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_IR_CMD_CODE,"0"],[ht.Msg.MIXLY_IR_ADDR_CODE,"1"],[ht.Msg.MIXLY_IR_RAW_CODE,"2"],[ht.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},vd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXlY_RECV_FUN).appendField(new ht.FieldDropdown([[ht.Msg.MILY_PAUSE,"True"],[ht.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(ht.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},xd={init:function(){this.setColour(od),this.appendValueInput("time").appendField(ht.Msg.MIXlY_RECV_FUN).appendField(ht.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(ht.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xd={init:function(){this.setColour(od),this.appendValueInput("PIN").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.MIXLY_IR_SEND).appendField(ht.Msg.MIXLY_PIN),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_IR_SEND_samsung1,"False"],[ht.Msg.MIXLY_IR_SEND_samsung2,"True"],[ht.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(ht.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},bd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(ht.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(ht.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(ht.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},Vd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_IR_PULSE).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(ht.Msg.MIXLY_IR_RAW_CODE).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Bd={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},Ud={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField(ht.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MSG.catEthernet_init+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+ht.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gd={init:function(){this.setColour(od),this.appendValueInput("VAR").appendField(ht.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MSG.catEthernet_init+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+ht.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_ONEWIRE_SCAN+ht.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},kd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},Hd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_TEXT_JOIN+ht.Msg.MSG.catBLE).appendField(new ht.FieldDropdown([[ht.Msg.HTML_NAME,"name"],[ht.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Wd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Kd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MSG.catBLE+ht.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(ht.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Jd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MSG.catBLE+ht.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},Qd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(ht.Msg.CONTROLS_REPEAT_INPUT_DO+ht.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},zd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(ht.Msg.CONTROLS_REPEAT_INPUT_DO+ht.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},jd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+ht.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(ht.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TX_POWER).appendField(new ht.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Zd={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+ht.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(ht.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},$d={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},tI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},eI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new ht.FieldDropdown([["("+ht.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+ht.Msg.OLED_STRING+")",""],[ht.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[ht.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},iI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},nI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(ht.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},oI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_MP_ESPNOW_RADIO+ht.Msg.MIXLY_TX_POWER).appendField(new ht.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},_I={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},pI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},aI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},uI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},rI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},lI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},dI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new ht.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},II={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},TI={init:function(){this.setColour(od),this.appendDummyInput().appendField(ht.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new ht.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},hI={init:function(){this.setColour(od),this.appendValueInput("SUB").appendField("Lora"+ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(ht.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(ht.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(ht.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(ht.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(ht.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new ht.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_LORA_INIT_TOOLTIP)}},MI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_PACKAGE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[ht.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},mI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ht.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},OI={init:function(){this.setColour(od),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},EI={init:function(){this.setColour(od),this.appendValueInput("DOMAIN").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS_GET).appendField(new ht.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},RI={init:function(){this.appendValueInput("VAL");var t=[[ht.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(od),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ht.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ht.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ht.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},cI={init:function(){this.appendValueInput("VAR").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(od),this.appendDummyInput("").appendField(ht.Msg.blockpy_CONDUCT).appendField(new ht.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},gI=ad,CI=ud,SI=rd,AI=ld,LI=dd,NI=Id,DI=Td,fI=hd,PI=Md,FI=md,vI=Od,YI=Ed,xI=Rd,XI=cd,bI=gd,VI=120;({init:function(){this.setColour(VI),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ht.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new ht.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}}).OPERATORS=[[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(VI);var t=new ht.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const yI="5BA5A5",BI={init:function(){this.setColour(yI),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},UI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},GI={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},wI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},HI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},WI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},KI={init:function(){var t=[[ht.Msg.MIXLY_UP,"shift_up"],[ht.Msg.MIXLY_DOWN,"shift_down"],[ht.Msg.MIXLY_LEFT,"shift_left"],[ht.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET2).appendField(new ht.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ht.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ht.Msg.DISPLAY_IMAGE_LET,n=ht.Msg.DISPLAY_IMAGE_LET2,s=ht.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT}[t]+s}))}},JI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},QI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},qI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},zI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},jI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},ZI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new ht.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},$I={init:function(){var t=[[ht.Msg.MICROBIT_DISPLAY_UNION,"add"],[ht.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(ht.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":ht.Msg.MIXLY_MICROBIT_image_add,"-":ht.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},tT={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(yI),this.appendValueInput("A").setCheck("esp32_image").appendField(ht.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},eT={init:function(){this.setColour(yI),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},iT={init:function(){this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.OLEDDISPLAY+ht.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(yI),this.setTooltip(ht.Msg.MIXLY_DF_LCD+ht.Msg.OLEDDISPLAY+ht.Msg.MIXLY_MICROBIT_TYPE_STRING)}},nT={init:function(){var t=[[ht.Msg.MIXLY_HEIGHT,"height"],[ht.Msg.MIXLY_WIDTH,"width"]];this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ht.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ht.Msg.MIXLY_MICROBIT_IMAGE+{height:ht.Msg.MIXLY_HEIGHT,width:ht.Msg.MIXLY_WIDTH}[t]}))}},sT={init:function(){var t=[[ht.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ht.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RECT).appendField(new ht.FieldDropdown(t),"OP"),this.jsonInit({message0:ht.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_OLED_RECT)}},oT={init:function(){this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_DISPLAY_DRAW).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_DISPLAY_RLINE,"hline"],[ht.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:ht.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_OLED_LINE)}},_T={init:function(){this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.jsonInit({message0:ht.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_OLED_LINE_ARBIT)}},pT={init:function(){this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(ht.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},aT={init:function(){this.setColour(yI),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},uT={init:function(){this.setColour(yI),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(ht.Msg.LISTS_SET_INDEX_SET+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B)}},rT={init:function(){this.setColour(yI),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_ON,"ON"],[ht.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},lT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[ht.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:ht.Msg.MIXLY_LCD_STAT_CLEAR,1:ht.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return ht.Msg.MIXLY_DF_LCD+i[e]}))}},dT={init:function(){this.setColour(yI),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new ht.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},IT={init:function(){var t=[[ht.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ht.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new ht.FieldDropdown(t),"OP"),this.jsonInit({message0:ht.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},TT={init:function(){var t=[[ht.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ht.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_DISPLAY_DRAW+ht.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new ht.FieldDropdown(t),"OP"),this.jsonInit({message0:ht.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_DISPLAY_DRAW+ht.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},hT={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(ht.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},MT={init:function(){this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(ht.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(ht.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(ht.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(ht.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(ht.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.OLED_SHOW_BMP_TOOLTIP)}},mT={init:function(){this.setColour(yI),this.appendValueInput("VAR").appendField(ht.Msg.OLED),this.appendDummyInput("").appendField(ht.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(ht.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(ht.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.OLED_DRAW_PIXE_TOOLTIP)}},OT={init:function(){this.setColour(yI),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ht.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[e]}))}},ET={init:function(){this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_4DIGITDISPLAY).appendField(new ht.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ON,"on"],[ht.Msg.MIXLY_OFF,"off"],[ht.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},RT={init:function(){this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_4DIGITDISPLAY).appendField(new ht.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},cT={init:function(){this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_4DIGITDISPLAY).appendField(new ht.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(ht.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ht.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},gT={init:function(){this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_4DIGITDISPLAY).appendField(new ht.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},CT={init:function(){this.setColour(yI),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+ht.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(ht.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(ht.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.blockpy_turtle_rotate).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_NO,"0"],[ht.Msg.ANTI_CLOCKWISE+"90°","1"],[ht.Msg.ANTI_CLOCKWISE+"180°","2"],[ht.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ST={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catTFT),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},AT={init:function(){this.setColour(yI);let t=new ht.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(ht.inputs.Align.RIGHT).appendField(t,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},LT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},NT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},DT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catTFT),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[ht.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:ht.Msg.MIXLY_LCD_STAT_CLEAR,1:ht.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return ht.Msg.MIXLY_DF_LCD+i[e]}))}},PT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:ht.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_OLED_LINE_ARBIT)}},FT={init:function(){this.setColour(yI),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(ht.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ht.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},vT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.array2_rows),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},YT={init:function(){this.setColour(yI),this.appendValueInput("SUB").appendField(ht.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_SERIAL_PRINT+ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catLCD),this.appendDummyInput().appendField(ht.Msg.TFT_Brightness).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[ht.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={1:ht.Msg.MIXLY_MICROBIT_Turn_on_display,0:ht.Msg.MIXLY_MICROBIT_Turn_off_display};return ht.Msg.MSG.catLCD+ht.Msg.TFT_Brightness+i[e]}))}},XT={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catLCD),this.setColour(yI),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},bT={init:function(){this.setColour(yI),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(ht.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ht.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},VT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},yT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},BT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ht.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},UT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},GT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},kT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},HT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},WT={init:function(){var t=[[ht.Msg.MIXLY_UP,"shift_up"],[ht.Msg.MIXLY_DOWN,"shift_down"],[ht.Msg.MIXLY_LEFT,"shift_left"],[ht.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET2).appendField(new ht.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ht.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ht.Msg.DISPLAY_IMAGE_LET,n=ht.Msg.DISPLAY_IMAGE_LET2,s=ht.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT}[t]+s}))}},KT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},JT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},QT={init:function(){this.setColour(yI),this.appendValueInput("SUB").setCheck("var").appendField(ht.Msg.MSG.catOLED),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},qT={init:function(){this.jsonInit({colour:yI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ht.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ht.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[ht.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ht.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ht.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},zT={init:function(){this.jsonInit({colour:yI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ht.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ht.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[ht.Msg.mpython_vertical,"0"],[ht.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ht.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},jT={init:function(){this.jsonInit({colour:yI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ht.Msg.mpython_display_hline_1,"1"],[ht.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.mpython_display_line_TOOLTIP,message0:ht.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},ZT="#569A98",$T={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==Mt.Boards.getSelectedBoardKey()&&this.setTooltip(ht.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},th={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},eh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ih={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<32;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},_h={init:function(){this.jsonInit({colour:ZT,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:ht.Msg.MIXLY_MICROBIT_Built_in_image1,message0:ht.Msg.MIXLY_MICROBIT_Built_in_image})}},ph={init:function(){this.jsonInit({colour:ZT,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:ht.Msg.MIXLY_MICROBIT_Built_in_image1,message0:ht.Msg.MIXLY_MICROBIT_Built_in_image})}},ah={init:function(){var t=[[ht.Msg.MICROBIT_DISPLAY_UNION,"add"],[ht.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(ZT),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(ht.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":ht.Msg.MIXLY_MICROBIT_image_add,"-":ht.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},uh={init:function(){this.setColour(ZT),this.appendValueInput("A").setCheck("esp32_image").appendField(ht.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},rh={init:function(){var t=[[ht.Msg.MIXLY_UP,"shift_up"],[ht.Msg.MIXLY_DOWN,"shift_down"],[ht.Msg.MIXLY_LEFT,"shift_left"],[ht.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(ZT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET2).appendField(new ht.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ht.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ht.Msg.DISPLAY_IMAGE_LET,n=ht.Msg.DISPLAY_IMAGE_LET2,s=ht.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:ht.Msg.MIXLY_UP,shift_down:ht.Msg.MIXLY_DOWN,shift_left:ht.Msg.MIXLY_LEFT,shift_right:ht.Msg.MIXLY_RIGHT}[t]+s}))}},lh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},dh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Ih={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Th={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},hh={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},Mh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<8;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},mh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},Oh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<16;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0,"esp32_image"),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},Eh={init:function(){var t=[["4x5"+ht.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+ht.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+ht.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.OLED_SET_FONT).appendField(new ht.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Rh={init:function(){this.setColour(ZT),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},ch={init:function(){this.setColour(ZT),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},gh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ht.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},Ch={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Sh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},Ah={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Lh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Nh={init:function(){this.jsonInit({colour:ZT,args0:[{name:"state",options:[[ht.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ht.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[ht.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ht.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ht.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},Dh={init:function(){this.jsonInit({colour:ZT,args0:[{name:"state",options:[[ht.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ht.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[ht.Msg.mpython_vertical,"0"],[ht.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ht.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},fh={init:function(){this.jsonInit({colour:ZT,args0:[{name:"state",options:[[ht.Msg.mpython_display_hline_1,"1"],[ht.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.mpython_display_line_TOOLTIP,message0:ht.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},Ph={init:function(){this.jsonInit({colour:ZT,args0:[{type:"field_label",name:"size_image",text:ht.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},Fh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<5;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},vh={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Yh={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},xh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},Xh={init:function(){var t=[[ht.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[ht.Msg.CLOCKWISE+"90"+ht.Msg.blockpy_setheading_degree,"1"],[ht.Msg.CLOCKWISE+"180"+ht.Msg.blockpy_setheading_degree,"2"],[ht.Msg.CLOCKWISE+"270"+ht.Msg.blockpy_setheading_degree,"3"]];this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new ht.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},bh={init:function(){this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new ht.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(ZT),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Create_image1)}},Vh={init:function(){this.setColour(ZT),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},yh={init:function(){this.setColour(ZT),this.appendValueInput("data").appendField(ht.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.OLED_BITMAP_OR_STRING)}},Bh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ht.Msg.TEXT_CENTER).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Uh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ht.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},wh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},kh={init:function(){this.setColour(ZT),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hh={init:function(){this.jsonInit({colour:ZT,args0:[{name:"shape",options:[[ht.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ht.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ht.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},Wh={init:function(){this.jsonInit({colour:ZT,args0:[{name:"dir_h_v",options:[[ht.Msg.mpython_vertical,"0"],[ht.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ht.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},Kh={init:function(){this.jsonInit({colour:ZT,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,tooltip:ht.Msg.mpython_display_line_TOOLTIP,message0:ht.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},Jh={init:function(){var t=[[ht.Msg.MIXLY_UP,"shift_up"],[ht.Msg.MIXLY_DOWN,"shift_down"],[ht.Msg.MIXLY_LEFT,"shift_left"],[ht.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(ZT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_LET2).appendField(new ht.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ht.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ht.Msg.DISPLAY_IMAGE_LET,n=ht.Msg.DISPLAY_IMAGE_LET2,s=ht.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT}[t]+s}))}},Qh={init:function(){this.setColour(ZT),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ht.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},qh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_LCD_SETCOLOR).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},zh={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Clear_display)}},jh={init:function(){this.setColour(ZT),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Zh={init:function(){this.setColour(ZT),this.appendValueInput("x").setCheck(Number).appendField(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},$h={init:function(){this.setColour(ZT),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tM={init:function(){this.setColour(ZT),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(ht.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(ht.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},eM={init:function(){this.setColour(ZT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},iM={init:function(){this.setColour(ZT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(ht.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(ht.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(ht.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nM={init:function(){this.setColour(ZT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sM={init:function(){this.setColour(ZT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oM={init:function(){this.jsonInit({colour:ZT,args0:[{name:"shape",options:[[ht.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[ht.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ht.Msg.mpython_HELPURL,message0:ht.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},_M="#777777",pM={init:function(){this.setColour(_M),this.appendDummyInput("").appendField("from ").appendField(new ht.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new ht.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},aM={init:function(){this.setColour(_M),this.appendDummyInput("").appendField("import ").appendField(new ht.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},uM={init:function(){this.setColour(_M),this.appendDummyInput("").appendField(new ht.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ht.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;ee?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},zM={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},jM={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},ZM={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},$M={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(ht.Msg.MIXLY_WIFI_USERNAME).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(ht.Msg.MIXLY_IOT_PASSWORD).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(ht.Msg.MIXLY_EMQX_PROJECT).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ht.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(ht.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},em={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ht.Msg.MIXLY_EMQX_SUBSCRIBE+ht.Msg.MIXLY_MICROBIT_MSG).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(ht.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},im={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},nm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},sm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},om={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ht.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},_m={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},pm={init:function(){this.setColour(kM),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},am={init:function(){this.setColour(kM),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},um={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},rm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO").appendField(ht.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(ht.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},lm={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+ht.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},dm={init:function(){this.setColour(kM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Im={init:function(){this.VISITOR_ID=Mt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(kM),this.appendDummyInput("").appendField(new ht.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},Tm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MixIO").appendField(ht.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},hm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("HTTP"+ht.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ht.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(ht.Msg.MIXLY_REQUESTS_GET).appendField(ht.Msg.MIXLY_GET_CURRENT_TIME).appendField(ht.Msg.MIXLY_OPEN_DEBUG).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Mm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("HTTP"+ht.Msg.MIXLY_Client).appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ht.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ht.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},mm={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MQTT"+ht.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ht.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(ht.Msg.MIXLY_INIT_SUBSCRIBE).appendField(ht.Msg.MQTT_Topic).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(ht.Msg.MIXLY_OPEN_DEBUG).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Om={init:function(){this.setColour(kM),this.appendDummyInput().appendField("MQTT"+ht.Msg.MIXLY_Client).appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ht.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ht.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Em=HM,Rm=WM,cm=KM,gm=JM,Cm=qM,Sm=225,Am={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(ht.Msg.MIXLY_NETWORK_MODE).appendField(new ht.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},Lm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[ht.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=ht.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:ht.Msg.MIXLY_NETWORK_WIFI_OPEN,False:ht.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},Nm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Dm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return ht.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:ht.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},fm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(ht.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(ht.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},Pm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_CONNECT+ht.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},Fm={init:function(){this.setColour(Sm),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(ht.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(ht.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},vm={init:function(){this.setColour(Sm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},Ym={init:function(){this.setColour(Sm),this.appendValueInput("url").appendField(ht.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},xm={init:function(){this.setColour(Sm),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},Xm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[ht.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[ht.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:ht.Msg.MIXLY_ESP32_NETWORK_IP,1:ht.Msg.MIXLY_ESP32_NETWORK_MASK,2:ht.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},bm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},Vm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[ht.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},ym={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(ht.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(ht.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},Bm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},Um={init:function(){this.setColour(Sm),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ht.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},Gm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},wm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},km={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},Hm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},Wm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},Km={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},Jm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},Qm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},qm={init:function(){this.setColour(Sm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},zm={init:function(){this.setColour(Sm),this.appendValueInput("DOMAIN").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS_GET).appendField(new ht.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},jm={init:function(){this.appendValueInput("VAL");var t=[[ht.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Sm),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ht.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ht.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ht.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},Zm={init:function(){this.appendValueInput("VAR").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Sm),this.appendDummyInput("").appendField(ht.Msg.blockpy_CONDUCT).appendField(new ht.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:ht.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:ht.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},$m={init:function(){this.setColour(Sm),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(ht.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},tO={init:function(){this.setColour(Sm),this.appendDummyInput("").appendField(new ht.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},eO=100,iO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(eO),this.appendDummyInput().appendField(t).appendField(ht.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},nO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(eO),this.appendValueInput("PIN").appendField(t).appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},sO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(eO),this.appendValueInput("PIN").appendField(t).appendField(ht.Msg.SET_USB),this.appendValueInput("percent").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_POWER_SUPPLY),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},oO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(eO),this.appendDummyInput().appendField(t).appendField(ht.Msg.MIXLY_SPK_STATE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ON,"True"],[ht.Msg.MIXLY_OFF,"False"]]),"state"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},_O=100,pO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(e),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},aO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},uO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},rO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},lO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},dO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},IO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+ht.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},TO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(_O),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},hO="#A58C5B",MO={init:function(){this.setColour(hO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SENOR_IS_PRESSED)}},mO={init:function(){this.setColour(hO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SENOR_WAS_PRESSED)}},OO={init:function(){this.setColour(hO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_BUTTON+ht.Msg.MIXLY_GET_PRESSES)}},EO={init:function(){this.setColour(hO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ht.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ht.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},RO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_shake,"shake"],[ht.Msg.MIXLY_UP,"up"],[ht.Msg.MIXLY_DOWN,"down"],[ht.Msg.MIXLY_LEFT,"left"],[ht.Msg.MIXLY_RIGHT,"right"],[ht.Msg.MIXLY_MICROBIT_face_up,"face up"],[ht.Msg.MIXLY_MICROBIT_face_down,"face down"],[ht.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ht.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ht.Msg.MSG.catSensor,s=ht.Msg.MIXLY_MICROBIT_JS_STATE,o=ht.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ht.Msg.MIXLY_MICROBIT_shake,up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT,"face up":ht.Msg.MIXLY_MICROBIT_face_up,"face down":ht.Msg.MIXLY_MICROBIT_face_down,freefall:ht.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},cO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},gO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},CO={init:function(){var t=[[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(hO),this.appendValueInput("PIN",Number).appendField(new ht.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new ht.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},SO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},AO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},LO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"left"],[ht.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(ht.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=ht.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=ht.Msg.MIXLY_ESP32_NEAR;return i+{left:ht.Msg.TEXT_TRIM_LEFT,right:ht.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},NO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[ht.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":ht.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":ht.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},DO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[ht.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},fO={init:function(){this.setColour(hO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},PO={init:function(){this.setColour(hO),this.appendDummyInput("").appendField("LM35"+ht.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_LM35)}},FO={init:function(){this.setColour(hO),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},vO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[ht.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[ht.Msg.MIXLY_ESP32_MAX30102_IR+","+ht.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},YO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[ht.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[ht.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},xO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},XO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.HTML_COLOUR+ht.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET+ht.Msg.HTML_COLOUR,"[2]"],[ht.Msg.MIXLY_GET+ht.Msg.MIXLY_IR_STRENGTH,"[1]"],[ht.Msg.MIXLY_GET+ht.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET_ENV_LIGHT,"E"],[ht.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},VO={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},yO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},BO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},UO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_Altitude+ht.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETPRESSURE,"pressure()"],[ht.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[ht.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},GO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MIXGOPE_FIELD+ht.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[ht.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},wO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_shake,"shake"],[ht.Msg.MIXLY_UP,"up"],[ht.Msg.MIXLY_DOWN,"down"],[ht.Msg.MIXLY_LEFT,"left"],[ht.Msg.MIXLY_RIGHT,"right"],[ht.Msg.MIXLY_MICROBIT_face_up,"face up"],[ht.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ht.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ht.Msg.MSG.catSensor,s=ht.Msg.MIXLY_MICROBIT_JS_STATE,o=ht.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ht.Msg.MIXLY_MICROBIT_shake,up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT,"face up":ht.Msg.MIXLY_MICROBIT_face_up,"face down":ht.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},kO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},HO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_GET+ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},WO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ht.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},KO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},JO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_GETTEMPERATUE)}},QO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return ht.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},qO={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},zO={init:function(){this.setColour(hO),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},jO={init:function(){this.setColour(hO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[ht.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},ZO={init:function(){this.setColour(hO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},$O={init:function(){this.setColour(hO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},tE={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ht.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},eE={init:function(){this.setColour(hO),this.appendDummyInput().appendField(ht.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ht.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(ht.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},iE={init:function(){this.setColour(hO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RFID_SCAN_OK,"0"],[ht.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[ht.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},nE={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},sE={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},oE={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},_E={init:function(){this.setColour(hO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ht.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},gL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},CL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},SL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},AL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},LL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},NL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},DL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},fL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},PL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},FL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},vL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},YL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},xL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},XL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},bL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},VL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},yL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},BL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},UL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},GL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},wL=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},kL=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},HL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},WL=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},KL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},JL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},QL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},qL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},zL=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},jL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},ZL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},$L=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},tN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},eN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Mt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},iN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},nN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},sN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},oN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},_N=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},pN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},aN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},uN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},rN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},lN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},dN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},IN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},TN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Mt.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},hN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},MN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},mN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ON=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},EN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},RN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},cN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},gN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},CN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},SN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},AN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},LN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},NN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},DN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},fN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},PN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},FN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},vN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},YN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},xN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},XN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},bN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},VN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},yN=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},MD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},mD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},OD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},ED=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},RD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},cD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},gD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},CD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},SD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},AD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},LD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},ND=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},DD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},fD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},PD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},FD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},vD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},YD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},xD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},XD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},bD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},VD=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},yD=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},BD=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},HY=function(){return"control.reset()\n"},WY=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+")\n"},KY=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+")\n"},JY=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},QY=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},qY=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},zY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},jY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},ZY=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},$Y=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},tx=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},ex=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},ix=function(){return"while True:\n pass\n"},nx=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},sx=function(t,e){return e.definitions_.import_os="import os","os.uname()"},ox=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},_x=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},px=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},ax=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},ux=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},rx=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},lx=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},dx=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},Ix=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},Tx=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},hx=rx,Mx=ax,mx=ux,Ox=ox,Ex=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Rx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},cx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},gx={};gx["元控青春"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","spk_midi.DADADADUM"],["ENTERTAINER","spk_midi.ENTERTAINER"],["PRELUDE","spk_midi.PRELUDE"],["ODE","spk_midi.ODE"],["NYAN","spk_midi.NYAN"],["RINGTONE","spk_midi.RINGTONE"],["FUNK","spk_midi.FUNK"],["BLUES","spk_midi.BLUES"],["BIRTHDAY","spk_midi.BIRTHDAY"],["WEDDING","spk_midi.WEDDING"],["FUNERAL","spk_midi.FUNERAL"],["PUNCHLINE","spk_midi.PUNCHLINE"],["PYTHON","spk_midi.PYTHON"],["BADDY","spk_midi.BADDY"],["CHASE","spk_midi.CHASE"],["BA_DING","spk_midi.BA_DING"],["WAWAWAWAA","spk_midi.WAWAWAWAA"],["JUMP_UP","spk_midi.JUMP_UP"],["JUMP_DOWN","spk_midi.JUMP_DOWN"],["POWER_UP","spk_midi.POWER_UP"],["POWER_DOWN","spk_midi.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},gx["元控"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","spk_midi.DADADADUM"],["ENTERTAINER","spk_midi.ENTERTAINER"],["PRELUDE","spk_midi.PRELUDE"],["ODE","spk_midi.ODE"],["NYAN","spk_midi.NYAN"],["RINGTONE","spk_midi.RINGTONE"],["FUNK","spk_midi.FUNK"],["BLUES","spk_midi.BLUES"],["BIRTHDAY","spk_midi.BIRTHDAY"],["WEDDING","spk_midi.WEDDING"],["FUNERAL","spk_midi.FUNERAL"],["PUNCHLINE","spk_midi.PUNCHLINE"],["PYTHON","spk_midi.PYTHON"],["BADDY","spk_midi.BADDY"],["CHASE","spk_midi.CHASE"],["BA_DING","spk_midi.BA_DING"],["WAWAWAWAA","spk_midi.WAWAWAWAA"],["JUMP_UP","spk_midi.JUMP_UP"],["JUMP_DOWN","spk_midi.JUMP_DOWN"],["POWER_UP","spk_midi.POWER_UP"],["POWER_DOWN","spk_midi.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},gx["ESP32S2 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM",".DADADADUM"],["ENTERTAINER",".ENTERTAINER"],["PRELUDE",".PRELUDE"],["ODE",".ODE"],["NYAN",".NYAN"],["RINGTONE",".RINGTONE"],["FUNK",".FUNK"],["BLUES",".BLUES"],["BIRTHDAY",".BIRTHDAY"],["WEDDING",".WEDDING"],["FUNERAL",".FUNERAL"],["PUNCHLINE",".PUNCHLINE"],["PYTHON",".PYTHON"],["BADDY",".BADDY"],["CHASE",".CHASE"],["BA_DING",".BA_DING"],["WAWAWAWAA",".WAWAWAWAA"],["JUMP_UP",".JUMP_UP"],["JUMP_DOWN",".JUMP_DOWN"],["POWER_UP",".POWER_UP"],["POWER_DOWN",".POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const Cx=gx,Sx=20,Ax={init:function(){this.setColour(Sx),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_HIGH,"HIGH"],[ht.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},Lx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},Nx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},Dx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},fx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField("DAC"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},Px={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_mSecond,"period"],[ht.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},Fx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_FREQUENCY+ht.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},vx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},Yx={init:function(){this.setColour(Sx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_REF_VOLTAGE+ht.Msg.MIXLY_STAT).appendField(new ht.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},xx={init:function(){this.setColour(Sx),this.appendValueInput("pin").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},Xx={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ht.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ht.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},bx={init:function(){this.setColour(20),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_AS).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[ht.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[ht.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[ht.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Vx={init:function(){this.setColour(Sx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("pwm#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},yx={init:function(){this.setColour(Sx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("dac#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+ht.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Bx={init:function(){this.setColour(Sx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("adc#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(ht.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Ux={init:function(){this.setColour(Sx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("tc#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Gx=bx,wx=Fx,kx=Ux,Hx=xx,Wx=Xx,Kx=230,Jx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital),"PIN"),this.setOutput(!0)}},Qx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},qx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},zx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},jx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},Zx={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},$x={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},tX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},eX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},iX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},nX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},sX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},oX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},_X={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},pX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},aX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},uX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog),"PIN"),this.setOutput(!0)}},rX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},lX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.dac),"PIN"),this.setOutput(!0)}},dX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},IX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},TX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},hX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},MX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},mX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},OX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.touch),"PIN"),this.setOutput(!0)}},EX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},RX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},cX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},gX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},CX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},SX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},AX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},LX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},NX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},DX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},fX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},PX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},FX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},vX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},YX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},xX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},XX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},bX={init:function(){this.setColour(Kx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},VX=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},yX=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},BX=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},UX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},GX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},wX=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},kX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},HX=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},WX=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},KX=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},JX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},QX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},qX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},zX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},jX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},ZX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},$X=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},tb=$X,eb=$X,ib=$X,nb=$X,sb=$X,ob=$X,_b=$X,pb=$X,ab=$X,ub=$X,rb=$X,lb=$X,db=$X,Ib=$X,Tb=$X,hb=$X,Mb=$X,mb=$X,Ob=$X,Eb=$X,Rb=$X,cb=$X,gb=$X,Cb=$X,Sb=$X,Ab=$X,Lb=$X,Nb=$X,Db=$X,fb=$X,Pb=$X,Fb=$X,vb=$X,Yb=$X,xb=$X,Xb=$X,bb=$X,Vb=$X,yb=$X,Bb=$X,Ub=$X,Gb=$X,wb=$X,kb=$X;Object.assign(ht.Variables,Ot),Object.assign(ht.Procedures,Hn),ht.Python=_u,ht.generator=_u,Mt.Profile.default={},Object.assign(Mt.Profile,Cx),Object.assign(Mt.Profile.default,Cx["MixGo CE"]),Object.assign(ht.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,b,H,k,v,V,W,f,w,G,U,y,P,D,N,x,Y,X,F,B,lt,dt),Object.assign(ht.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,et,ut,at,j,it,rt,Q,pt,_t,ot,nt,q,J,K,$,Z,tt,z,st,It,Tt)})(); \ No newline at end of file +class Et{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ht.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(ht.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ht.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(ht.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},xt={init:function(){this.setColour(Dt),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PYTHON_RANGE).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Xt={init:function(){this.setColour(Dt),this.appendValueInput("LIST").setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(ht.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return ht.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},bt={init:function(){this.setColour(Dt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new ht.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ht.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ht.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Vt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ht.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ht.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},yt={init:function(){this.setColour(Dt);var t=new ht.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ht.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Bt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ht.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ht.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Gt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ht.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ht.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};bt.OPERATORS=[[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],yt.OPERATORS=[[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ht.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Ut={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},wt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},kt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(ht.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Ht={init:function(){this.setColour(Dt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Wt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Kt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(ht.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Jt={init:function(){this.jsonInit({message0:ht.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:Dt,tooltip:ht.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:ht.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Qt={init:function(){this.setColour(Dt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_STAT),this.setOutput(!0)}},qt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},zt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},jt={init:function(){this.appendDummyInput().appendField(ht.Msg.CONTROLS_REPEAT_TITLE_REPEAT+ht.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(ht.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new ht.FieldDropdown([[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[ht.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(Dt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Zt={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$t={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},te={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ee={init:function(){this.setColour(Dt),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_GET_UNIQUE_IDEN)}},ie=230;ht.FieldTextInput.math_number_validator=function(t){return String(t)},ht.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const ne={init:function(){this.setColour(ie),this.appendDummyInput().appendField(new ht.FieldTextInput("0",ht.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MATH_NUMBER_TOOLTIP)}},se={init:function(){this.setColour(ie);this.appendDummyInput("").appendField(ht.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ht.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},oe={init:function(){this.setColour(ie);this.appendDummyInput("").appendField(ht.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ht.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:ht.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},_e={init:function(){this.setColour(ie),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ht.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ht.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ht.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},pe={init:function(){this.setColour(ie),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ht.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ht.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ht.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ht.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ht.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ae={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new ht.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},ue={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new ht.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:ht.Msg.MATH_TRIG_TOOLTIP_SIN,COS:ht.Msg.MATH_TRIG_TOOLTIP_COS,TAN:ht.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:ht.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:ht.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:ht.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:ht.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},re={init:function(){var t=[[ht.Msg.MATH_BIN,"bin"],[ht.Msg.MATH_OCT,"oct"],[ht.Msg.MATH_HEX,"hex"]];this.setColour(ie),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new ht.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:ht.Msg.MATH_DEC_TOOLTIP_BIN,oct:ht.Msg.MATH_DEC_TOOLTIP_OCT,hex:ht.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},le={init:function(){var t=[[ht.Msg.LANG_MATH_TO_ROUND,"round"],[ht.Msg.LANG_MATH_TO_CEIL,"ceil"],[ht.Msg.LANG_MATH_TO_FLOOR,"floor"],[ht.Msg.MATH_ABS,"fabs"],[ht.Msg.MATH_SQRT,"sqrt"]];this.setColour(ie),this.appendValueInput("A").setCheck(Number).appendField(new ht.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:ht.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:ht.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:ht.Msg.MATH_SINGLE_TOOLTIP_SQ,round:ht.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:ht.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:ht.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},de={init:function(){var t=[[ht.Msg.MIXLY_MAX,"max"],[ht.Msg.MIXLY_MIN,"min"]];this.setColour(ie),this.appendValueInput("A").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(ht.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:ht.Msg.MIXLY_TOOLTIP_MATH_MAX,min:ht.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},Ie={init:function(){var t=[[ht.Msg.MATH_TWO,"two"],[ht.Msg.MATH_EIGHT,"eight"],[ht.Msg.MATH_TEN,"ten"],[ht.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(ie),this.appendDummyInput("").appendField(ht.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new ht.FieldDropdown(t),"OP").appendField(ht.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MATH_ZHW).appendField(new ht.FieldDropdown(t),"OP2").appendField(ht.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:ht.Msg.MATH_Before_two,eight:ht.Msg.MATH_Before_eight,ten:ht.Msg.MATH_Before_ten,sixteen:ht.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:ht.Msg.MATH_Behind_two,eight:ht.Msg.MATH_Behind_eight,ten:ht.Msg.MATH_Behind_ten,sixteen:ht.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Te={init:function(){var t=[[ht.Msg.LANG_MATH_INT,"int"],[ht.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(ie),this.setOutput(!0,Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_RANDOM).appendField(new ht.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(ht.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:ht.Msg.LANG_MATH_INT,float:ht.Msg.LANG_MATH_FLOAT_RANDOM};return ht.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},he={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(ht.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(ht.Msg.MATH_CONSTRAIN_TOOLTIP)}},Me={init:function(){this.setColour(ie),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(ht.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(ht.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_MATH_MAP)}},me={init:function(){this.setColour(ie),this.appendDummyInput().appendField(new ht.FieldTextInput("0",ht.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(ht.Msg.MATH_NUMBER_TOOLTIP)}},Oe={init:function(){this.setColour(ie),this.appendValueInput("NUM").setCheck(Number).appendField(ht.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ee={init:function(){this.setColour(ie),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MATH_ROUND).appendField(ht.Msg.TEXT_KEEP),this.appendDummyInput().appendField(ht.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(ht.Msg.MATH_ROUND_NEW_TOOLTIP)}},Re={init:function(){var t=[[ht.Msg.MIXLY_TO_INT,"int"],[ht.Msg.MIXLY_TO_FLOAT,"float"],[ht.Msg.MIXLY_TO_BITES,"b"]];this.setColour(ie),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ht.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:ht.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:ht.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},ce={init:function(){var t=[[ht.Msg.MIXLY_TO_INT,"int"],[ht.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(ie),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ht.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:ht.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},ge=Me,Ce=160,Se={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ht.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ht.FieldImage(e,12,12,'"')}},Ae={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ht.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ht.FieldImage(e,12,12,'"')}};ht.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Le={init:function(){this.setColour(Ce),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ht.FieldTextInput("",ht.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(ht.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new ht.FieldImage(e,7,12,'"')}},Ne={init:function(){this.setColour(Ce),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(ht.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},De={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},fe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(String).appendField(ht.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Pe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Fe={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},ve={init:function(){this.WHERE_OPTIONS=[[ht.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ht.Msg.TEXT_GET_INDEX_RANDOM+1+ht.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.LISTS_GET_INDEX_GET,"MODE"),ht.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(ht.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=ht.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+ht.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",ht.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:ht.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:ht.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:ht.Msg.TEXT_GET_INDEX_RANDOM};return ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+ht.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==ht.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),ht.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(ht.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new ht.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),ht.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ye={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(ht.Msg.LISTS_GET_INDEX_GET+" "+ht.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(ht.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+ht.Msg.LISTS_GET_INDEX_FROM_START+"n"+ht.Msg.TEXT_CHARAT2)}},xe={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(ht.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(ht.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Xe={init:function(){this.WHERE_OPTIONS_1=[[ht.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ht.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[ht.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[ht.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[ht.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(ht.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==ht.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==ht.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),ht.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(ht.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new ht.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},be={init:function(){this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(ht.Msg.LISTS_GET_INDEX_GET+" "+ht.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(ht.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(ht.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(ht.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Ve={init:function(){var t=[[ht.Msg.MIXLY_EQUALS,"==="],[ht.Msg.MIXLY_STARTSWITH,"startswith"],[ht.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(Ce),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new ht.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},ye={init:function(){this.setColour(Ce),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(ht.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_COMPARETO_HELP)}},Be={init:function(){var t=[[ht.Msg.TEXT_UPPER,"upper"],[ht.Msg.TEXT_TITLE,"title"],[ht.Msg.TEXT_CAPITALIZE,"capitalize"],[ht.Msg.TEXT_SWAPCASE,"swapcase"],[ht.Msg.TEXT_LOWER,"lower"]];this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ht.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:ht.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:ht.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:ht.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:ht.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:ht.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},Ge={init:function(){var t=[[ht.Msg.TEXT_LJUST,"ljust"],[ht.Msg.TEXT_CENTER,"center"],[ht.Msg.TEXT_RJUST,"rjust"]];this.setColour(Ce),this.appendValueInput("VAR").appendField(new ht.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(ht.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(ht.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},Ue={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(ht.Msg.MIXLY_MID+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(ht.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},we={init:function(){this.setColour(Ce),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},ke={init:function(){this.setColour(Ce),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(ht.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(ht.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},He={init:function(){this.setColour(Ce),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(ht.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(ht.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},We={init:function(){var t=[[ht.Msg.TEXT_TRIM_BOTH,"strip"],[ht.Msg.TEXT_TRIM_LEFT,"lstrip"],[ht.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(Ce),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ht.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new ht.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(ht.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:ht.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:ht.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:ht.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Ke={init:function(){this.setColour(Ce),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new ht.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ht.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},wi={init:function(){this.setColour(Gi),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},ki={init:function(){this.setColour(Gi),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Hi={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_KEYS),this.setTooltip(ht.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Wi={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(ht.Msg.DICTS_GET_TOOLTIP)}},Ki={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(ht.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(ht.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Ji={init:function(){this.setColour(Gi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(ht.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Qi={init:function(){this.setColour(Gi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(ht.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_DELETE_TOOLTIP)}},qi={init:function(){this.setColour(Gi),this.appendValueInput("DICT2").setCheck("Dict").appendField(ht.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(ht.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MID),this.setTooltip(ht.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zi={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_CLEAR),this.setTooltip(ht.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ji={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_ITEMS),this.setTooltip(ht.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Zi={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_VALUES),this.setTooltip(ht.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},$i={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_LENGTH),this.setTooltip(ht.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},tn={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.DICT_DELDICT),this.setTooltip(ht.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},en={init:function(){this.MODE=[[ht.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[ht.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(ht.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(ht.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=ht.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=ht.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==ht.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new ht.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},nn={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ht.Msg.DICTS_ADD_VALUE),this.setTooltip(ht.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},sn={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ht.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(ht.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_SETDEFAULT_TOOLTIP)}},on={init:function(){this.setColour(Gi),this.appendDummyInput("").appendField(new ht.FieldLabel(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new ht.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},_n={init:function(){this.setColour(Gi),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},pn={init:function(){this.setColour(Gi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TO_JSON),this.setTooltip(ht.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},an={init:function(){this.setColour(Gi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(ht.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},un=210,rn={init:function(){var t=ht.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:ht.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:ht.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:ht.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:ht.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:ht.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:ht.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},ln={init:function(){var t=ht.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=ht.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new ht.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},dn={init:function(){var t=[[ht.Msg.LOGIC_OPERATION_AND,"AND"],[ht.Msg.LOGIC_OPERATION_OR,"OR"],[ht.Msg.LOGIC_OPERATION_NOR,"NOR"],[ht.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new ht.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:ht.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:ht.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:ht.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:ht.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},In={init:function(){this.setColour(un),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(ht.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(ht.Msg.LOGIC_NEGATE_TOOLTIP)}},Tn={init:function(){var t=[[ht.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[ht.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(un),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new ht.FieldDropdown(t),"BOOL"),this.setTooltip(ht.Msg.LOGIC_BOOLEAN_TOOLTIP)}},hn={init:function(){this.setColour(un),this.setOutput(!0),this.appendDummyInput().appendField(ht.Msg.LOGIC_NULL),this.setTooltip(ht.Msg.LOGIC_NULL_TOOLTIP)}},Mn={init:function(){this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").appendField(ht.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(ht.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},mn={init:function(){var t=[[ht.Msg.TEXT_APPEND_TO,"in"],[ht.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new ht.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(ht.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.IN)}},On={init:function(){var t=[[ht.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[ht.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(un),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ht.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},En={init:function(){this.setColour(un),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Rn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(ht.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},gn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG,_=ht.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(ht.Msg.MIXPY_TEXT_ENCODE).appendField(new ht.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_USE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ht.Msg.MIXLY_BELONG,_=ht.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Sn={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+ht.Msg.MIXLY_MICROBIT_TYPE_STRING+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},An={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ht.Msg.MICROBIT_PYTHON_TYPE)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.HTML_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Fn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const vn={init:function(){this.setColour(0),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},Xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},bn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Vn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ht.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+ht.Msg.MIXLY_ESP32_SET+{mkdir:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(ht.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Bn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.HTML_FILE,"isfile"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+ht.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Un={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(ht.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},wn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(ht.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},kn={};kn.NAME_TYPE=ht.PROCEDURE_CATEGORY_NAME,kn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(ht.Msg.MIXLY_AIP_ATTR).setAlign(ht.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ys={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Bs={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_FORM_CONTENT).appendField(new ht.FieldDropdown([[ht.Msg.HTML_TEXT,"text"],[ht.Msg.HTML_EMAIL,"email"],[ht.Msg.HTML_NUMBER,"number"],[ht.Msg.HTML_PASSWORD,"password"],[ht.Msg.HTML_CHECKBOX,"checkbox"],[ht.Msg.HTML_RADIOBUTTON,"radiobutton"],[ht.Msg.HTML_BUTTON,"button"],[ht.Msg.HTML_COLOUR,"colour"],[ht.Msg.HTML_DATE,"date"],[ht.Msg.HTML_LOCALTIME,"local time"],[ht.Msg.HTML_FILE,"file"],[ht.Msg.HTML_HIDDEN,"hidden"],[ht.Msg.HTML_IMAGE,"image"],[ht.Msg.HTML_MONTH,"month"],[ht.Msg.HTML_RANGE,"range"],[ht.Msg.HTML_RESET,"reset"],[ht.Msg.HTML_SEARCH,"search"],[ht.Msg.HTML_SUBMIT,"submit"],[ht.Msg.HTML_TELEPHONENUMBER,"telephone number"],[ht.Msg.HTML_TIME,"time"],[ht.Msg.HTML_URL,"url"],[ht.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(ht.Msg.HTML_NAME).appendField(new ht.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(ht.Msg.HTML_VALUE).appendField(new ht.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(ht.Msg.MIXLY_AIP_ATTR).setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Gs={init:function(){this.setColour(vs),this.appendDummyInput().appendField(new ht.FieldTextInput("property"),"KEY").appendField(":").appendField(new ht.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Us={init:function(){this.setColour(vs),this.appendDummyInput().appendField(new ht.FieldTextInput("property"),"KEY").appendField(":").appendField(new ht.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ws={init:function(){this.setColour(vs),this.appendDummyInput().appendField(ht.Msg.HTML_TEXT).appendField(new ht.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ks=160,Hs={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new ht.FieldTable(""),"TEXT")}},Ws={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new ht.FieldMultilineInput(""),"TEXT")}},Ks={init:function(){this.setColour(ks),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new ht.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Js={init:function(){this.setColour(ks),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Qs={init:function(){this.setColour(ks),this.appendDummyInput().appendTitle("Comment:").appendTitle(new ht.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},qs={init:function(){this.setColour(ks),this.appendValueInput("VALUE").appendField(ht.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},zs={init:function(){this.setColour(ks),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ht.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(ht.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=ht.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},ht.isNumber(n)&&ht.isNumber(s)&&ht.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const xp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},Xp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},bp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Vp=function(t,e){return["None",e.ORDER_ATOMIC]},yp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Bp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Gp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Up=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},wp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},kp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Hp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Wp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Kp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Jp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Qp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},qp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},jp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},Zp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},$p=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},ta=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},ea=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ia=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},na=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},sa=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},oa=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},_a=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},pa=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},aa=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},ua=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},ra=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},la=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),ht.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Wa=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Ka=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},Ja=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},Qa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},qa=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},za=function(t,e){return'"},ja=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Za=function(){return this.getFieldValue("TEXT")+"\n"},$a=function(t){return t.getFieldValue("TEXT")+"\n"},tu=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},eu=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},iu=function(){return""},nu=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},su=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},_u.scrubNakedValue=function(t){return t+"\n"},_u.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},_u.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},_u.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=ht.utils.string.wrap(o,_u.COMMENT_WRAP-3),n+=_u.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const pu="#74A55B",au={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_RGB_PIN_COUNT)}},uu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},ru={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},lu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},du={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ht.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ht.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Iu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Tu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_RESET)}},hu={init:function(){this.setColour(pu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Mu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},mu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Ou={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Eu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Ru={init:function(){this.setColour(pu),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},cu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},gu={init:function(){this.setColour(pu),this.appendValueInput("VAR").appendField("360°"+ht.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SETTING+ht.Msg.blockpy_turtle_rotate+ht.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},Cu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},Su={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Au={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Lu={init:function(){this.setColour(pu),this.appendValueInput("PIN",Number).appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},Nu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new ht.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(ht.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},Du={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ht.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[ht.Msg.MOTOR_N,"ms32006.MOT_N"],[ht.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},fu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new ht.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ht.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Pu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_RGB_PIN_COUNT)}},Fu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},vu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Yu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_WRI)}},xu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ht.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+ht.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},Xu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},bu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Vu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(ht.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},yu={init:function(){this.setColour(pu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(ht.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(ht.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(ht.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Bu={init:function(){this.setColour(pu),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},Gu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Uu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},wu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_TRAFFIC_LIGHT).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.LISTS_SET_INDEX_SET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[ht.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ku={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_WHITE,"W"],[ht.Msg.COLOUR_RGB_RED,"R"],[ht.Msg.COLOUR_RGB_YELLOW,"Y"],[ht.Msg.COLOUR_RGB_GREEN,"G"],[ht.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_WHITE,"W"],[ht.Msg.COLOUR_RGB_RED,"R"],[ht.Msg.COLOUR_RGB_YELLOW,"Y"],[ht.Msg.COLOUR_RGB_GREEN,"G"],[ht.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Wu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[ht.Msg.MIXLY_SPEED,"[1]"],[ht.Msg.MATH_SINGLE_OP_ABSOLUTE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[ht.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[ht.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[ht.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[ht.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MATH_SINGLE_OP_ABSOLUTE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"0"],[ht.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[ht.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},qu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField("("+ht.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},ju={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.ME_GO_MOTOR_EXTERN+ht.Msg.MIXLY_SERVO_MOTOR).appendField(ht.Msg.MIXLY_RELATIVE+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ht.Msg.MSG.run).appendField("("+ht.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LEFT,"0"],[ht.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MODE).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPEED+ht.Msg.MIXLY_MODE,"0"],[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ht.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ht.inputs.Align.RIGHT).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"0"],[ht.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zu={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MOTOR,"ext_motor"],[ht.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ht.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ht.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ht.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ht.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ht.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ht.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},$u={init:function(){this.setColour(pu),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.ME_GO_MOTOR_EXTERN).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MOTOR,"ext_motor"],[ht.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ht.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ht.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ht.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ht.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ht.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ht.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},tr="#6C9858",er={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},ir={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_ON,"1"],[ht.Msg.MIXLY_ESP32_OFF,"0"],[ht.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},nr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},sr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},or={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},_r={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_BUILDIN_LED+ht.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},pr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ht.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(ht.Msg.MIXLY_LCD_SETCOLOR).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_LIGHT_RED,"1"],[ht.Msg.MIXLY_LIGHT_GREEN,"2"],[ht.Msg.MIXLY_LIGHT_BLUE,"3"],[ht.Msg.MIXLY_LIGHT_YELLOW,"4"],[ht.Msg.MIXLY_LIGHT_CYAN,"5"],[ht.Msg.MIXLY_LIGHT_PURPLE,"6"],[ht.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},ar={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},ur={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ht.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},rr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ht.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},lr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETTING).appendField(ht.Msg.MIXLY_BUILDIN_LED).appendField(new ht.FieldDropdown([[ht.Msg.COLOUR_RGB_RED,"r"],[ht.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_BUILDIN_LED+ht.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},dr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(new ht.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},Ir={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Mt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Tr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},hr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Mr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.PYTHON_RANGE_STEP).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},mr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_WRI)}},Or={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(Mt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ht.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Er={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ht.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Rr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ht.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.PYTHON_RANGE_STEP).appendField(ht.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},cr={init:function(){this.setColour(tr),this.appendValueInput("TICKS").setCheck(Number).appendField(ht.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ht.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ht.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},gr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},Cr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_RESET)}},Sr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Ar={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ht.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Lr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nr={init:function(){this.setColour(tr),this.appendValueInput("LIST").appendField(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},Dr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fr={init:function(){this.setColour(tr),this.appendDummyInput().appendField("MixGo Car").appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Pr={init:function(){this.setColour(tr),this.appendDummyInput("").appendField("MixGo Car").appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Fr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([[ht.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ht.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MOTOR_DC).appendField(new ht.FieldDropdown([[ht.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ht.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_STOP).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},xr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ht.Msg.MIXLY_SPEED,"SPEED"],[ht.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Xr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},br={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXBOT).appendField(ht.Msg.MIXLY_MOTOR).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"1"],[ht.Msg.TEXT_TRIM_RIGHT,"2"],[ht.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ht.Msg.MIXLY_SPEED,"SPEED"],[ht.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Vr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[ht.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},yr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(new ht.FieldDropdown([[ht.Msg.blockpy_forward,"F"],[ht.Msg.blockpy_backward,"B"],[ht.Msg.blockpy_left,"L"],[ht.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Br={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(new ht.FieldDropdown([[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.BITBOT).appendField(ht.Msg.MIXLY_MOTOR).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"0"],[ht.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(tr),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},wr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},kr={init:function(){this.setColour(tr),this.appendValueInput("bright").appendField(ht.Msg.MIXLY_SETTING+ht.Msg.MIXLY_MIXBOT_BUZZER+ht.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_SETONOFF)}},Hr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MIXBOT_BUZZER+ht.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_LED_GETONOFF)}},Wr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_RECORD_AUDIO).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(ht.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Kr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_PLAY_AUDIO).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Jr={init:function(){this.setColour(tr),this.appendValueInput("PATH").appendField(ht.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Qr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ht.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},qr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.LISTS_SET_INDEX_SET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},jr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.PIN_NUMBERING).appendField(new ht.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT+ht.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},Zr={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.LISTS_SET_INDEX_SET+ht.Msg.ME_GO_MOTOR_EXTERN).appendField(ht.Msg.MIXLY_ALL+ht.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(ht.ALIGN_RIGHT).appendField(ht.Msg.blynk_IOT_IR_POWER+ht.Msg.MIXLY_PINMODEOUT+ht.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},$r={init:function(){this.setColour(tr),this.appendDummyInput().appendField(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(ht.Msg.MIXLY_RELEASE).appendField(new ht.FieldDropdown([[ht.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ht.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.ANALOG+ht.Msg.MIXLY_KEYBOARD_INPUT)}},tl={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SPECIAL_KEY).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPECIAL_KEY0,"0"],[ht.Msg.MIXLY_SPECIAL_KEY1,"1"],[ht.Msg.MIXLY_SPECIAL_KEY2,"2"],[ht.Msg.MIXLY_SPECIAL_KEY1,"4"],[ht.Msg.MIXLY_SPECIAL_KEY8,"8"],[ht.Msg.MIXLY_SPECIAL_KEY16,"16"],[ht.Msg.MIXLY_SPECIAL_KEY32,"32"],[ht.Msg.MIXLY_SPECIAL_KEY64,"64"],[ht.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},el={init:function(){this.setColour(tr),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GENERAL_KEY).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},il={init:function(){this.setColour(tr),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new ht.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(ht.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("generalkey_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},$M={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},tm={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},em={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},im={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(ht.Msg.MIXLY_WIFI_USERNAME).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(ht.Msg.MIXLY_IOT_PASSWORD).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(ht.Msg.MIXLY_EMQX_PROJECT).setAlign(ht.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},nm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ht.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(ht.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},sm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ht.Msg.MIXLY_EMQX_SUBSCRIBE+ht.Msg.MIXLY_MICROBIT_MSG).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(ht.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},om={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},_m={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},am={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ht.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},um={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ht.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},rm={init:function(){this.setColour(KM),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},lm={init:function(){this.setColour(KM),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},dm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ht.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},Im={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO").appendField(ht.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(ht.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},Tm={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+ht.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},hm={init:function(){this.setColour(KM),this.appendDummyInput().appendField(ht.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ht.Msg.MIXLY_EMQX_SERVER).setAlign(ht.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(ht.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Mm={init:function(){this.VISITOR_ID=Mt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(KM),this.appendDummyInput("").appendField(new ht.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},mm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MixIO").appendField(ht.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},Om={init:function(){this.setColour(KM),this.appendDummyInput().appendField("HTTP"+ht.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ht.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(ht.Msg.MIXLY_REQUESTS_GET).appendField(ht.Msg.MIXLY_GET_CURRENT_TIME).appendField(ht.Msg.MIXLY_OPEN_DEBUG).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Em={init:function(){this.setColour(KM),this.appendDummyInput().appendField("HTTP"+ht.Msg.MIXLY_Client).appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ht.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ht.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Rm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MQTT"+ht.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ht.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(ht.Msg.MIXLY_INIT_SUBSCRIBE).appendField(ht.Msg.MQTT_Topic).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(ht.Msg.MIXLY_OPEN_DEBUG).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ht.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cm={init:function(){this.setColour(KM),this.appendDummyInput().appendField("MQTT"+ht.Msg.MIXLY_Client).appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ht.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ht.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},gm=JM,Cm=QM,Sm=qM,Am=zM,Lm=ZM,Nm=225,Dm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(ht.Msg.MIXLY_NETWORK_MODE).appendField(new ht.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},fm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[ht.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=ht.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:ht.Msg.MIXLY_NETWORK_WIFI_OPEN,False:ht.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},Pm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Fm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return ht.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:ht.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},vm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(ht.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(ht.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},Ym={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_NETWORK_WIFI_CONNECT+ht.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},xm={init:function(){this.setColour(Nm),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(ht.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(ht.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},Xm={init:function(){this.setColour(Nm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},bm={init:function(){this.setColour(Nm),this.appendValueInput("url").appendField(ht.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},Vm={init:function(){this.setColour(Nm),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},ym={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[ht.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[ht.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:ht.Msg.MIXLY_ESP32_NETWORK_IP,1:ht.Msg.MIXLY_ESP32_NETWORK_MASK,2:ht.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},Bm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},Gm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[ht.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},Um={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(ht.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(ht.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},wm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},km={init:function(){this.setColour(Nm),this.appendValueInput("VAR").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ht.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},Hm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},Wm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},Km={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},Jm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},Qm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},qm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},zm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},jm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},Zm={init:function(){this.setColour(Nm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},$m={init:function(){this.setColour(Nm),this.appendValueInput("DOMAIN").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS_GET).appendField(new ht.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},tO={init:function(){this.appendValueInput("VAL");var t=[[ht.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ht.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Nm),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ht.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ht.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ht.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},eO={init:function(){this.appendValueInput("VAR").appendField(ht.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Nm),this.appendDummyInput("").appendField(ht.Msg.blockpy_CONDUCT).appendField(new ht.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ht.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:ht.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:ht.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},iO={init:function(){this.setColour(Nm),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(ht.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},nO={init:function(){this.setColour(Nm),this.appendDummyInput("").appendField(new ht.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},sO=100,oO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(sO),this.appendDummyInput().appendField(t).appendField(ht.Msg.MIXLY_MIXGO_NOVA_POTENTIAL_NUM),this.setOutput(!0,Number),this.setInputsInline(!0)}},_O={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(sO),this.appendValueInput("PIN").appendField(t).appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},pO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(sO),this.appendValueInput("PIN").appendField(t).appendField(ht.Msg.SET_USB),this.appendValueInput("percent").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_POWER_SUPPLY),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},aO={init:function(){if("mixgo_nova"==Mt.Boards.getSelectedBoardKey().split(":")[2])var t="Nova G1";this.setColour(sO),this.appendDummyInput().appendField(t).appendField(ht.Msg.MIXLY_SPK_STATE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ON,"True"],[ht.Msg.MIXLY_OFF,"False"]]),"state"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},uO=100,rO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(e),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},lO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0,Number),this.setInputsInline(!0)}},dO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Direction).appendField(new ht.FieldDropdown([[ht.Msg.CLOCKWISE,"CW"],[ht.Msg.ANTI_CLOCKWISE,"CCW"],[ht.Msg.MOTOR_P,"P"],[ht.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},IO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField(ht.Msg.MOTOR_DC).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_STEPPER_GET_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},TO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_MOVE)}},hO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ht.inputs.Align.RIGHT).appendField(ht.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},MO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("180°"+ht.Msg.MIXLY_SERVO),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},mO={init:function(){var t=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_ce"==t)var e="CE G6";else if("mixgo_pe"==t)e="PE G1";this.setColour(uO),this.appendValueInput("SUB").appendField(e).setCheck("var"),this.appendValueInput("PIN").appendField("360°"+ht.Msg.MIXLY_SERVO).appendField(ht.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET+ht.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},OO="#A58C5B",EO={init:function(){this.setColour(OO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SENOR_IS_PRESSED)}},RO={init:function(){this.setColour(OO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_SENOR_WAS_PRESSED)}},cO={init:function(){this.setColour(OO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(ht.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.PROCEDURES_DEFRETURN_RETURN+ht.Msg.MIXLY_BUTTON+ht.Msg.MIXLY_GET_PRESSES)}},gO={init:function(){this.setColour(OO),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_BUTTON).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ht.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ht.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},CO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_shake,"shake"],[ht.Msg.MIXLY_UP,"up"],[ht.Msg.MIXLY_DOWN,"down"],[ht.Msg.MIXLY_LEFT,"left"],[ht.Msg.MIXLY_RIGHT,"right"],[ht.Msg.MIXLY_MICROBIT_face_up,"face up"],[ht.Msg.MIXLY_MICROBIT_face_down,"face down"],[ht.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ht.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ht.Msg.MSG.catSensor,s=ht.Msg.MIXLY_MICROBIT_JS_STATE,o=ht.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ht.Msg.MIXLY_MICROBIT_shake,up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT,"face up":ht.Msg.MIXLY_MICROBIT_face_up,"face down":ht.Msg.MIXLY_MICROBIT_face_down,freefall:ht.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},SO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},AO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},LO={init:function(){var t=[[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(OO),this.appendValueInput("PIN",Number).appendField(new ht.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new ht.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:ht.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},NO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},DO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},fO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ht.FieldDropdown([[ht.Msg.TEXT_TRIM_LEFT,"left"],[ht.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(ht.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=ht.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=ht.Msg.MIXLY_ESP32_NEAR;return i+{left:ht.Msg.TEXT_TRIM_LEFT,right:ht.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},PO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[ht.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":ht.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":ht.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},FO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[ht.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},vO={init:function(){this.setColour(OO),this.appendValueInput("PIN",Number).appendField("DS18x20 "+ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},YO={init:function(){this.setColour(OO),this.appendDummyInput("").appendField("LM35"+ht.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_TOOLTIP_LM35)}},xO={init:function(){this.setColour(OO),this.appendValueInput("I2CSUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},XO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[ht.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[ht.Msg.MIXLY_ESP32_MAX30102_IR+","+ht.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[ht.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[ht.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},VO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},yO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.HTML_COLOUR+ht.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET+ht.Msg.HTML_COLOUR,"[2]"],[ht.Msg.MIXLY_GET+ht.Msg.MIXLY_IR_STRENGTH,"[1]"],[ht.Msg.MIXLY_GET+ht.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},BO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GET_ENV_LIGHT,"E"],[ht.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},GO={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},UO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},wO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ht.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:ht.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},kO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_Altitude+ht.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_GETPRESSURE,"pressure()"],[ht.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[ht.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},HO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MIXGOPE_FIELD+ht.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[ht.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},WO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_shake,"shake"],[ht.Msg.MIXLY_UP,"up"],[ht.Msg.MIXLY_DOWN,"down"],[ht.Msg.MIXLY_LEFT,"left"],[ht.Msg.MIXLY_RIGHT,"right"],[ht.Msg.MIXLY_MICROBIT_face_up,"face up"],[ht.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ht.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ht.Msg.MSG.catSensor,s=ht.Msg.MIXLY_MICROBIT_JS_STATE,o=ht.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ht.Msg.MIXLY_MICROBIT_shake,up:ht.Msg.MIXLY_UP,down:ht.Msg.MIXLY_DOWN,left:ht.Msg.MIXLY_LEFT,right:ht.Msg.MIXLY_RIGHT,"face up":ht.Msg.MIXLY_MICROBIT_face_up,"face down":ht.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},KO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},JO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_GET+ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},QO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ht.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new ht.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ht.Msg.MIXLY_MICROBIT_Direction,s=ht.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":ht.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},qO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},zO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_GETTEMPERATUE)}},jO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return ht.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:ht.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:ht.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},ZO={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},$O={init:function(){this.setColour(OO),this.appendValueInput("SPISUB").appendField(ht.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ht.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP+ht.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ht.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},tE={init:function(){this.setColour(OO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[ht.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},eE={init:function(){this.setColour(OO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},iE={init:function(){this.setColour(OO),this.appendDummyInput().appendField("RFID"+ht.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},nE={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ht.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},sE={init:function(){this.setColour(OO),this.appendDummyInput().appendField(ht.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ht.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ht.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(ht.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},oE={init:function(){this.setColour(OO),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RFID_SCAN_OK,"0"],[ht.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[ht.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},_E={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ht.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},pE={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},aE={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},uE={init:function(){this.setColour(OO),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ht.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},LL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},NL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},DL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},fL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},PL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},FL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},vL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},YL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},xL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},XL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},bL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},VL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},yL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},BL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},GL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},UL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},wL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},kL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},HL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},WL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},KL=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},JL=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},QL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},qL=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},zL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},jL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},ZL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},$L=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},tN=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},eN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},iN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},nN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},sN=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},oN=function(t,e){e.definitions_.import_st7789="import st7789";var i=Mt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},_N=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},pN=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},aN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},uN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},rN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},lN=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},dN=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},IN=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},TN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},hN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},MN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},mN=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},ON=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=Mt.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},EN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},RN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},cN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},gN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},CN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},SN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},AN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},LN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},NN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},DN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},fN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},PN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},FN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},vN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},YN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},xN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},XN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},bN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},VN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},yN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},BN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},GN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},UN=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},wN=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},RD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},cD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},gD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},CD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},SD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},AD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},LD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},ND=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},DD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},fD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},PD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},FD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},vD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},YD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},xD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},XD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},bD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},VD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},yD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},BD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},GD=function(t,e){var i=Mt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},UD=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},wD=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},kD=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},QY=function(){return"control.reset()\n"},qY=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+")\n"},zY=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+")\n"},jY=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||Mt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},ZY=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},$Y=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},tx=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},ex=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},ix=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},nx=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},sx=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},ox=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},_x=function(){return"while True:\n pass\n"},px=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},ax=function(t,e){return e.definitions_.import_os="import os","os.uname()"},ux=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},rx=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},lx=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},dx=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Ix=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},Tx=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},hx=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},Mx=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},mx=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},Ox=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},Ex=Tx,Rx=dx,cx=Ix,gx=ux,Cx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Sx=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Ax=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Lx={};Lx["元控青春"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","spk_midi.DADADADUM"],["ENTERTAINER","spk_midi.ENTERTAINER"],["PRELUDE","spk_midi.PRELUDE"],["ODE","spk_midi.ODE"],["NYAN","spk_midi.NYAN"],["RINGTONE","spk_midi.RINGTONE"],["FUNK","spk_midi.FUNK"],["BLUES","spk_midi.BLUES"],["BIRTHDAY","spk_midi.BIRTHDAY"],["WEDDING","spk_midi.WEDDING"],["FUNERAL","spk_midi.FUNERAL"],["PUNCHLINE","spk_midi.PUNCHLINE"],["PYTHON","spk_midi.PYTHON"],["BADDY","spk_midi.BADDY"],["CHASE","spk_midi.CHASE"],["BA_DING","spk_midi.BA_DING"],["WAWAWAWAA","spk_midi.WAWAWAWAA"],["JUMP_UP","spk_midi.JUMP_UP"],["JUMP_DOWN","spk_midi.JUMP_DOWN"],["POWER_UP","spk_midi.POWER_UP"],["POWER_DOWN","spk_midi.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Lx["元控"]={description:"MicroPython[ESP32C3 MixGo CE]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM","spk_midi.DADADADUM"],["ENTERTAINER","spk_midi.ENTERTAINER"],["PRELUDE","spk_midi.PRELUDE"],["ODE","spk_midi.ODE"],["NYAN","spk_midi.NYAN"],["RINGTONE","spk_midi.RINGTONE"],["FUNK","spk_midi.FUNK"],["BLUES","spk_midi.BLUES"],["BIRTHDAY","spk_midi.BIRTHDAY"],["WEDDING","spk_midi.WEDDING"],["FUNERAL","spk_midi.FUNERAL"],["PUNCHLINE","spk_midi.PUNCHLINE"],["PYTHON","spk_midi.PYTHON"],["BADDY","spk_midi.BADDY"],["CHASE","spk_midi.CHASE"],["BA_DING","spk_midi.BA_DING"],["WAWAWAWAA","spk_midi.WAWAWAWAA"],["JUMP_UP","spk_midi.JUMP_UP"],["JUMP_DOWN","spk_midi.JUMP_DOWN"],["POWER_UP","spk_midi.POWER_UP"],["POWER_DOWN","spk_midi.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]},Lx["ESP32S2 Generic"]={description:"MicroPython[ESP32C3 MixGo CC]",digital_pin:Mt.Profile.generate(["0-18","21","33-48"]),input_pin:Mt.Profile.generate(["0-18","21","33-48"]),output_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm_input:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_input:Mt.Profile.generate(["1-18"],"adc","adc"),pwm_output:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_output:Mt.Profile.generate(["1-18"],"adc","adc"),espnow_channel:Mt.Profile.generate(["1-13"]),haskylens_model:Mt.Profile.generate(["0-4"]),digital:Mt.Profile.generate(["0-18","21","33-48"],"pin","pin"),pwm_pin:Mt.Profile.generate(["0-18","21","33-48"]),pwm:Mt.Profile.generate(["0-18","21","33-48"],"pwm","pwm"),analog_pin:Mt.Profile.generate(["1-18"]),analog:Mt.Profile.generate(["1-18"],"adc","adc"),touch:Mt.Profile.generate(["1-14"],"tc","tc"),touch_pin:Mt.Profile.generate(["1-14"]),button:[["B1","B1key"],["B2","B2key"],["A1","A1key"],["A2","A2key"],["A3","A3key"],["A4","A4key"]],buttonB:[["B1","B1key"],["B2","B2key"]],axis:Mt.Profile.generate(["0-4"]),exlcdh:Mt.Profile.generate(["0-15"]),exlcdv:Mt.Profile.generate(["0-7"]),brightness:Mt.Profile.generate(["0-9"]),tts_voice:Mt.Profile.generate(["0-16"]),tts_builtin_music:Mt.Profile.generate(["0-47"]),tts_bgmusic:Mt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","matrix.Image.ALL_CLOCKS"],["ALL_ARROWS","matrix.Image.ALL_ARROWS"]],playlist:[["DADADADUM",".DADADADUM"],["ENTERTAINER",".ENTERTAINER"],["PRELUDE",".PRELUDE"],["ODE",".ODE"],["NYAN",".NYAN"],["RINGTONE",".RINGTONE"],["FUNK",".FUNK"],["BLUES",".BLUES"],["BIRTHDAY",".BIRTHDAY"],["WEDDING",".WEDDING"],["FUNERAL",".FUNERAL"],["PUNCHLINE",".PUNCHLINE"],["PYTHON",".PYTHON"],["BADDY",".BADDY"],["CHASE",".CHASE"],["BA_DING",".BA_DING"],["WAWAWAWAA",".WAWAWAWAA"],["JUMP_UP",".JUMP_UP"],["JUMP_DOWN",".JUMP_DOWN"],["POWER_UP",".POWER_UP"],["POWER_DOWN",".POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"]]};const Nx=Lx,Dx=20,fx={init:function(){this.setColour(Dx),this.appendDummyInput("").appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_HIGH,"HIGH"],[ht.Msg.MIXLY_LOW,"LOW"]]),"BOOL"),this.setOutput(!0,Boolean),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_HIGHLOW_TOOLTIP)}},Px={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Digital_PINMODEOUT).setCheck(Number),this.appendValueInput("STAT").appendField(ht.Msg.MIXLY_STAT).setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_WRITE_TOOLTIP)}},Fx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_Digital_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,[Boolean,Number]),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_READ_TOOLTIP)}},vx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_TOOLTIP)}},Yx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField("DAC"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_VALUE2).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_TOOLTIP)}},xx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_MICROBIT_JS_PERIOD_MIL).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_mSecond,"period"],[ht.Msg.MIXLY_uSecond,"period_microseconds"]]),"key"),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_SET_TOOLTIP)}},Xx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT).setCheck(Number),this.appendValueInput("NUM",Number).appendField(ht.Msg.MIXLY_FREQUENCY+ht.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_SET_FREQ_TOOLTIP)}},bx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_TOOLTIP)}},Vx={init:function(){this.setColour(Dx),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_Analog_PINMODEIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_REF_VOLTAGE+ht.Msg.MIXLY_STAT).appendField(new ht.FieldDropdown([["3.3V","machine.ADC.ATTN_11DB"],["2.2V","machine.ADC.ATTN_6DB"],["1.5V","machine.ADC.ATTN_2_5DB"],["1.2V","machine.ADC.ATTN_0DB"]]),"atten"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_ATTEN_TOOLTIP)}},yx={init:function(){this.setColour(Dx),this.appendValueInput("pin").appendField(ht.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ht.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(ht.Msg.MIXLY_ESP32_MACHINE_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_TOOLTIP)}},Bx={init:function(){this.setColour(20),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_ATTACHINTERRUPT_PIN).setCheck(Number),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MODE).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ht.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ht.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ht.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_ATTACHINTERRUPT_TOOLTIP)}},Gx={init:function(){this.setColour(20),this.appendDummyInput().appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("pin#"),"PIN_OBJ"),this.appendDummyInput("").appendField(ht.Msg.MIXLY_MICROPYTHON_AS).appendField(new ht.FieldDropdown([[ht.Msg.MIXLY_Digital_PINMODEOUT,"machine.Pin.OUT"],[ht.Msg.MIXLY_Digital_PINMODEIN,"machine.Pin.IN"],[ht.Msg.MIXLY_PINMODEPULLUP,"machine.Pin.IN, machine.Pin.PULL_UP"],[ht.Msg.MIXLY_PINMODEPULLDOWN,"machine.Pin.IN, machine.Pin.PULL_DOWN"]]),"MODE"),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_DIGITAL_INIT_TOOLTIP)},getVars:function(){return["pin#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Ux={init:function(){this.setColour(Dx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("pwm#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("PWM"+ht.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PWM_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["pwm#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},wx={init:function(){this.setColour(Dx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("dac#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField("DAC"+ht.Msg.MIXLY_Analog_PINMODEOUT),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_WRITE_INIT_TOOLTIP)},getVars:function(){return["dac#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},kx={init:function(){this.setColour(Dx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("adc#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(ht.Msg.MIXLY_Analog_PINMODEIN),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_ANALOG_READ_INIT_TOOLTIP)},getVars:function(){return["adc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Hx={init:function(){this.setColour(Dx),this.appendDummyInput("").appendField(ht.Msg.MIXLY_SETUP).appendField(new ht.FieldTextInput("tc#"),"PIN_OBJ").appendField(ht.Msg.MIXLY_MICROPYTHON_AS),this.appendDummyInput("").appendField(ht.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendValueInput("PIN",Number).appendField(ht.Msg.MIXLY_PIN).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ht.Msg.MIXLY_ESP32_INOUT_PIN_PRESSED_INIT_TOOLTIP)},getVars:function(){return["tc#"==this.getFieldValue("PIN_OBJ")?null:this.getFieldValue("PIN_OBJ")]},renameVar:function(t,e){ht.Names.equals(t,this.getFieldValue("PIN_OBJ"))&&this.setTitleValue(e,"PIN_OBJ")}},Wx=Gx,Kx=Xx,Jx=Hx,Qx=yx,qx=Bx,zx=230,jx={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital),"PIN"),this.setOutput(!0)}},Zx={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},$x={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},tX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},eX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},iX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},nX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},sX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},oX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},_X={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},pX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},aX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},uX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},rX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},lX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},dX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},IX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog),"PIN"),this.setOutput(!0)}},TX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},hX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.dac),"PIN"),this.setOutput(!0)}},MX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},mX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},OX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.buttonB),"PIN"),this.setOutput(!0,Number)}},EX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},RX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},cX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},gX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.touch),"PIN"),this.setOutput(!0)}},CX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},SX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},AX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},LX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},NX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},DX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},fX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},PX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},FX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},vX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},YX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},xX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},XX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},bX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},VX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},yX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},BX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},GX={init:function(){this.setColour(zx),this.appendDummyInput("").appendField(new ht.FieldDropdown(Mt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},UX=function(t,e){return["HIGH"==this.getFieldValue("BOOL")?"1":"0",e.ORDER_ATOMIC]},wX=function(t,e){e.definitions_.import_machine="import machine";var i="";return i+=e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value("+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},kX=function(t,e){e.definitions_.import_machine="import machine";return[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".value()",e.ORDER_ATOMIC]},HX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".duty("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},WX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".write("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},KX=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC);return i+".set_analog_"+this.getFieldValue("key")+"("+n+")\n"},JX=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".freq("+e.valueToCode(this,"NUM",e.ORDER_ATOMIC)+")\n"},QX=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},qX=function(t,e){return e.definitions_.import_machine="import machine",[e.valueToCode(this,"pin",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},zX=function(t,e){e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"machine.Pin("+i+").irq(handler = "+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger = "+n+")\n"},jX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pin#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC),s=this.getFieldValue("MODE");return("pin#"==i?"pin"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.Pin("+n+", "+s+")\n"},ZX=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"pwm#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("pwm#"==i?"pwm"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.PWM(machine.Pin("+n+"))\n"},$X=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"dac#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("dac#"==i?"dac"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.DAC(machine.Pin("+n+"))\n"},tb=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"adc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("adc#"==i?"adc"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.ADC(machine.Pin("+n+"))\n"},eb=function(t,e){return e.definitions_.import_machine="import machine",e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+".atten("+this.getFieldValue("atten")+")\n"},ib=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("PIN_OBJ")||"tc#",n=e.valueToCode(this,"PIN",e.ORDER_ATOMIC);return("tc#"==i?"tc"+n:e.variableDB_.getName(i,ht.Variables.NAME_TYPE))+" = machine.TouchPad(machine.Pin("+n+"))\n"},nb=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},sb=nb,ob=nb,_b=nb,pb=nb,ab=nb,ub=nb,rb=nb,lb=nb,db=nb,Ib=nb,Tb=nb,hb=nb,Mb=nb,mb=nb,Ob=nb,Eb=nb,Rb=nb,cb=nb,gb=nb,Cb=nb,Sb=nb,Ab=nb,Lb=nb,Nb=nb,Db=nb,fb=nb,Pb=nb,Fb=nb,vb=nb,Yb=nb,xb=nb,Xb=nb,bb=nb,Vb=nb,yb=nb,Bb=nb,Gb=nb,Ub=nb,wb=nb,kb=nb,Hb=nb,Wb=nb,Kb=nb,Jb=nb;Object.assign(ht.Variables,Ot),Object.assign(ht.Procedures,Hn),ht.Python=_u,ht.generator=_u,Mt.Profile.default={},Object.assign(Mt.Profile,Nx),Object.assign(Mt.Profile.default,Nx["MixGo CE"]),Object.assign(ht.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,b,H,k,v,V,W,f,w,U,G,y,P,D,N,x,Y,X,F,B,lt,dt),Object.assign(ht.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,et,ut,at,j,it,rt,Q,pt,_t,ot,nt,q,J,K,$,Z,tt,z,st,It,Tt)})(); \ No newline at end of file diff --git a/boards/default/micropython_esp32s3/styles/main.8ae0f9a2.css b/boards/default/micropython_esp32s3/styles/main.1b0705c1.css similarity index 100% rename from boards/default/micropython_esp32s3/styles/main.8ae0f9a2.css rename to boards/default/micropython_esp32s3/styles/main.1b0705c1.css diff --git a/boards/default/micropython_k210_mixgoai/index.xml b/boards/default/micropython_k210_mixgoai/index.xml index 0e6a5e01..90427f23 100644 --- a/boards/default/micropython_k210_mixgoai/index.xml +++ b/boards/default/micropython_k210_mixgoai/index.xml @@ -1 +1 @@ -666610006506irp_funcirp_func610510,1,2,3051itestThreadtestThreadWHILETRUEHello Mixly from Thread!ms101000tim_callbacktim_callback5000#ff000090151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly12365a0MixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixPYI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0MixlyMixlyMixly,HelloMixlyprompt67MixlyMixly0XFF00FFcode6i2c67400000i2ci2c00i2c00i2ci2cspi20000010045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345bufow12owowow12345ow12345ow89MixGo AI12345MixGo AI123455socksockmixly.orgsock192.168.0.180sock5sockdatasock1024sockurlRGB312RGB0000RGB660Motori2cMotor100Motor10241024PID0.400PID01SPK8910MIC8910/sd/MixGo.wavSPK80/sd/MixGo.wavMIC10/sd/MixGo.aviSPK80/sd/MixGo.aviMIC10sensor.B240X240100224224150000000x0000#000000img0x0000#00000000MixGo AI0XFFFF#FFFFFF0X0000#00000089MixGo AI12345mixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012mixio.xbed.cnKPU/sd/MixGoAI.kmodelKPU0.50.35anchorKPUimgKPUimgyolo2calss5MixGo.aiMixGo.aicalssimgASRni-haoASR0.1ASRASRimgimgMixGo.jpgimgimgMixGo.jpgimg0,00xFFFF#FFFFFFimg0,0img0,0,240,240img20imgimgimg00你好,米思齐0xFFFF#FFFFFF12img00MixGo AI0xFFFF#FFFFFF1img160,1201.01.0img10,20,30,400xFFFF#FFFFFF1img10,20,30,400xFFFF#FFFFFF1img10,200xFFFF#FFFFFF130img40,30,200xFFFF#FFFFFF1img10,20,30,400xFFFF#FFFFFF1img1.01.0img3img15img0.050.05img110img110img160,1200xFFFF#FFFFFF0.050.05imgimgimg71,95,-60,-41,-128,12700img1-1,-1,-1, -1,8,-1, -1,-1,-1linecirclerectimg0,0,240,24010002525img0,0,240,2401015img0,0,240,240200021002101010img0,0,240,24010000img71,95,-60,-41,-128,1270,0,240,2400,0,00,0,00,0,0255blobhistogram0.5img71,95,-60,-41,-128,1270,0,240,24020020010img0,0,240,240barcodeqrcodeapriltagimg0,0,240,240img0,0,240,240img0,0,240,240 \ No newline at end of file +666610006506irp_funcirp_func610510,1,2,3051itestThreadtestThreadWHILETRUEHello Mixly from Thread!ms101000tim_callbacktim_callback5000#ff000090151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly12365a0MixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixPYI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xfilename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0MixlyMixlyMixly,HelloMixlyprompt67MixlyMixly0XFF00FFcode6i2c67400000i2ci2c00i2c00i2ci2cspi20000010045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345bufow12owowow12345ow12345ow89MixGo AI12345MixGo AI123455socksockmixly.orgsock192.168.0.180sock5sockdatasock1024sockurlRGB312RGB0000RGB660Motori2cMotor100Motor10241024PID0.400PID01SPK8910MIC8910/sd/MixGo.wavSPK80/sd/MixGo.wavMIC10/sd/MixGo.aviSPK80/sd/MixGo.aviMIC10sensor.B240X240100224224150000000x0000#000000img0x0000#00000000MixGo AI0XFFFF#FFFFFF0X0000#00000089MixGo AI12345mixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012mixio.xbed.cnKPU/sd/MixGoAI.kmodelKPU0.50.35anchorKPUimgKPUimgyolo2calss5MixGo.aiMixGo.aicalssimgASRni-haoASR0.1ASRASRimgimgMixGo.jpgimgimgMixGo.jpgimg0,00xFFFF#FFFFFFimg0,0img0,0,240,240img20imgimgimg00你好,米思齐0xFFFF#FFFFFF12img00MixGo AI0xFFFF#FFFFFF1img160,1201.01.0img10,20,30,400xFFFF#FFFFFF1img10,20,30,400xFFFF#FFFFFF1img10,200xFFFF#FFFFFF130img40,30,200xFFFF#FFFFFF1img10,20,30,400xFFFF#FFFFFF1img1.01.0img3img15img0.050.05img110img110img160,1200xFFFF#FFFFFF0.050.05imgimgimg71,95,-60,-41,-128,12700img1-1,-1,-1, -1,8,-1, -1,-1,-1linecirclerectimg0,0,240,24010002525img0,0,240,2401015img0,0,240,240200021002101010img0,0,240,24010000img71,95,-60,-41,-128,1270,0,240,2400,0,00,0,00,0,0255blobhistogram0.5img71,95,-60,-41,-128,1270,0,240,24020020010img0,0,240,240barcodeqrcodeapriltagimg0,0,240,240img0,0,240,240img0,0,240,240 \ No newline at end of file diff --git a/boards/default/micropython_k210_mixgoai/styles/main.a5a4cdeb.css b/boards/default/micropython_k210_mixgoai/styles/main.ae5273fa.css similarity index 100% rename from boards/default/micropython_k210_mixgoai/styles/main.a5a4cdeb.css rename to boards/default/micropython_k210_mixgoai/styles/main.ae5273fa.css diff --git a/boards/default/micropython_nrf51822_microbit/index.xml b/boards/default/micropython_nrf51822_microbit/index.xml index 34effb67..a446ca7e 100644 --- a/boards/default/micropython_nrf51822_microbit/index.xml +++ b/boards/default/micropython_nrf51822_microbit/index.xml @@ -1 +1 @@ -0210000,1,2,3051i23390x151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyprompt1011580020001110000039501000010011*255500mylist4120MixlyMixly 0.999 is great!64721281281621112040000MixlyMixly1201201>0x2711clear()oledExample1Example2Example3Example4filename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0192010000000000323760x756269740Mixly \ No newline at end of file +0210000,1,2,3051i23390x151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyprompt1011580020001110000039501000010011*255500mylist4120MixlyMixly 0.999 is great!64721281281621112040000MixlyMixly1201201>0x2711clear()oledExample1Example2Example3Example4filename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0192010000000000323760x756269740Mixly \ No newline at end of file diff --git a/boards/default/micropython_nrf51822_microbit/styles/main.de8dd2dc.css b/boards/default/micropython_nrf51822_microbit/styles/main.4aa4ee0b.css similarity index 100% rename from boards/default/micropython_nrf51822_microbit/styles/main.de8dd2dc.css rename to boards/default/micropython_nrf51822_microbit/styles/main.4aa4ee0b.css diff --git a/boards/default/micropython_nrf51822_mithoncc/index.xml b/boards/default/micropython_nrf51822_mithoncc/index.xml index 3ab91645..7bdc4e3e 100644 --- a/boards/default/micropython_nrf51822_mithoncc/index.xml +++ b/boards/default/micropython_nrf51822_mithoncc/index.xml @@ -1 +1 @@ -1000100,1,2,3051i90x151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyprompt100012MixlyMixly1201201>323760x756269740Mixly \ No newline at end of file +1000100,1,2,3051i90x151100a10.998124.821100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyHello,mixly50*Hello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylist2mylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyprompt100012MixlyMixly1201201>323760x756269740Mixly \ No newline at end of file diff --git a/boards/default/micropython_nrf51822_mithoncc/styles/main.c5b53592.css b/boards/default/micropython_nrf51822_mithoncc/styles/main.11464331.css similarity index 100% rename from boards/default/micropython_nrf51822_mithoncc/styles/main.c5b53592.css rename to boards/default/micropython_nrf51822_mithoncc/styles/main.11464331.css diff --git a/boards/default/micropython_robot/index.xml b/boards/default/micropython_robot/index.xml index 406b3d6a..6e00d053 100644 --- a/boards/default/micropython_robot/index.xml +++ b/boards/default/micropython_robot/index.xml @@ -1 +1 @@ -02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly20189141420452023,1,1,12,0,0180291001001001001004404401000004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.50.5wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSGJl0ExVN-4j27msR北京SGJl0ExVN-4j27msR北京1SGJl0ExVN-4j27msR北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixly100100100180100360100100filename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file +02000attachInterrupt_funcattachInterrupt_func10,1,2,3051iDIVIDE10Exception as eetestThreadtestThreadWHILETRUEHello Mixly from Thread!ms10timtim1000tim_callbacktim_callback5000200090x151100a10.998124.829971100101010001100501100110000x2x0,1,2,30,1,2,30,1,2,3xMixlyHelloMixly65axMixlyMixly0Mixly02MixlyMixlyHello,mixlyl--mylistHello,mixlymixlymixpyI love mixly!I love mixlyRandom No. is {}int1100input('1+2*3')mylist1,2,3,4,5mylist0mylist02mylistmylistmylist0mylist00mylist00mylist0mylist0mylist0mylistmylistmylistx0,1,2,30,1,2,3mytup1,2,3,4,5mytup0mytup02mytupmytupmytupmytup0mytupmytup1mytup2xmydictmydictkeymydictkey0mydictkey0mydictkeymydictkeymydictkey0mydictmydictmydictmydictxmydict{"name":"Mixly","color":"green"}s11,2,3,4,5s1s1s1s2s1s2s10s1Mixlys1s2xMixlyMixlyMixly,HelloMixlyprompt02MixlyMixly0XFF00FFcodebMixlyMixly1attachInterrupt_funcattachInterrupt_funcrfid00Mixly0Mixly20189141420452023,1,1,12,0,0180291001001001001004404401000004120000000000010001000Mixly0MixlyMixly500MixlyMixly500>10.50.5wifinamewifipassword8080AUTH TOKEN0_value02000notify0Your Target Emailsubjectbodycolor#FF0000wifinamewifipasswordmixio.mixly.cnmixio.mixly.cnA1B2C3mixio.mixly.cnusernamepasswordMyProjecttopicmsgtopicmethodmethodEQmsg1content"long""lat""message"012content"key1""key2""key3"012http://mixio.mixly.org/time.phpmixio.mixly.cnwifinamewifipasswordcsub_cb31444082183.230.40.3914109261n63JySRowo13ZLDBKw6y896E0=MixlyRobotsub_cbEQmsg1ciot_dict"tc"ciot_dictccwifinamewifipasswordclientEnter Your API_KEYEnter Your SECRET_KEYclient1clientS72099北京今天天气如何?wifinamewifipasswordSGJl0ExVN-4j27msR北京SGJl0ExVN-4j27msR北京1SGJl0ExVN-4j27msR北京24ble_cble_pMixlyble_cble_cMixlyble_cble_xble_xble_xMixlyble_xble_methodble_methodEQdataMixlyhandlehandle_methodhandle_methodkey1key2key3keyx02000001000009000,4500,563,5630x1234callbackcmdaddrrawpulsesi2c2221100000i2c00i2c00i2ci2ci2cspi200000045spi200000buf50spi10spi100xffspibufspibuf0xffspi12345spi12345buf1Mixlyow12owowow12345ow12345owmy_now0my_nowmy_nowmy_nowFFFFFFFFFFFFmixlymy_nowmy_nowcbcbEQmsg1spi10000004512spi8my_lora433.925716my_loramy_loramy_loraMixly100100100180100360100100filename.txtfMixlyfff0fffpathpathfilename.txtsrcname.txtdstname.txtpathff0wifinamewifipasswordwlanwlanwlanwlanwlan127.16.0.801234567wlanwlanwlanwlanwlan127.16.0.81connect_wifiwlanAPwlanTruewlanwlanSmallCabbage1WHILETRUEEQ0wlan0.0.0.0ms1000TRUEss0.0.0.080s192.168.0.180s5ss1024sbMixlyresponses1024sbMixlyresponse127.0.0.180sntp.aliyun.comurl \ No newline at end of file diff --git a/boards/default/micropython_robot/main.bundle.js b/boards/default/micropython_robot/main.bundle.js index bfeb72ba..d4d09090 100644 --- a/boards/default/micropython_robot/main.bundle.js +++ b/boards/default/micropython_robot/main.bundle.js @@ -1,4 +1,4 @@ -(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Rt,controls_typeLists:()=>ct,variables_change:()=>Ot,variables_get:()=>Mt,variables_global:()=>Et,variables_set:()=>mt});var i={};t.r(i),t.d(i,{base_setup:()=>St,controls_delay:()=>At,controls_end_program:()=>Lt,controls_except:()=>Bt,controls_finally:()=>Ut,controls_flow_statements:()=>vt,controls_for:()=>Yt,controls_forEach:()=>ft,controls_for_range:()=>xt,controls_if:()=>Nt,controls_if_else:()=>yt,controls_if_elseif:()=>bt,controls_if_if:()=>Xt,controls_lambda:()=>wt,controls_main:()=>Ct,controls_pass:()=>kt,controls_range:()=>Dt,controls_repeat_ext:()=>Gt,controls_thread:()=>Ht,controls_try:()=>Vt,controls_try_finally:()=>Pt,controls_whileUntil:()=>Ft,do_while:()=>Wt,garbage_collection:()=>Kt,get_mem_alloc:()=>Jt,get_mem_free:()=>Qt,get_unique_identifier:()=>qt});var n={};t.r(n),t.d(n,{base_map:()=>Me,math_arithmetic:()=>te,math_bit:()=>ie,math_constant:()=>Zt,math_constant_mp:()=>$t,math_constrain:()=>ue,math_dec:()=>se,math_indexer_number:()=>le,math_map:()=>re,math_max_min:()=>_e,math_number:()=>jt,math_number_base_conversion:()=>pe,math_random:()=>ae,math_random_seed:()=>de,math_round:()=>Ie,math_selfcalcu:()=>ee,math_to_int:()=>oe,math_trig:()=>ne,text_to_number:()=>Te,text_to_number_skulpt:()=>he});var s={};t.r(s),t.d(s,{ascii_to_char:()=>ge,char_to_ascii:()=>Ce,number_to_text:()=>Se,os_system:()=>qe,text:()=>Oe,text_capital:()=>Ye,text_center:()=>xe,text_char:()=>Re,text_char_at:()=>Ne,text_char_at2:()=>Le,text_char_at3:()=>We,text_compareTo:()=>He,text_compare_to:()=>ve,text_create_with_container:()=>Ge,text_create_with_item:()=>we,text_encode:()=>Je,text_equals_starts_ends:()=>Pe,text_eval:()=>Qe,text_find:()=>Xe,text_format:()=>Ue,text_format_noreturn:()=>Ke,text_join:()=>ce,text_join_seq:()=>be,text_length:()=>Ae,text_random_char:()=>De,text_replace:()=>ye,text_split:()=>Ve,text_strip:()=>Be,text_substring:()=>Fe,text_substring2:()=>fe,text_substring3:()=>ke,text_textarea:()=>Ee});var o={};t.r(o),t.d(o,{list_many_input:()=>Oi,list_tolist:()=>Ai,list_tolist2:()=>Yi,list_trig:()=>hi,lists_2d_get_col_row_data:()=>ti,lists_2d_get_data_with_col_row:()=>$e,lists_append_extend:()=>_i,lists_change_to:()=>mi,lists_change_to_general:()=>Ri,lists_clear:()=>li,lists_create_with:()=>ei,lists_create_with2:()=>Li,lists_create_with_container:()=>ni,lists_create_with_item:()=>si,lists_create_with_noreturn:()=>Ei,lists_create_with_text:()=>ii,lists_create_with_text2:()=>Ni,lists_del_general:()=>ci,lists_find:()=>Ti,lists_getIndex3:()=>Di,lists_getSublist3:()=>fi,lists_get_index:()=>je,lists_get_random_item:()=>pi,lists_get_random_sublist:()=>ai,lists_get_sublist:()=>Ze,lists_insert_value:()=>ui,lists_insert_value2:()=>Pi,lists_pop:()=>Ii,lists_remove_at:()=>di,lists_remove_at2:()=>vi,lists_reverse:()=>ri,lists_setIndex3:()=>Fi,lists_set_index:()=>oi,lists_sort:()=>Mi,lists_zip:()=>gi,lists_zip_container:()=>Ci,lists_zip_item:()=>Si});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>qi,dicts_add_or_change:()=>Gi,dicts_clear:()=>Hi,dicts_create_with:()=>Xi,dicts_create_with_container:()=>bi,dicts_create_with_item:()=>yi,dicts_create_with_noreturn:()=>Zi,dicts_deldict:()=>Qi,dicts_delete:()=>wi,dicts_get:()=>Bi,dicts_get_default:()=>Ui,dicts_items:()=>Wi,dicts_keys:()=>Vi,dicts_length:()=>Ji,dicts_pop:()=>zi,dicts_setdefault:()=>ji,dicts_to_json:()=>tn,dicts_todict:()=>$i,dicts_update:()=>ki,dicts_values:()=>Ki,json_to_dicts:()=>en});var p={};t.r(p),t.d(p,{logic_boolean:()=>an,logic_compare:()=>sn,logic_compare_continous:()=>on,logic_is:()=>dn,logic_is_in:()=>ln,logic_negate:()=>pn,logic_null:()=>un,logic_operation:()=>_n,logic_tobool:()=>In,logic_true_or_false:()=>rn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>bn,sdcard_use_spi_init:()=>Xn,storage_can_write_ornot:()=>gn,storage_change_dir:()=>Yn,storage_close_file:()=>Sn,storage_delete_file:()=>Ln,storage_file_seek:()=>fn,storage_file_tell:()=>Dn,storage_file_write:()=>On,storage_fileopen:()=>hn,storage_fileopen_new:()=>Mn,storage_fileopen_new_encoding:()=>mn,storage_get_a_line:()=>cn,storage_get_contents:()=>Rn,storage_get_contents_without_para:()=>En,storage_get_current_dir:()=>Fn,storage_get_file_size:()=>Nn,storage_get_filename:()=>Cn,storage_is_file:()=>xn,storage_list_all_files:()=>An,storage_make_dir:()=>Pn,storage_open_file_with_os:()=>Tn,storage_rename:()=>vn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>kn,procedures_callreturn:()=>Hn,procedures_defnoreturn:()=>Bn,procedures_defreturn:()=>Un,procedures_ifreturn:()=>Wn,procedures_mutatorarg:()=>wn,procedures_mutatorcontainer:()=>Gn,procedures_return:()=>Kn});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ss,tuple_create_with:()=>Qn,tuple_create_with_container:()=>qn,tuple_create_with_item:()=>zn,tuple_create_with_noreturn:()=>as,tuple_create_with_text2:()=>jn,tuple_create_with_text_return:()=>Zn,tuple_del:()=>es,tuple_find:()=>os,tuple_getIndex:()=>$n,tuple_getSublist:()=>ps,tuple_get_random_item:()=>rs,tuple_get_sublist:()=>us,tuple_join:()=>is,tuple_length:()=>ts,tuple_max:()=>ns,tuple_totuple:()=>ls,tuple_trig:()=>_s});var l={};t.r(l),t.d(l,{set_add_discard:()=>cs,set_clear:()=>Os,set_create_with:()=>Is,set_create_with_container:()=>Ts,set_create_with_item:()=>hs,set_create_with_text_return:()=>Ss,set_length:()=>Ms,set_operate:()=>Es,set_operate_update:()=>Rs,set_pop:()=>ms,set_sub:()=>gs,set_toset:()=>As,set_update:()=>Cs});var d={};t.r(d),t.d(d,{html_content:()=>Fs,html_content_more:()=>Ps,html_document:()=>Ns,html_form:()=>Ys,html_head_body:()=>fs,html_style:()=>vs,html_style_color:()=>Xs,html_style_content:()=>xs,html_text:()=>bs,html_title:()=>Ds});var I={};t.r(I),t.d(I,{attribute_access:()=>zs,function_call:()=>Js,function_call_container:()=>Qs,function_call_item:()=>qs,raw_block:()=>Bs,raw_empty:()=>Gs,raw_expression:()=>Us,raw_table:()=>Vs,text_comment:()=>ws,text_print_multiple:()=>Hs,text_print_multiple_container:()=>Ws,text_print_multiple_item:()=>Ks,type_check:()=>ks});var T={};t.r(T),t.d(T,{controls_type:()=>eo,controls_typeLists:()=>io,variables_change:()=>$s,variables_get:()=>js,variables_global:()=>to,variables_set:()=>Zs});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>Io,base_setup:()=>so,controls_delay:()=>lo,controls_flow_statements:()=>ro,controls_for:()=>po,controls_forEach:()=>Oo,controls_for_range:()=>ao,controls_if:()=>oo,controls_interrupts:()=>Mo,controls_lambda:()=>Ro,controls_main:()=>no,controls_millis:()=>To,controls_nointerrupts:()=>mo,controls_pass:()=>go,controls_range:()=>Eo,controls_repeat:()=>Fo,controls_repeat_ext:()=>Ao,controls_thread:()=>Co,controls_try_finally:()=>_o,controls_whileUntil:()=>uo,do_while:()=>So,garbage_collection:()=>Lo,get_mem_alloc:()=>No,get_mem_free:()=>Do,get_unique_identifier:()=>fo,reset:()=>ho,time_sleep:()=>co});var M={};t.r(M),t.d(M,{base_map:()=>jo,math_arithmetic:()=>Xo,math_bit:()=>xo,math_constant:()=>vo,math_constant_mp:()=>Yo,math_constrain:()=>Ho,math_dec:()=>Bo,math_indexer_number:()=>Jo,math_map:()=>ko,math_max_min:()=>Go,math_number:()=>Po,math_number_base_conversion:()=>Wo,math_random:()=>wo,math_random_seed:()=>Ko,math_round:()=>Qo,math_selfcalcu:()=>bo,math_single:()=>yo,math_to_int:()=>Uo,math_trig:()=>Vo,text_to_number:()=>qo,text_to_number_skulpt:()=>zo});var m={};t.r(m),t.d(m,{ascii_to_char:()=>i_,char_to_ascii:()=>n_,number_to_text:()=>s_,os_system:()=>N_,text:()=>Zo,text_capital:()=>I_,text_center:()=>T_,text_char:()=>t_,text_char_at:()=>p_,text_char_at2:()=>__,text_char_at3:()=>S_,text_compareTo:()=>C_,text_compare_to:()=>r_,text_encode:()=>A_,text_equals_starts_ends:()=>u_,text_eval:()=>L_,text_find:()=>h_,text_format:()=>R_,text_format_noreturn:()=>c_,text_join:()=>e_,text_join_seq:()=>M_,text_length:()=>o_,text_random_char:()=>a_,text_replace:()=>m_,text_split:()=>O_,text_strip:()=>E_,text_substring:()=>d_,text_substring2:()=>l_,text_substring3:()=>g_,text_textarea:()=>$o});var O={};t.r(O),t.d(O,{list_many_input:()=>J_,list_tolist:()=>op,list_tolist2:()=>_p,list_trig:()=>H_,lists_2d_get_col_row_data:()=>F_,lists_2d_get_data_with_col_row:()=>f_,lists_append_extend:()=>X_,lists_change_to:()=>K_,lists_change_to_general:()=>q_,lists_clear:()=>U_,lists_create_with:()=>P_,lists_create_with2:()=>j_,lists_create_with_noreturn:()=>Q_,lists_create_with_text:()=>v_,lists_create_with_text2:()=>Z_,lists_del_general:()=>z_,lists_find:()=>G_,lists_getIndex3:()=>$_,lists_getSublist3:()=>tp,lists_get_index:()=>Y_,lists_get_random_item:()=>b_,lists_get_random_sublist:()=>y_,lists_get_sublist:()=>D_,lists_insert_value:()=>V_,lists_insert_value2:()=>ip,lists_pop:()=>k_,lists_remove_at:()=>w_,lists_remove_at2:()=>np,lists_reverse:()=>B_,lists_setIndex3:()=>ep,lists_set_index:()=>x_,lists_sort:()=>W_,lists_zip:()=>sp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Ep,dicts_add_or_change:()=>lp,dicts_clear:()=>Tp,dicts_create_with:()=>pp,dicts_create_with_noreturn:()=>gp,dicts_deldict:()=>Op,dicts_delete:()=>dp,dicts_get:()=>up,dicts_get_default:()=>rp,dicts_items:()=>hp,dicts_keys:()=>ap,dicts_length:()=>mp,dicts_pop:()=>Rp,dicts_setdefault:()=>cp,dicts_to_json:()=>Sp,dicts_todict:()=>Cp,dicts_update:()=>Ip,dicts_values:()=>Mp,json_to_dicts:()=>Ap});var R={};t.r(R),t.d(R,{logic_boolean:()=>Fp,logic_compare:()=>Lp,logic_compare_continous:()=>Np,logic_is:()=>xp,logic_is_in:()=>Yp,logic_negate:()=>fp,logic_null:()=>Pp,logic_operation:()=>Dp,logic_tobool:()=>Xp,logic_true_or_false:()=>vp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>sa,sdcard_use_spi_init:()=>na,storage_can_write_ornot:()=>Hp,storage_change_dir:()=>Zp,storage_close_file:()=>Kp,storage_delete_file:()=>Qp,storage_file_seek:()=>jp,storage_file_tell:()=>zp,storage_file_write:()=>Up,storage_fileopen:()=>yp,storage_fileopen_new:()=>Vp,storage_fileopen_new_encoding:()=>Bp,storage_get_a_line:()=>kp,storage_get_contents:()=>wp,storage_get_contents_without_para:()=>Gp,storage_get_current_dir:()=>$p,storage_get_file_size:()=>qp,storage_get_filename:()=>Wp,storage_is_file:()=>ia,storage_list_all_files:()=>Jp,storage_make_dir:()=>ta,storage_open_file_with_os:()=>bp,storage_rename:()=>ea});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>aa,procedures_callreturn:()=>pa,procedures_defnoreturn:()=>_a,procedures_defreturn:()=>oa,procedures_ifreturn:()=>ua,procedures_return:()=>ra});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Ea,tuple_create_with:()=>la,tuple_create_with_noreturn:()=>Ca,tuple_create_with_text2:()=>da,tuple_create_with_text_return:()=>Ia,tuple_del:()=>Ma,tuple_find:()=>Ra,tuple_getIndex:()=>Ta,tuple_getSublist:()=>ga,tuple_get_random_item:()=>Aa,tuple_get_sublist:()=>Sa,tuple_join:()=>ma,tuple_length:()=>ha,tuple_max:()=>Oa,tuple_totuple:()=>La,tuple_trig:()=>ca});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ya,set_clear:()=>Fa,set_create_with:()=>Na,set_create_with_text_return:()=>ba,set_length:()=>Da,set_operate:()=>Pa,set_operate_update:()=>va,set_pop:()=>fa,set_sub:()=>xa,set_toset:()=>ya,set_update:()=>Xa});var A={};t.r(A),t.d(A,{html_content:()=>Ga,html_content_more:()=>wa,html_document:()=>Va,html_form:()=>Ha,html_head_body:()=>Ua,html_style:()=>ka,html_style_content:()=>Wa,html_text:()=>Ka,html_title:()=>Ba});var L={};t.r(L),t.d(L,{attribute_access:()=>$a,function_call:()=>Za,raw_block:()=>Ja,raw_empty:()=>qa,raw_expression:()=>Qa,raw_table:()=>za,type_check:()=>ja});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>lu,actuator_extern_get_led_state:()=>du,actuator_extern_led_bright:()=>ru,actuator_extern_led_brightness:()=>Iu,actuator_ms32006_dcmotor:()=>gu,actuator_ms32006_init:()=>cu,actuator_ms32006_stepper:()=>Cu,actuator_neopixel_init:()=>Su,actuator_neopixel_rgb:()=>Au,actuator_neopixel_rgb_all:()=>Lu,actuator_neopixel_write:()=>Nu,actuator_use_uart_init:()=>Du,esp32_music_get_tempo_extern:()=>pu,esp32_music_pitch:()=>nu,esp32_music_pitch_init:()=>iu,esp32_music_pitch_with_time:()=>su,esp32_music_play_list:()=>ou,esp32_music_reset_extern:()=>au,esp32_music_set_tempo_extern:()=>_u,esp32_music_stop:()=>uu,mixbot_actuator_extern_get_addr:()=>Ku,mixbot_actuator_extern_set_addr:()=>Ju,mixbot_addr_extern:()=>Yu,robot_led_extern:()=>yu,robot_led_extern_get_value:()=>Vu,robot_motor_extern:()=>xu,robot_motor_extern_get_speed:()=>Xu,robot_servo_extern_absolute_run:()=>wu,robot_servo_extern_get_status:()=>Bu,robot_servo_extern_relative_continue:()=>Wu,robot_servo_extern_relative_origin:()=>ku,robot_servo_extern_relative_run:()=>Hu,robot_servo_extern_stop:()=>Gu,robot_servo_extern_stop_mode:()=>Uu,robot_traffic_light_extern:()=>bu,servo_get_angle:()=>Eu,servo_get_speed:()=>Ru,servo_init:()=>Tu,servo_move:()=>hu,servo_set_angle:()=>mu,servo_set_speed:()=>Ou,servo_speed_360:()=>Mu,syn6288_builtin_voice:()=>Pu,syn6288_get_voice:()=>Fu,syn6288_set_voice:()=>fu,syn6288_tts_play:()=>vu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Ar,actuator_dc_motor_stop:()=>Lr,actuator_get_led_bright:()=>Zu,actuator_get_led_state:()=>$u,actuator_led_bright:()=>ju,actuator_led_brightness:()=>tr,actuator_mixbot_buzzer_on_off:()=>Pr,actuator_mixgo_nova_mic_get:()=>br,actuator_mixgo_nova_mic_set:()=>Xr,actuator_mixgo_nova_onboard_music_pitch:()=>wr,actuator_mixgo_nova_onboard_music_stop:()=>kr,actuator_mixgo_nova_play_audio:()=>Ur,actuator_mixgo_nova_play_online_audio:()=>Gr,actuator_mixgo_nova_record_audio:()=>Br,actuator_mixgo_nova_voice_get:()=>Vr,actuator_mixgo_nova_voice_set:()=>yr,actuator_mixgo_zero_led_color:()=>er,actuator_onboard_neopixel_rgb:()=>pr,actuator_onboard_neopixel_rgb_all:()=>ar,actuator_onboard_neopixel_rgb_show_all_chase:()=>rr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>ur,actuator_onboard_neopixel_write:()=>lr,actuator_rm_onboard_neopixel_rgb:()=>dr,actuator_rm_onboard_neopixel_rgb_all:()=>Ir,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Tr,actuator_stepper_keep:()=>Cr,actuator_stepper_stop:()=>Sr,analog_keyboard_input:()=>Jr,analog_keyboard_str:()=>Zr,analog_mouse_input:()=>zr,bitbot_motor:()=>xr,bitbot_move:()=>vr,bitbot_stop:()=>Yr,cc_number:()=>_r,esp32_music_get_tempo:()=>Mr,esp32_music_reset:()=>mr,esp32_music_set_tempo:()=>hr,esp32_onboard_music_pitch:()=>Or,esp32_onboard_music_pitch_with_time:()=>Er,esp32_onboard_music_play_list:()=>cr,esp32_onboard_music_stop:()=>Rr,general_key:()=>qr,get_power_output:()=>Wr,ledswitch:()=>zu,mixbot_motor:()=>Fr,mixbot_motor_status:()=>Nr,mixbot_move:()=>Dr,mixbot_stop:()=>fr,mouse_key:()=>jr,number:()=>qu,rm_actuator_get_led_bright:()=>nr,rm_actuator_get_led_state:()=>sr,rm_actuator_led_bright:()=>ir,rm_actuator_led_brightness:()=>or,rm_motor:()=>gr,set_all_power_output:()=>Kr,set_power_output:()=>Hr,special_key:()=>Qr});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>vl,ai_sensor_ailocal_class:()=>cl,ai_sensor_ailocal_class_result:()=>gl,ai_sensor_ailocal_train:()=>Rl,ai_sensor_asr_recognize:()=>Nl,ai_sensor_audio_play:()=>Sl,ai_sensor_audio_record:()=>Cl,ai_sensor_barcode:()=>_l,ai_sensor_circle:()=>dl,ai_sensor_classifier_faces:()=>Pl,ai_sensor_color:()=>Ml,ai_sensor_color_chases:()=>El,ai_sensor_color_chases_result:()=>Ol,ai_sensor_config:()=>sl,ai_sensor_face:()=>Fl,ai_sensor_find_20objects:()=>Yl,ai_sensor_find_barcodes:()=>pl,ai_sensor_find_circles:()=>Il,ai_sensor_find_colors:()=>ml,ai_sensor_find_licenseplates:()=>fl,ai_sensor_find_lines:()=>ll,ai_sensor_find_qrcodes:()=>nl,ai_sensor_find_rects:()=>hl,ai_sensor_find_tags:()=>ul,ai_sensor_licenseplate:()=>Dl,ai_sensor_line:()=>rl,ai_sensor_qrcode:()=>el,ai_sensor_qrcode_lite:()=>il,ai_sensor_rect:()=>Tl,ai_sensor_rgb:()=>ol,ai_sensor_tag:()=>al,ai_sensor_use_uart_init:()=>tl,ai_sensor_yolo_recognize:()=>Al,ai_sensor_yolo_recognize_result:()=>Ll});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>bl,MICROPYTHON_AI_Speech_unit:()=>Xl,MICROPYTHON_AI_client:()=>xl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>jl,mpython_blynk_app_notify:()=>Hl,mpython_blynk_email:()=>Jl,mpython_blynk_get_timers:()=>Ql,mpython_blynk_on_connected:()=>Gl,mpython_blynk_on_disconnected:()=>Ul,mpython_blynk_run:()=>kl,mpython_blynk_sensor_data_to_app:()=>zl,mpython_blynk_set_property:()=>Kl,mpython_blynk_setup:()=>Zl,mpython_blynk_stop_timers:()=>Wl,mpython_blynk_sync_virtual:()=>Bl,mpython_blynk_terminal_widget_vpin:()=>Vl,mpython_blynktimer:()=>ql,mpython_blynktimer_run:()=>wl});var v={};t.r(v),t.d(v,{communicate_bluetooth_central_init:()=>xd,communicate_bluetooth_connect:()=>Vd,communicate_bluetooth_disconnect:()=>Bd,communicate_bluetooth_handle:()=>Hd,communicate_bluetooth_is_connected:()=>Gd,communicate_bluetooth_mac:()=>yd,communicate_bluetooth_peripheral_init:()=>Xd,communicate_bluetooth_recv:()=>wd,communicate_bluetooth_recv_only:()=>kd,communicate_bluetooth_scan:()=>bd,communicate_bluetooth_send:()=>Ud,communicate_espnow_init:()=>Wd,communicate_espnow_init_new:()=>Kd,communicate_i2c_available:()=>Md,communicate_i2c_init:()=>id,communicate_i2c_master_read:()=>hd,communicate_i2c_onboard:()=>td,communicate_i2c_read:()=>nd,communicate_i2c_scan:()=>od,communicate_i2c_write:()=>sd,communicate_ir_recv_init:()=>Sd,communicate_ir_send_init:()=>fd,communicate_ow_init:()=>Od,communicate_ow_read:()=>Rd,communicate_ow_reset:()=>Cd,communicate_ow_scan:()=>Ed,communicate_ow_select:()=>gd,communicate_ow_write:()=>cd,communicate_spi_buffer:()=>ad,communicate_spi_init:()=>_d,communicate_spi_onboard:()=>ed,communicate_spi_read:()=>ud,communicate_spi_read_output:()=>rd,communicate_spi_readinto:()=>ld,communicate_spi_readinto_output:()=>dd,communicate_spi_set:()=>pd,communicate_spi_write:()=>Id,communicate_spi_write_readinto:()=>Td,espnow_radio_channel:()=>Zd,espnow_radio_channel_new:()=>tI,espnow_radio_on_off:()=>eI,espnow_radio_rec:()=>nI,espnow_radio_recv:()=>oI,espnow_radio_recv_certain_msg:()=>_I,espnow_radio_recv_certain_msg_new:()=>aI,espnow_radio_recv_msg:()=>sI,espnow_radio_recv_new:()=>pI,espnow_radio_send:()=>iI,espnow_radio_txpower:()=>$d,i2c_available:()=>FI,i2c_init:()=>MI,i2c_master_reader2:()=>fI,i2c_read:()=>mI,i2c_scan:()=>EI,i2c_slave_onreceive:()=>md,i2c_write:()=>OI,internal_variable:()=>Ad,ir_recv_timeout:()=>Dd,ir_transmit_busy:()=>Yd,ir_transmit_conventional_data:()=>Fd,ir_transmit_raw_code:()=>vd,ir_transmit_study_code:()=>Pd,ir_whether_recv:()=>Nd,lora_init:()=>uI,lora_packet:()=>rI,lora_recv:()=>dI,lora_send:()=>lI,network_espnow_info:()=>Qd,network_espnow_mac:()=>Jd,network_espnow_recv:()=>qd,network_espnow_recv_handle:()=>jd,network_espnow_send:()=>zd,recv_fun:()=>Ld,spi_buffer:()=>gI,spi_init:()=>RI,spi_read:()=>CI,spi_read_output:()=>SI,spi_readinto:()=>AI,spi_readinto_output:()=>LI,spi_set:()=>cI,spi_write:()=>NI,spi_write_readinto:()=>DI,urequests_attribute:()=>TI,urequests_get:()=>II,urequests_method:()=>hI});var Y={};t.r(Y),t.d(Y,{display_animate:()=>_T,display_blink_rate:()=>iT,display_circle:()=>pT,display_color_seclet:()=>ET,display_draw_4strings:()=>zI,display_fill:()=>oT,display_get_screen_image:()=>eT,display_help:()=>uT,display_image_size:()=>jI,display_lcd_use_i2c_init:()=>AT,display_line:()=>$I,display_line_arbitrarily:()=>tT,display_matrix_extern_bright_point:()=>wI,display_matrix_extern_bright_screen:()=>HI,display_matrix_extern_clear:()=>WI,display_matrix_extern_get_pixel:()=>GI,display_matrix_extern_get_screen_pixel:()=>kI,display_matrix_extern_image_builtins:()=>KI,display_matrix_extern_scroll_string:()=>bI,display_matrix_extern_scroll_string_delay:()=>yI,display_matrix_extern_shift:()=>UI,display_matrix_extern_show_frame_string:()=>VI,display_matrix_extern_show_frame_string_delay:()=>BI,display_matrix_extern_show_image:()=>xI,display_matrix_extern_show_image_or_string_delay:()=>XI,display_matrix_use_i2c_init:()=>YI,display_oled_drawPixel:()=>lT,display_oled_showBitmap:()=>rT,display_oled_use_i2c_init:()=>FT,display_onoff:()=>sT,display_rect:()=>ZI,display_rgb_color:()=>nT,display_tm1650_power:()=>IT,display_tm1650_set_brightness:()=>MT,display_tm1650_show_dot:()=>hT,display_tm1650_show_num:()=>TT,display_tm_use_i2c_init:()=>dT,display_triangle:()=>aT,display_use_i2c_init:()=>qI,extern_oled_bright_point:()=>GT,extern_oled_clear:()=>wT,extern_oled_get_pixel:()=>UT,extern_oled_hvline:()=>HT,extern_oled_line:()=>WT,extern_oled_scroll_string:()=>XT,extern_oled_scroll_string_delay:()=>bT,extern_oled_shape_rect:()=>kT,extern_oled_shift:()=>BT,extern_oled_show_frame_string:()=>yT,extern_oled_show_frame_string_delay:()=>VT,extern_oled_show_image:()=>PT,extern_oled_show_image_or_string_delay:()=>xT,extern_oled_show_image_xy:()=>vT,extern_oled_show_string:()=>YT,lcd_backlight:()=>DT,lcd_clear:()=>fT,lcd_print_string:()=>NT,lcd_show_image_or_string_delay:()=>LT,matrix_extern_image_arithmetic:()=>JI,matrix_extern_image_invert:()=>QI,tft_fill:()=>CT,tft_line_arbitrarily:()=>ST,tft_scroll_string_delay:()=>cT,tft_show_frame_string_delay:()=>gT,tft_show_image_or_string_delay:()=>RT,tft_show_image_xy:()=>OT,tft_use_spi_init:()=>mT});var x={};t.r(x),t.d(x,{bitbot_display_image_create:()=>Fh,display_bright_point:()=>_h,display_bright_screen:()=>ah,display_clear:()=>uh,display_get_pixel:()=>oh,display_get_screen_pixel:()=>ph,display_image_builtins:()=>th,display_image_builtins_all:()=>eh,display_image_create:()=>$T,display_scroll_string:()=>qT,display_scroll_string_delay:()=>zT,display_shift:()=>sh,display_show_frame_string:()=>jT,display_show_frame_string_delay:()=>ZT,display_show_image:()=>JT,display_show_image_or_string_delay:()=>QT,image_arithmetic:()=>ih,image_invert:()=>nh,mixbot_display_bright_screen:()=>Dh,mixbot_display_get_ambientbright:()=>Nh,mixbot_display_get_screen_pixel:()=>Lh,mixbot_display_image_create:()=>Ah,mixbot_display_rotate:()=>fh,mixgo_display_image_create_new:()=>dh,mixgome_display_font:()=>Ih,mixgome_display_image_create:()=>rh,mixgomini_display_image_create:()=>lh,mpython_display_hvline:()=>gh,mpython_display_line:()=>Ch,mpython_display_shape_rect:()=>ch,mpython_pbm_image:()=>Sh,onboard_oled_bright_point:()=>Rh,onboard_oled_scroll_string_delay:()=>Oh,onboard_oled_show_frame_string_delay:()=>Eh,onboard_oled_show_image:()=>Th,onboard_oled_show_image_or_string_delay:()=>mh,onboard_oled_show_image_xy:()=>hh,onboard_oled_show_string:()=>Mh,onboard_tft_bright_point:()=>kh,onboard_tft_bright_screen:()=>Kh,onboard_tft_clear:()=>Hh,onboard_tft_clock_clear:()=>Zh,onboard_tft_clock_draw:()=>jh,onboard_tft_clock_get_rtctime:()=>qh,onboard_tft_clock_init:()=>Qh,onboard_tft_clock_set_time:()=>zh,onboard_tft_display_hvline:()=>Bh,onboard_tft_display_line:()=>Uh,onboard_tft_display_shape_circle:()=>$h,onboard_tft_display_shape_rect:()=>Vh,onboard_tft_fill:()=>Jh,onboard_tft_get_pixel:()=>wh,onboard_tft_get_screen_pixel:()=>Wh,onboard_tft_scroll_string:()=>xh,onboard_tft_scroll_string_delay:()=>Xh,onboard_tft_shift:()=>Gh,onboard_tft_show_frame_string:()=>bh,onboard_tft_show_frame_string_delay:()=>yh,onboard_tft_show_image:()=>Ph,onboard_tft_show_image_or_string_delay:()=>Yh,onboard_tft_show_image_xy:()=>vh});var X={};t.r(X),t.d(X,{factory_block:()=>rM,factory_block_return:()=>lM,factory_block_return_with_textarea:()=>IM,factory_block_with_textarea:()=>dM,factory_callMethod_noreturn:()=>aM,factory_callMethod_return:()=>uM,factory_create_with_container:()=>sM,factory_create_with_item:()=>oM,factory_declare:()=>pM,factory_from_import:()=>eM,factory_function_noreturn:()=>nM,factory_function_return:()=>_M,factory_import:()=>iM,folding_block:()=>TM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>bM,inout_analog_atten:()=>SM,inout_analog_read:()=>CM,inout_analog_read_init:()=>FM,inout_analog_write:()=>RM,inout_analog_write_init:()=>fM,inout_analog_write_set:()=>cM,inout_analog_write_set_freq:()=>YM,inout_digital_init:()=>NM,inout_digital_read:()=>OM,inout_digital_write:()=>mM,inout_highlow:()=>MM,inout_pinMode:()=>vM,inout_pin_attachInterrupt:()=>LM,inout_pin_pressed:()=>AM,inout_pin_pressed_init:()=>PM,inout_pwm_analog_write:()=>EM,inout_pwm_analog_write_init:()=>DM,inout_pwm_analog_write_set_freq:()=>gM,pin_pressed:()=>XM,pin_pressed_init:()=>xM});var y={};t.r(y),t.d(y,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>_m,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>om,IOT_EMQX_PING:()=>nm,IOT_FORMATTING:()=>em,IOT_FORMAT_STRING:()=>im,IOT_MIXIO_NTP:()=>sm,IOT_MIXIO_PUBLISH:()=>QM,IOT_MIXIO_SUBSCRIBE:()=>qM,iot_checkonenet:()=>Mm,iot_client_onboard:()=>am,iot_create_with_item:()=>KM,iot_http_client:()=>um,iot_http_data:()=>rm,iot_mixio_check:()=>ZM,iot_mixio_connect:()=>JM,iot_mixio_connect_only:()=>jM,iot_mixio_disconnect:()=>zM,iot_mixio_format_msg:()=>tm,iot_mixio_format_topic:()=>$M,iot_mixly_key:()=>pm,iot_mqtt_client:()=>lm,iot_mqtt_data:()=>dm,iot_onenet_check:()=>GM,iot_onenet_connect:()=>BM,iot_onenet_disconnect:()=>UM,iot_onenet_publish:()=>kM,iot_onenet_publish_dict:()=>wM,iot_onenetconnect:()=>Tm,iot_onenetdisconnect:()=>hm,iot_publish:()=>mm,iot_publish_container:()=>HM,iot_publish_item:()=>WM,iot_wifi_connect:()=>VM,iot_wificonnect:()=>Im});var V={};t.r(V),t.d(V,{network_ap_connect:()=>vm,network_connect:()=>Cm,network_get_connect:()=>fm,network_get_wifi:()=>Pm,network_init:()=>Em,network_is_active:()=>cm,network_open:()=>Rm,network_scan:()=>gm,network_server:()=>Ym,network_socket_accept:()=>Vm,network_socket_bind:()=>Xm,network_socket_close:()=>km,network_socket_connect:()=>bm,network_socket_init:()=>xm,network_socket_listen:()=>ym,network_socket_receive:()=>Bm,network_socket_receive_from:()=>Gm,network_socket_send:()=>Um,network_socket_send_to:()=>wm,network_stop:()=>Fm,network_wifi_connect:()=>Sm,ntptime_address:()=>Qm,ntptime_time:()=>Jm,requests_attribute:()=>Wm,requests_get:()=>Hm,requests_method:()=>Km,urequests_connect_url:()=>Nm,urequests_response:()=>Dm,urequests_wifi_connect:()=>Am,urequests_wifi_url:()=>Lm});var B={};t.r(B),t.d(B,{HCSR04:()=>qO,PS2_Button:()=>$O,PS2_Buttons:()=>eE,PS2_Buttons_new:()=>oE,PS2_State:()=>tE,PS2_init:()=>zO,PS2_init_new:()=>nE,PS2_stk:()=>iE,PS2_stk_new:()=>_E,PS2_vibration:()=>ZO,PS2_vibration_new:()=>sE,esp32_s2_weather_init:()=>WO,esp32_s2_weather_rain:()=>JO,esp32_s2_weather_wd:()=>KO,esp32_s2_weather_ws:()=>QO,extern_rfid_read:()=>PO,extern_rfid_readcontent:()=>YO,extern_rfid_readid:()=>vO,extern_rfid_status:()=>bO,extern_rfid_write:()=>xO,extern_rfid_write_return:()=>XO,gnss_get_data:()=>rE,gnss_have_data:()=>uE,mixbot_sensor_extern_get_addr:()=>mE,mixbot_sensor_extern_set_addr:()=>OE,pm25_get_data:()=>aE,robot_button_extern_get_value:()=>lE,robot_color_extern_get_value:()=>ME,robot_infrared_extern_get_value:()=>IE,robot_infrared_extern_grey_get_value:()=>TE,robot_potentiometer_extern_get_value:()=>hE,robot_sonar_extern_get_value:()=>EE,robot_sonar_extern_led:()=>RE,robot_touch_extern_get_value:()=>dE,sensor_APDS9960_extern:()=>IO,sensor_LTR308_extern:()=>TO,sensor_LTR390UV_extern:()=>MO,sensor_MAX30102_extern:()=>dO,sensor_QMC5883L_extern:()=>cO,sensor_VL530LX_extern:()=>mO,sensor_adxl345_get_acceleration:()=>eO,sensor_aht11_extern:()=>EO,sensor_bmp:()=>pO,sensor_compass_reset:()=>fO,sensor_dht11:()=>nO,sensor_ds18x20:()=>uO,sensor_hp203_extern:()=>RO,sensor_light_level:()=>iO,sensor_lm35:()=>rO,sensor_ltr381_extern:()=>hO,sensor_mixgo_extern_button_attachInterrupt:()=>$m,sensor_mixgo_extern_button_get_presses:()=>Zm,sensor_mixgo_extern_button_is_pressed:()=>zm,sensor_mixgo_extern_button_was_pressed:()=>jm,sensor_mixgo_extern_light:()=>sO,sensor_mixgo_extern_pin_near:()=>_O,sensor_mixgo_extern_sound:()=>oO,sensor_mixgoce_hot_wheel_degrees:()=>HO,sensor_mixgoce_hot_wheel_is_touched:()=>kO,sensor_mpu9250_attachGestureInterrupt:()=>tO,sensor_mpu9250_calibrate_compass:()=>LO,sensor_mpu9250_field_strength:()=>DO,sensor_mpu9250_gesture:()=>gO,sensor_mpu9250_get_acceleration:()=>CO,sensor_mpu9250_get_gyro:()=>AO,sensor_mpu9250_get_magnetic:()=>SO,sensor_mpu9250_temperature:()=>NO,sensor_sht:()=>aO,sensor_shtc3_extern:()=>OO,sensor_use_i2c_init:()=>lO,sensor_use_spi_init:()=>FO,sensor_use_uart_init:()=>pE,sensor_weather_solo_init:()=>cE,sensor_weather_solo_rain:()=>SE,sensor_weather_solo_wd:()=>gE,sensor_weather_solo_ws:()=>CE,weather_data:()=>yO,weather_have_data:()=>VO,weather_set_label:()=>UO,weather_set_label_container:()=>GO,weather_set_label_item:()=>wO,weather_uart_mixio:()=>BO});var U={};t.r(U),t.d(U,{HCSR04:()=>GE,RTC_set_date:()=>UE,RTC_set_time:()=>BE,bitbot_als_num:()=>KR,dht11:()=>$R,number1:()=>kE,number2:()=>HE,number3:()=>WE,number4:()=>KE,number5:()=>JE,number6:()=>QE,number7:()=>qE,onboard_RTC_get_time:()=>iR,onboard_RTC_get_timestamp:()=>nR,onboard_RTC_set_datetime:()=>_R,onboard_RTC_settime_string:()=>oR,onboard_RTC_timestamp_totuple:()=>sR,rfid_readcontent:()=>TR,rfid_readid:()=>IR,rfid_write:()=>hR,rfid_write_return:()=>MR,sensor_LTR308:()=>aR,sensor_aht11:()=>rR,sensor_bitbot_ALS:()=>WR,sensor_button_get_presses:()=>qR,sensor_button_is_pressed:()=>JR,sensor_button_was_pressed:()=>QR,sensor_distance_hrsc04:()=>VE,sensor_eulerangles:()=>OR,sensor_field_strength:()=>tc,sensor_get_acceleration:()=>mR,sensor_get_temperature:()=>lR,sensor_hp203:()=>dR,sensor_light:()=>ZR,sensor_mixbot_get_gyro:()=>HR,sensor_mixbot_patrol_calibrate:()=>GR,sensor_mixbot_patrol_value:()=>wR,sensor_mixbot_temperature:()=>kR,sensor_mixgo_LTR308:()=>eR,sensor_mixgo_button_attachInterrupt:()=>fE,sensor_mixgo_button_get_presses:()=>DE,sensor_mixgo_button_is_pressed:()=>LE,sensor_mixgo_button_was_pressed:()=>NE,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>fR,sensor_mixgo_cc_mmc5603_get_angle:()=>DR,sensor_mixgo_cc_mmc5603_get_magnetic:()=>NR,sensor_mixgo_light:()=>wE,sensor_mixgo_nova_LTR308:()=>tR,sensor_mixgo_nova_pin_near:()=>$E,sensor_mixgo_pin_near:()=>ZE,sensor_mixgo_pin_near_double:()=>jE,sensor_mixgo_pin_near_single:()=>zE,sensor_mixgo_pin_pressed:()=>xE,sensor_mixgo_touch_slide:()=>yE,sensor_mixgocar42_button_attachInterrupt:()=>YE,sensor_mixgocar42_button_get_presses:()=>vE,sensor_mixgocar42_button_is_pressed:()=>FE,sensor_mixgocar42_button_was_pressed:()=>PE,sensor_mixgocar_battery_left:()=>UR,sensor_mixgocar_pin_near:()=>VR,sensor_mixgocar_pin_near_line:()=>yR,sensor_mixgocar_pin_near_state_change:()=>BR,sensor_mixgoce_pin_pressed:()=>XE,sensor_mixgoce_temperature:()=>PR,sensor_mixgome_temperature:()=>FR,sensor_mpython_pin_pressed:()=>bE,sensor_mpython_qmi8658_get_gyro:()=>vR,sensor_mpython_qmi8658_temperature:()=>YR,sensor_onboard_compass_reset:()=>LR,sensor_onboard_mpu9250_calibrate_compass:()=>CR,sensor_onboard_mpu9250_field_strength:()=>AR,sensor_onboard_mpu9250_gesture:()=>ER,sensor_onboard_mpu9250_get_acceleration:()=>RR,sensor_onboard_mpu9250_get_gyro:()=>gR,sensor_onboard_mpu9250_get_magnetic:()=>cR,sensor_onboard_mpu9250_temperature:()=>SR,sensor_pin_near:()=>jR,sensor_pin_pressed:()=>zR,sensor_rm_acc:()=>bR,sensor_rm_battery_left:()=>XR,sensor_rm_pin_near_double:()=>xR,sensor_rtc_init:()=>pR,sensor_sound:()=>uR,sensor_temperature:()=>ec});var G={};t.r(G),t.d(G,{serial_any:()=>uc,serial_begin:()=>Tc,serial_print:()=>sc,serial_print_byte:()=>nc,serial_print_hex:()=>_c,serial_println:()=>oc,serial_read_from_ai:()=>Cc,serial_readline:()=>rc,serial_readstr:()=>ac,serial_readstr_until:()=>lc,serial_receive_data_event:()=>pc,serial_send_to_ai:()=>gc,serial_softserial:()=>Ic,serial_softserial_new:()=>dc,system_input:()=>hc,system_print:()=>Mc,system_print_container:()=>Rc,system_print_end:()=>Oc,system_print_inline:()=>mc,system_print_item:()=>cc,system_print_many:()=>Ec});var w={};t.r(w),t.d(w,{Panic_with_status_code:()=>Nc,Timer_init:()=>Uc,base_delay:()=>kc,controls_delay:()=>Lc,controls_delay_new:()=>Ac,controls_millis:()=>fc,controls_uname:()=>Pc,raw_block:()=>Fc,reset:()=>Dc,system_bitbot_shutdown:()=>Bc,system_machine_reset:()=>Vc,system_ticks_diff:()=>xc,system_timer:()=>Yc,system_timer_init:()=>Xc,system_wdt_feed:()=>yc,system_wdt_init:()=>bc,time_ticks_diff:()=>wc,timer:()=>vc,timer2:()=>Gc});var k={};t.r(k),t.d(k,{WEATHER_DAILY:()=>Kc,WEATHER_HOUR:()=>Jc,WEATHER_NOW:()=>Wc});var H={};t.r(H),t.d(H,{actuator_extern_get_led_bright:()=>Ig,actuator_extern_get_led_state:()=>Tg,actuator_extern_led_bright:()=>dg,actuator_extern_led_brightness:()=>hg,actuator_ms32006_dcmotor:()=>eg,actuator_ms32006_init:()=>tg,actuator_ms32006_stepper:()=>ig,actuator_neopixel_init:()=>Mg,actuator_neopixel_rgb:()=>Eg,actuator_neopixel_rgb_all:()=>mg,actuator_neopixel_write:()=>Og,actuator_use_uart_init:()=>Rg,esp32_music_get_tempo_extern:()=>ag,esp32_music_pitch:()=>sg,esp32_music_pitch_init:()=>ng,esp32_music_pitch_with_time:()=>og,esp32_music_play_list:()=>ug,esp32_music_reset_extern:()=>rg,esp32_music_set_tempo_extern:()=>pg,esp32_music_stop:()=>_g,mixbot_actuator_extern_get_addr:()=>Vg,mixbot_actuator_extern_set_addr:()=>Bg,mixbot_addr_extern:()=>Ag,robot_led_extern:()=>fg,robot_led_extern_get_value:()=>Fg,robot_motor_extern:()=>Lg,robot_motor_extern_get_speed:()=>Ng,robot_servo_extern_absolute_run:()=>xg,robot_servo_extern_get_status:()=>Pg,robot_servo_extern_relative_continue:()=>yg,robot_servo_extern_relative_origin:()=>Xg,robot_servo_extern_relative_run:()=>bg,robot_servo_extern_stop:()=>Yg,robot_servo_extern_stop_mode:()=>vg,robot_traffic_light_extern:()=>Dg,servo_get_angle:()=>Zc,servo_get_speed:()=>$c,servo_init:()=>Qc,servo_move:()=>lg,servo_set_angle:()=>zc,servo_set_speed:()=>jc,servo_speed_360:()=>qc,syn6288_builtin_voice:()=>Cg,syn6288_get_voice:()=>gg,syn6288_set_voice:()=>cg,syn6288_tts_play:()=>Sg});var W={};t.r(W),t.d(W,{actuator_dc_motor:()=>IC,actuator_dc_motor_stop:()=>TC,actuator_get_led_bright:()=>zg,actuator_get_led_state:()=>jg,actuator_led_bright:()=>qg,actuator_led_brightness:()=>Zg,actuator_mixbot_buzzer_on_off:()=>EC,actuator_mixgo_nova_mic_get:()=>SC,actuator_mixgo_nova_mic_set:()=>CC,actuator_mixgo_nova_onboard_music_pitch:()=>FC,actuator_mixgo_nova_onboard_music_stop:()=>PC,actuator_mixgo_nova_play_audio:()=>DC,actuator_mixgo_nova_play_online_audio:()=>fC,actuator_mixgo_nova_record_audio:()=>NC,actuator_mixgo_nova_voice_get:()=>LC,actuator_mixgo_nova_voice_set:()=>AC,actuator_mixgo_zero_led_color:()=>$g,actuator_onboard_neopixel_rgb:()=>_C,actuator_onboard_neopixel_rgb_all:()=>pC,actuator_onboard_neopixel_rgb_show_all_chase:()=>aC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>uC,actuator_onboard_neopixel_write:()=>oC,actuator_stepper_keep:()=>lC,actuator_stepper_stop:()=>dC,analog_keyboard_input:()=>XC,analog_keyboard_str:()=>UC,analog_mouse_input:()=>VC,bitbot_motor:()=>gC,bitbot_move:()=>RC,bitbot_stop:()=>cC,cc_number:()=>tC,esp32_music_get_tempo:()=>Gg,esp32_music_reset:()=>Kg,esp32_music_set_tempo:()=>Ug,esp32_onboard_music_pitch:()=>wg,esp32_onboard_music_pitch_with_time:()=>kg,esp32_onboard_music_play_list:()=>Wg,esp32_onboard_music_stop:()=>Hg,general_key:()=>yC,get_power_output:()=>YC,ledswitch:()=>Qg,mixbot_motor:()=>OC,mixbot_motor_status:()=>hC,mixbot_move:()=>MC,mixbot_stop:()=>mC,mouse_key:()=>BC,number:()=>Jg,rm_actuator_get_led_bright:()=>iC,rm_actuator_get_led_state:()=>nC,rm_actuator_led_bright:()=>eC,rm_actuator_led_brightness:()=>sC,rm_motor:()=>rC,set_all_power_output:()=>xC,set_power_output:()=>vC,special_key:()=>bC});var K={};t.r(K),t.d(K,{ai_sensor_20object:()=>ES,ai_sensor_ailocal_class:()=>aS,ai_sensor_ailocal_class_result:()=>uS,ai_sensor_ailocal_train:()=>pS,ai_sensor_asr_recognize:()=>TS,ai_sensor_audio_play:()=>lS,ai_sensor_audio_record:()=>rS,ai_sensor_barcode:()=>JC,ai_sensor_circle:()=>$C,ai_sensor_classifier_faces:()=>OS,ai_sensor_color:()=>nS,ai_sensor_color_chases:()=>_S,ai_sensor_color_chases_result:()=>oS,ai_sensor_config:()=>kC,ai_sensor_face:()=>mS,ai_sensor_find_20objects:()=>RS,ai_sensor_find_barcodes:()=>QC,ai_sensor_find_circles:()=>tS,ai_sensor_find_colors:()=>sS,ai_sensor_find_licenseplates:()=>MS,ai_sensor_find_lines:()=>ZC,ai_sensor_find_qrcodes:()=>KC,ai_sensor_find_rects:()=>iS,ai_sensor_find_tags:()=>zC,ai_sensor_licenseplate:()=>hS,ai_sensor_line:()=>jC,ai_sensor_qrcode:()=>WC,ai_sensor_qrcode_lite:()=>wC,ai_sensor_rect:()=>eS,ai_sensor_rgb:()=>HC,ai_sensor_tag:()=>qC,ai_sensor_use_uart_init:()=>GC,ai_sensor_yolo_recognize:()=>dS,ai_sensor_yolo_recognize_result:()=>IS});var J={};t.r(J),t.d(J,{MICROPYTHON_AI_Speech_asr:()=>CS,MICROPYTHON_AI_Speech_unit:()=>gS,MICROPYTHON_AI_client:()=>cS});var Q={};t.r(Q),t.d(Q,{mpython_blynk_app_data:()=>XS,mpython_blynk_app_notify:()=>FS,mpython_blynk_email:()=>bS,mpython_blynk_get_timers:()=>vS,mpython_blynk_on_connected:()=>NS,mpython_blynk_on_disconnected:()=>LS,mpython_blynk_run:()=>fS,mpython_blynk_sensor_data_to_app:()=>xS,mpython_blynk_set_property:()=>yS,mpython_blynk_setup:()=>VS,mpython_blynk_stop_timers:()=>PS,mpython_blynk_sync_virtual:()=>AS,mpython_blynk_terminal_widget_vpin:()=>SS,mpython_blynktimer:()=>YS,mpython_blynktimer_run:()=>DS});var q={};t.r(q),t.d(q,{communicate_bluetooth_central_init:()=>EA,communicate_bluetooth_connect:()=>gA,communicate_bluetooth_disconnect:()=>CA,communicate_bluetooth_handle:()=>fA,communicate_bluetooth_is_connected:()=>AA,communicate_bluetooth_mac:()=>SA,communicate_bluetooth_peripheral_init:()=>RA,communicate_bluetooth_recv:()=>DA,communicate_bluetooth_recv_only:()=>NA,communicate_bluetooth_scan:()=>cA,communicate_bluetooth_send:()=>LA,communicate_espnow_init:()=>FA,communicate_espnow_init_new:()=>PA,communicate_i2c_available:()=>KS,communicate_i2c_init:()=>GS,communicate_i2c_master_read:()=>WS,communicate_i2c_onboard:()=>BS,communicate_i2c_read:()=>wS,communicate_i2c_scan:()=>HS,communicate_i2c_write:()=>kS,communicate_ir_recv_init:()=>uA,communicate_ir_send_init:()=>TA,communicate_ow_init:()=>nA,communicate_ow_read:()=>_A,communicate_ow_reset:()=>oA,communicate_ow_scan:()=>sA,communicate_ow_select:()=>aA,communicate_ow_write:()=>pA,communicate_spi_buffer:()=>zS,communicate_spi_init:()=>QS,communicate_spi_onboard:()=>US,communicate_spi_read:()=>jS,communicate_spi_read_output:()=>ZS,communicate_spi_readinto:()=>$S,communicate_spi_readinto_output:()=>tA,communicate_spi_set:()=>qS,communicate_spi_write:()=>eA,communicate_spi_write_readinto:()=>iA,espnow_radio_channel:()=>yA,espnow_radio_channel_new:()=>BA,espnow_radio_on_off:()=>UA,espnow_radio_rec:()=>wA,espnow_radio_recv:()=>HA,espnow_radio_recv_certain_msg:()=>WA,espnow_radio_recv_certain_msg_new:()=>JA,espnow_radio_recv_msg:()=>kA,espnow_radio_recv_new:()=>KA,espnow_radio_send:()=>GA,espnow_radio_txpower:()=>VA,i2c_slave_onreceive:()=>JS,internal_variable:()=>rA,ir_recv_timeout:()=>IA,ir_transmit_busy:()=>OA,ir_transmit_conventional_data:()=>hA,ir_transmit_raw_code:()=>mA,ir_transmit_study_code:()=>MA,ir_whether_recv:()=>dA,lora_init:()=>QA,lora_packet:()=>qA,lora_recv:()=>jA,lora_send:()=>zA,network_espnow_info:()=>YA,network_espnow_mac:()=>vA,network_espnow_recv:()=>xA,network_espnow_recv_handle:()=>bA,network_espnow_send:()=>XA,recv_fun:()=>lA,urequests_attribute:()=>$A,urequests_get:()=>ZA,urequests_method:()=>tL});var z={};t.r(z),t.d(z,{display_animate:()=>AL,display_circle:()=>LL,display_color_seclet:()=>yL,display_draw_4strings:()=>OL,display_fill:()=>SL,display_lcd_use_i2c_init:()=>kL,display_line:()=>cL,display_line_arbitrarily:()=>EL,display_matrix_extern_bright_point:()=>lL,display_matrix_extern_bright_screen:()=>IL,display_matrix_extern_clear:()=>aL,display_matrix_extern_get_pixel:()=>rL,display_matrix_extern_get_screen_pixel:()=>dL,display_matrix_extern_image_builtins:()=>TL,display_matrix_extern_scroll_string:()=>_L,display_matrix_extern_scroll_string_delay:()=>pL,display_matrix_extern_shift:()=>uL,display_matrix_extern_show_frame_string:()=>sL,display_matrix_extern_show_frame_string_delay:()=>oL,display_matrix_extern_show_image:()=>iL,display_matrix_extern_show_image_or_string_delay:()=>nL,display_matrix_use_i2c_init:()=>eL,display_oled_drawPixel:()=>fL,display_oled_showBitmap:()=>DL,display_oled_use_i2c_init:()=>QL,display_onoff:()=>gL,display_rect:()=>RL,display_tm1650_power:()=>PL,display_tm1650_set_brightness:()=>xL,display_tm1650_show_dot:()=>YL,display_tm1650_show_num:()=>vL,display_tm_use_i2c_init:()=>FL,display_triangle:()=>NL,display_use_i2c_init:()=>mL,extern_oled_bright_point:()=>_N,extern_oled_clear:()=>nN,extern_oled_get_pixel:()=>oN,extern_oled_hvline:()=>aN,extern_oled_line:()=>uN,extern_oled_scroll_string:()=>eN,extern_oled_scroll_string_delay:()=>iN,extern_oled_shape_rect:()=>pN,extern_oled_shift:()=>sN,extern_oled_show_frame_string:()=>$L,extern_oled_show_frame_string_delay:()=>tN,extern_oled_show_image:()=>qL,extern_oled_show_image_or_string_delay:()=>ZL,extern_oled_show_image_xy:()=>zL,extern_oled_show_string:()=>jL,image_shift:()=>CL,lcd_backlight:()=>KL,lcd_clear:()=>JL,lcd_print_string:()=>WL,lcd_show_image_or_string_delay:()=>HL,matrix_extern_image_arithmetic:()=>hL,matrix_extern_image_invert:()=>ML,tft_fill:()=>GL,tft_line_arbitrarily:()=>wL,tft_scroll_string_delay:()=>UL,tft_show_frame_string_delay:()=>BL,tft_show_image_or_string_delay:()=>VL,tft_show_image_xy:()=>bL,tft_use_spi_init:()=>XL});var j={};t.r(j),t.d(j,{bitbot_display_image_create:()=>JN,display_bright_point:()=>SN,display_bright_screen:()=>LN,display_clear:()=>EN,display_get_pixel:()=>CN,display_get_screen_pixel:()=>AN,display_image_builtins:()=>MN,display_image_builtins_all:()=>mN,display_image_create:()=>ON,display_scroll_string:()=>TN,display_scroll_string_delay:()=>hN,display_shift:()=>gN,display_show_frame_string:()=>dN,display_show_frame_string_delay:()=>IN,display_show_image:()=>rN,display_show_image_or_string_delay:()=>lN,image_arithmetic:()=>RN,image_invert:()=>cN,mixbot_display_bright_screen:()=>WN,mixbot_display_get_ambientbright:()=>HN,mixbot_display_get_screen_pixel:()=>kN,mixbot_display_image_create:()=>wN,mixbot_display_rotate:()=>KN,mixgo_display_image_create_new:()=>FN,mixgome_display_font:()=>fN,mixgome_display_image_create:()=>NN,mixgomini_display_image_create:()=>DN,mpython_display_hvline:()=>UN,mpython_display_line:()=>GN,mpython_display_shape_rect:()=>BN,mpython_pbm_image:()=>PN,onboard_oled_bright_point:()=>VN,onboard_oled_scroll_string_delay:()=>yN,onboard_oled_show_frame_string_delay:()=>bN,onboard_oled_show_image:()=>vN,onboard_oled_show_image_or_string_delay:()=>XN,onboard_oled_show_image_xy:()=>YN,onboard_oled_show_string:()=>xN,onboard_tft_bright_point:()=>pD,onboard_tft_bright_screen:()=>uD,onboard_tft_clear:()=>sD,onboard_tft_clock_clear:()=>hD,onboard_tft_clock_draw:()=>TD,onboard_tft_clock_get_rtctime:()=>dD,onboard_tft_clock_init:()=>lD,onboard_tft_clock_set_time:()=>ID,onboard_tft_display_hvline:()=>iD,onboard_tft_display_line:()=>nD,onboard_tft_display_shape_circle:()=>MD,onboard_tft_display_shape_rect:()=>eD,onboard_tft_fill:()=>rD,onboard_tft_get_pixel:()=>_D,onboard_tft_get_screen_pixel:()=>aD,onboard_tft_scroll_string:()=>$N,onboard_tft_scroll_string_delay:()=>tD,onboard_tft_shift:()=>oD,onboard_tft_show_frame_string:()=>jN,onboard_tft_show_frame_string_delay:()=>ZN,onboard_tft_show_image:()=>QN,onboard_tft_show_image_or_string_delay:()=>zN,onboard_tft_show_image_xy:()=>qN});var Z={};t.r(Z),t.d(Z,{factory_block:()=>SD,factory_block_return:()=>AD,factory_block_return_with_textarea:()=>ND,factory_block_with_textarea:()=>LD,factory_callMethod_noreturn:()=>gD,factory_callMethod_return:()=>CD,factory_declare:()=>cD,factory_from_import:()=>mD,factory_function_noreturn:()=>ED,factory_function_return:()=>RD,factory_import:()=>OD,folding_block:()=>DD});var $={};t.r($),t.d($,{inout_analog_atten:()=>kD,inout_analog_read:()=>bD,inout_analog_read_init:()=>wD,inout_analog_write:()=>YD,inout_analog_write_init:()=>GD,inout_analog_write_set:()=>xD,inout_digital_init:()=>BD,inout_digital_read:()=>PD,inout_digital_write:()=>FD,inout_highlow:()=>fD,inout_pin_attachInterrupt:()=>VD,inout_pin_pressed:()=>yD,inout_pin_pressed_init:()=>HD,inout_pwm_analog_write:()=>vD,inout_pwm_analog_write_init:()=>UD,inout_pwm_analog_write_set_freq:()=>XD});var tt={};t.r(tt),t.d(tt,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>rf,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>af,IOT_EMQX_PING:()=>lf,IOT_FORMATTING:()=>_f,IOT_FORMAT_STRING:()=>pf,IOT_MIXIO_NTP:()=>df,IOT_MIXIO_PUBLISH:()=>ZD,IOT_MIXIO_SUBSCRIBE:()=>$D,iot_client_onboard:()=>If,iot_http_client:()=>Tf,iot_http_data:()=>hf,iot_mixio_check:()=>nf,iot_mixio_connect:()=>jD,iot_mixio_connect_only:()=>ef,iot_mixio_disconnect:()=>tf,iot_mixio_format_msg:()=>of,iot_mixio_format_topic:()=>sf,iot_mixly_key:()=>uf,iot_mqtt_client:()=>Mf,iot_mqtt_data:()=>mf,iot_onenet_check:()=>qD,iot_onenet_connect:()=>KD,iot_onenet_disconnect:()=>JD,iot_onenet_publish:()=>zD,iot_onenet_publish_dict:()=>QD,iot_wifi_connect:()=>WD});var et={};t.r(et),t.d(et,{network_ap_connect:()=>Lf,network_connect:()=>Ef,network_get_connect:()=>cf,network_get_wifi:()=>Af,network_init:()=>Of,network_is_active:()=>Sf,network_open:()=>Cf,network_scan:()=>Nf,network_server:()=>Df,network_socket_accept:()=>Yf,network_socket_bind:()=>Ff,network_socket_close:()=>Vf,network_socket_connect:()=>Pf,network_socket_init:()=>ff,network_socket_listen:()=>vf,network_socket_receive:()=>xf,network_socket_receive_from:()=>bf,network_socket_send:()=>Xf,network_socket_send_to:()=>yf,network_stop:()=>gf,network_wifi_connect:()=>Rf,ntptime_address:()=>kf,ntptime_time:()=>wf,requests_attribute:()=>Uf,requests_get:()=>Bf,requests_method:()=>Gf,urequests_connect_url:()=>Kf,urequests_response:()=>Jf,urequests_wifi_connect:()=>Hf,urequests_wifi_url:()=>Wf});var it={};t.r(it),t.d(it,{HCSR04:()=>bF,PS2_Button:()=>BF,PS2_Buttons:()=>UF,PS2_Buttons_new:()=>QF,PS2_State:()=>GF,PS2_init:()=>yF,PS2_init_new:()=>KF,PS2_stk:()=>wF,PS2_stk_new:()=>qF,PS2_vibration:()=>VF,PS2_vibration_new:()=>JF,RTC_get_time:()=>HF,RTC_set_date:()=>eF,RTC_set_datetime:()=>kF,RTC_set_time:()=>tF,esp32_s2_weather_init:()=>vF,esp32_s2_weather_rain:()=>xF,esp32_s2_weather_wd:()=>YF,esp32_s2_weather_ws:()=>XF,extern_rfid_read:()=>RF,extern_rfid_readcontent:()=>gF,extern_rfid_readid:()=>cF,extern_rfid_status:()=>AF,extern_rfid_write:()=>CF,extern_rfid_write_return:()=>SF,gnss_get_data:()=>ZF,gnss_have_data:()=>$F,mixbot_sensor_extern_get_addr:()=>aP,mixbot_sensor_extern_set_addr:()=>uP,pm25_get_data:()=>jF,robot_button_extern_get_value:()=>tP,robot_color_extern_get_value:()=>oP,robot_infrared_extern_get_value:()=>iP,robot_infrared_extern_grey_get_value:()=>nP,robot_potentiometer_extern_get_value:()=>sP,robot_sonar_extern_get_value:()=>_P,robot_sonar_extern_led:()=>pP,robot_touch_extern_get_value:()=>eP,sensor_APDS9960_extern:()=>rF,sensor_LTR308_extern:()=>lF,sensor_LTR390UV_extern:()=>TF,sensor_MAX30102_extern:()=>uF,sensor_QMC5883L_extern:()=>hF,sensor_VL530LX_extern:()=>OF,sensor_aht11_extern:()=>mF,sensor_bmp:()=>_F,sensor_dht11:()=>WF,sensor_distance_hrsc04:()=>$f,sensor_hp203_extern:()=>dF,sensor_ltr381_extern:()=>IF,sensor_mixgo_extern_button_attachInterrupt:()=>jf,sensor_mixgo_extern_button_get_presses:()=>zf,sensor_mixgo_extern_button_is_pressed:()=>Qf,sensor_mixgo_extern_button_was_pressed:()=>qf,sensor_mixgo_extern_light:()=>iF,sensor_mixgo_extern_pin_near:()=>sF,sensor_mixgo_extern_sound:()=>nF,sensor_mixgoce_hot_wheel_degrees:()=>PF,sensor_mixgoce_hot_wheel_is_touched:()=>FF,sensor_mpu9250_attachGestureInterrupt:()=>Zf,sensor_rtc_init:()=>oF,sensor_sht:()=>pF,sensor_shtc3_extern:()=>MF,sensor_use_i2c_init:()=>aF,sensor_use_spi_init:()=>EF,sensor_use_uart_init:()=>zF,sensor_weather_solo_init:()=>rP,sensor_weather_solo_rain:()=>IP,sensor_weather_solo_wd:()=>lP,sensor_weather_solo_ws:()=>dP,weather_data:()=>LF,weather_have_data:()=>NF,weather_set_label:()=>fF,weather_uart_mixio:()=>DF});var nt={};t.r(nt),t.d(nt,{HCSR04:()=>gP,bitbot_als_num:()=>Uv,dht11:()=>Qv,number1:()=>CP,number2:()=>SP,number3:()=>AP,number4:()=>LP,number5:()=>NP,number6:()=>DP,number7:()=>fP,onboard_RTC_get_time:()=>Ov,onboard_RTC_get_timestamp:()=>Ev,onboard_RTC_set_datetime:()=>Mv,onboard_RTC_settime_string:()=>mv,onboard_RTC_timestamp_totuple:()=>Rv,rfid_readcontent:()=>HP,rfid_readid:()=>kP,rfid_write:()=>WP,rfid_write_return:()=>KP,sensor_LTR308:()=>VP,sensor_adxl345_get_acceleration:()=>ev,sensor_aht11:()=>GP,sensor_bitbot_ALS:()=>Bv,sensor_button_get_presses:()=>kv,sensor_button_is_pressed:()=>Gv,sensor_button_was_pressed:()=>wv,sensor_compass_reset:()=>pv,sensor_ds18x20:()=>bP,sensor_eulerangles:()=>QP,sensor_get_acceleration:()=>JP,sensor_get_temperature:()=>wP,sensor_hp203:()=>UP,sensor_light:()=>Jv,sensor_lm35:()=>yP,sensor_mixbot_get_gyro:()=>Vv,sensor_mixbot_patrol_calibrate:()=>Xv,sensor_mixbot_patrol_value:()=>bv,sensor_mixbot_temperature:()=>yv,sensor_mixgo_LTR308:()=>xP,sensor_mixgo_button_attachInterrupt:()=>mP,sensor_mixgo_button_get_presses:()=>MP,sensor_mixgo_button_is_pressed:()=>TP,sensor_mixgo_button_was_pressed:()=>hP,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Cv,sensor_mixgo_cc_mmc5603_get_angle:()=>gv,sensor_mixgo_cc_mmc5603_get_magnetic:()=>cv,sensor_mixgo_light:()=>Kv,sensor_mixgo_nova_LTR308:()=>XP,sensor_mixgo_nova_pin_near:()=>YP,sensor_mixgo_pin_near:()=>vP,sensor_mixgo_pin_near_double:()=>PP,sensor_mixgo_pin_near_single:()=>FP,sensor_mixgo_pin_pressed:()=>$P,sensor_mixgo_touch_slide:()=>ZP,sensor_mixgocar42_button_attachInterrupt:()=>cP,sensor_mixgocar42_button_get_presses:()=>RP,sensor_mixgocar42_button_is_pressed:()=>OP,sensor_mixgocar42_button_was_pressed:()=>EP,sensor_mixgocar_battery_left:()=>xv,sensor_mixgocar_pin_near:()=>vv,sensor_mixgocar_pin_near_line:()=>Pv,sensor_mixgocar_pin_near_state_change:()=>Yv,sensor_mixgoce_pin_pressed:()=>jP,sensor_mixgoce_temperature:()=>Av,sensor_mixgome_temperature:()=>Sv,sensor_mpu9250_calibrate_compass:()=>sv,sensor_mpu9250_field_strength:()=>_v,sensor_mpu9250_gesture:()=>qP,sensor_mpu9250_get_acceleration:()=>zP,sensor_mpu9250_get_gyro:()=>nv,sensor_mpu9250_get_magnetic:()=>iv,sensor_mpu9250_temperature:()=>ov,sensor_mpython_pin_pressed:()=>tv,sensor_mpython_qmi8658_get_gyro:()=>Lv,sensor_mpython_qmi8658_temperature:()=>Nv,sensor_onboard_compass_reset:()=>hv,sensor_onboard_mpu9250_calibrate_compass:()=>dv,sensor_onboard_mpu9250_field_strength:()=>Tv,sensor_onboard_mpu9250_gesture:()=>av,sensor_onboard_mpu9250_get_acceleration:()=>uv,sensor_onboard_mpu9250_get_gyro:()=>lv,sensor_onboard_mpu9250_get_magnetic:()=>rv,sensor_onboard_mpu9250_temperature:()=>Iv,sensor_pin_near:()=>Wv,sensor_pin_pressed:()=>Hv,sensor_rm_acc:()=>Fv,sensor_rm_battery_left:()=>fv,sensor_rm_pin_near_double:()=>Dv,sensor_sound:()=>BP});var st={};t.r(st),t.d(st,{serial_any:()=>$v,serial_print:()=>qv,serial_print_byte:()=>zv,serial_print_hex:()=>Zv,serial_println:()=>jv,serial_read_from_ai:()=>rY,serial_readline:()=>eY,serial_readstr:()=>tY,serial_send_to_ai:()=>uY,serial_softserial:()=>iY,serial_softserial_new:()=>nY,system_input:()=>sY,system_print:()=>oY,system_print_end:()=>pY,system_print_inline:()=>_Y,system_print_many:()=>aY});var ot={};t.r(ot),t.d(ot,{Panic_with_status_code:()=>gY,Timer_init:()=>yY,base_delay:()=>UY,controls_delay:()=>NY,controls_delay_new:()=>DY,controls_end_program:()=>SY,controls_millis:()=>CY,controls_uname:()=>LY,reset:()=>AY,system_bitbot_shutdown:()=>bY,system_device_name:()=>RY,system_device_serial_number:()=>cY,system_event_bus_source:()=>OY,system_event_bus_value:()=>EY,system_machine_reset:()=>XY,system_on_event:()=>hY,system_raise_event:()=>TY,system_reset:()=>dY,system_run_in_background:()=>lY,system_ticks_diff:()=>PY,system_timer:()=>FY,system_timer_init:()=>vY,system_timestamp:()=>MY,system_value:()=>mY,system_wait:()=>IY,system_wdt_feed:()=>xY,system_wdt_init:()=>YY,time_ticks_diff:()=>BY,timer:()=>fY,timer2:()=>VY});var _t={};t.r(_t),t.d(_t,{WEATHER_DAILY:()=>wY,WEATHER_HOUR:()=>kY,WEATHER_NOW:()=>GY});var pt={};t.r(pt),t.d(pt,{analog_input:()=>ex,analog_output:()=>nx,espnow_channel:()=>ZY,haskylens_model:()=>$Y,i2c_A_pin:()=>sx,i2c_B_pin:()=>ox,pins_analog:()=>rx,pins_analog_pin:()=>lx,pins_axis:()=>Nx,pins_brightness:()=>Dx,pins_builtinimg:()=>Rx,pins_builtinimg_extern:()=>cx,pins_button:()=>Tx,pins_dac:()=>dx,pins_dac_pin:()=>Ix,pins_digital:()=>JY,pins_digital_dot:()=>bx,pins_digital_pin:()=>QY,pins_exlcdh:()=>Ax,pins_exlcdv:()=>Lx,pins_imglist:()=>gx,pins_input_pin:()=>qY,pins_mpython_touch:()=>jY,pins_one_more:()=>Xx,pins_output_pin:()=>zY,pins_playlist:()=>Cx,pins_playlist_extern:()=>Sx,pins_pwm:()=>hx,pins_pwm_pin:()=>Mx,pins_radio_datarate:()=>xx,pins_radio_power:()=>Yx,pins_serial:()=>Ex,pins_tone_notes:()=>vx,pins_touch:()=>Ox,pins_touch_pin:()=>mx,pins_tts_bgmusic:()=>Px,pins_tts_builtin_music:()=>Fx,pins_tts_voice:()=>fx,pwm_input:()=>tx,pwm_output:()=>ix,spi_A_pin:()=>_x,spi_B_pin:()=>px,spi_C_pin:()=>ax,spi_D_pin:()=>ux});var at={};t.r(at),t.d(at,{espnow_channel:()=>Kx,haskylens_model:()=>Jx,pins_analog:()=>kx,pins_analog_pin:()=>wx,pins_axis:()=>_X,pins_brightness:()=>uX,pins_builtinimg:()=>eX,pins_builtinimg_extern:()=>iX,pins_button:()=>Vx,pins_dac:()=>zx,pins_dac_pin:()=>qx,pins_digital:()=>yx,pins_digital_dot:()=>mX,pins_digital_pin:()=>Bx,pins_exlcdh:()=>pX,pins_exlcdv:()=>aX,pins_imglist:()=>nX,pins_input_pin:()=>Ux,pins_interrupt:()=>$x,pins_mpython_touch:()=>Qx,pins_one_more:()=>MX,pins_output_pin:()=>Gx,pins_playlist:()=>sX,pins_playlist_extern:()=>oX,pins_pwm:()=>Wx,pins_pwm_pin:()=>Hx,pins_radio_datarate:()=>hX,pins_radio_power:()=>TX,pins_serial:()=>tX,pins_tone_notes:()=>IX,pins_touch:()=>Zx,pins_touch_pin:()=>jx,pins_tts_bgmusic:()=>dX,pins_tts_builtin_music:()=>lX,pins_tts_voice:()=>rX});const ut=Blockly,rt=Mixly,lt={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},dt=lt; +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{controls_type:()=>Rt,controls_typeLists:()=>ct,variables_change:()=>Ot,variables_get:()=>Mt,variables_global:()=>Et,variables_set:()=>mt});var i={};t.r(i),t.d(i,{base_setup:()=>St,controls_delay:()=>At,controls_end_program:()=>Lt,controls_except:()=>Bt,controls_finally:()=>Gt,controls_flow_statements:()=>vt,controls_for:()=>Yt,controls_forEach:()=>ft,controls_for_range:()=>xt,controls_if:()=>Nt,controls_if_else:()=>yt,controls_if_elseif:()=>bt,controls_if_if:()=>Xt,controls_lambda:()=>wt,controls_main:()=>Ct,controls_pass:()=>kt,controls_range:()=>Dt,controls_repeat_ext:()=>Ut,controls_thread:()=>Ht,controls_try:()=>Vt,controls_try_finally:()=>Pt,controls_whileUntil:()=>Ft,do_while:()=>Wt,garbage_collection:()=>Kt,get_mem_alloc:()=>Jt,get_mem_free:()=>Qt,get_unique_identifier:()=>qt});var n={};t.r(n),t.d(n,{base_map:()=>Me,math_arithmetic:()=>te,math_bit:()=>ie,math_constant:()=>Zt,math_constant_mp:()=>$t,math_constrain:()=>ue,math_dec:()=>se,math_indexer_number:()=>le,math_map:()=>re,math_max_min:()=>_e,math_number:()=>jt,math_number_base_conversion:()=>pe,math_random:()=>ae,math_random_seed:()=>de,math_round:()=>Ie,math_selfcalcu:()=>ee,math_to_int:()=>oe,math_trig:()=>ne,text_to_number:()=>Te,text_to_number_skulpt:()=>he});var s={};t.r(s),t.d(s,{ascii_to_char:()=>ge,char_to_ascii:()=>Ce,number_to_text:()=>Se,os_system:()=>qe,text:()=>Oe,text_capital:()=>Ye,text_center:()=>xe,text_char:()=>Re,text_char_at:()=>Ne,text_char_at2:()=>Le,text_char_at3:()=>We,text_compareTo:()=>He,text_compare_to:()=>ve,text_create_with_container:()=>Ue,text_create_with_item:()=>we,text_encode:()=>Je,text_equals_starts_ends:()=>Pe,text_eval:()=>Qe,text_find:()=>Xe,text_format:()=>Ge,text_format_noreturn:()=>Ke,text_join:()=>ce,text_join_seq:()=>be,text_length:()=>Ae,text_random_char:()=>De,text_replace:()=>ye,text_split:()=>Ve,text_strip:()=>Be,text_substring:()=>Fe,text_substring2:()=>fe,text_substring3:()=>ke,text_textarea:()=>Ee});var o={};t.r(o),t.d(o,{list_many_input:()=>Oi,list_tolist:()=>Ai,list_tolist2:()=>Yi,list_trig:()=>hi,lists_2d_get_col_row_data:()=>ti,lists_2d_get_data_with_col_row:()=>$e,lists_append_extend:()=>_i,lists_change_to:()=>mi,lists_change_to_general:()=>Ri,lists_clear:()=>li,lists_create_with:()=>ei,lists_create_with2:()=>Li,lists_create_with_container:()=>ni,lists_create_with_item:()=>si,lists_create_with_noreturn:()=>Ei,lists_create_with_text:()=>ii,lists_create_with_text2:()=>Ni,lists_del_general:()=>ci,lists_find:()=>Ti,lists_getIndex3:()=>Di,lists_getSublist3:()=>fi,lists_get_index:()=>je,lists_get_random_item:()=>pi,lists_get_random_sublist:()=>ai,lists_get_sublist:()=>Ze,lists_insert_value:()=>ui,lists_insert_value2:()=>Pi,lists_pop:()=>Ii,lists_remove_at:()=>di,lists_remove_at2:()=>vi,lists_reverse:()=>ri,lists_setIndex3:()=>Fi,lists_set_index:()=>oi,lists_sort:()=>Mi,lists_zip:()=>gi,lists_zip_container:()=>Ci,lists_zip_item:()=>Si});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>qi,dicts_add_or_change:()=>Ui,dicts_clear:()=>Hi,dicts_create_with:()=>Xi,dicts_create_with_container:()=>bi,dicts_create_with_item:()=>yi,dicts_create_with_noreturn:()=>Zi,dicts_deldict:()=>Qi,dicts_delete:()=>wi,dicts_get:()=>Bi,dicts_get_default:()=>Gi,dicts_items:()=>Wi,dicts_keys:()=>Vi,dicts_length:()=>Ji,dicts_pop:()=>zi,dicts_setdefault:()=>ji,dicts_to_json:()=>tn,dicts_todict:()=>$i,dicts_update:()=>ki,dicts_values:()=>Ki,json_to_dicts:()=>en});var p={};t.r(p),t.d(p,{logic_boolean:()=>an,logic_compare:()=>sn,logic_compare_continous:()=>on,logic_is:()=>dn,logic_is_in:()=>ln,logic_negate:()=>pn,logic_null:()=>un,logic_operation:()=>_n,logic_tobool:()=>In,logic_true_or_false:()=>rn});var a={};t.r(a),t.d(a,{sdcard_mount:()=>bn,sdcard_use_spi_init:()=>Xn,storage_can_write_ornot:()=>gn,storage_change_dir:()=>Yn,storage_close_file:()=>Sn,storage_delete_file:()=>Ln,storage_file_seek:()=>fn,storage_file_tell:()=>Dn,storage_file_write:()=>On,storage_fileopen:()=>hn,storage_fileopen_new:()=>Mn,storage_fileopen_new_encoding:()=>mn,storage_get_a_line:()=>cn,storage_get_contents:()=>Rn,storage_get_contents_without_para:()=>En,storage_get_current_dir:()=>Fn,storage_get_file_size:()=>Nn,storage_get_filename:()=>Cn,storage_is_file:()=>xn,storage_list_all_files:()=>An,storage_make_dir:()=>Pn,storage_open_file_with_os:()=>Tn,storage_rename:()=>vn});var u={};t.r(u),t.d(u,{procedures_callnoreturn:()=>kn,procedures_callreturn:()=>Hn,procedures_defnoreturn:()=>Bn,procedures_defreturn:()=>Gn,procedures_ifreturn:()=>Wn,procedures_mutatorarg:()=>wn,procedures_mutatorcontainer:()=>Un,procedures_return:()=>Kn});var r={};t.r(r),t.d(r,{tuple_change_to:()=>ss,tuple_create_with:()=>Qn,tuple_create_with_container:()=>qn,tuple_create_with_item:()=>zn,tuple_create_with_noreturn:()=>as,tuple_create_with_text2:()=>jn,tuple_create_with_text_return:()=>Zn,tuple_del:()=>es,tuple_find:()=>os,tuple_getIndex:()=>$n,tuple_getSublist:()=>ps,tuple_get_random_item:()=>rs,tuple_get_sublist:()=>us,tuple_join:()=>is,tuple_length:()=>ts,tuple_max:()=>ns,tuple_totuple:()=>ls,tuple_trig:()=>_s});var l={};t.r(l),t.d(l,{set_add_discard:()=>cs,set_clear:()=>Os,set_create_with:()=>Is,set_create_with_container:()=>Ts,set_create_with_item:()=>hs,set_create_with_text_return:()=>Ss,set_length:()=>Ms,set_operate:()=>Es,set_operate_update:()=>Rs,set_pop:()=>ms,set_sub:()=>gs,set_toset:()=>As,set_update:()=>Cs});var d={};t.r(d),t.d(d,{html_content:()=>Fs,html_content_more:()=>Ps,html_document:()=>Ns,html_form:()=>Ys,html_head_body:()=>fs,html_style:()=>vs,html_style_color:()=>Xs,html_style_content:()=>xs,html_text:()=>bs,html_title:()=>Ds});var I={};t.r(I),t.d(I,{attribute_access:()=>zs,function_call:()=>Js,function_call_container:()=>Qs,function_call_item:()=>qs,raw_block:()=>Bs,raw_empty:()=>Us,raw_expression:()=>Gs,raw_table:()=>Vs,text_comment:()=>ws,text_print_multiple:()=>Hs,text_print_multiple_container:()=>Ws,text_print_multiple_item:()=>Ks,type_check:()=>ks});var T={};t.r(T),t.d(T,{controls_type:()=>eo,controls_typeLists:()=>io,variables_change:()=>$s,variables_get:()=>js,variables_global:()=>to,variables_set:()=>Zs});var h={};t.r(h),t.d(h,{Panic_with_status_code:()=>Io,base_setup:()=>so,controls_delay:()=>lo,controls_flow_statements:()=>ro,controls_for:()=>po,controls_forEach:()=>Oo,controls_for_range:()=>ao,controls_if:()=>oo,controls_interrupts:()=>Mo,controls_lambda:()=>Ro,controls_main:()=>no,controls_millis:()=>To,controls_nointerrupts:()=>mo,controls_pass:()=>go,controls_range:()=>Eo,controls_repeat:()=>Fo,controls_repeat_ext:()=>Ao,controls_thread:()=>Co,controls_try_finally:()=>_o,controls_whileUntil:()=>uo,do_while:()=>So,garbage_collection:()=>Lo,get_mem_alloc:()=>No,get_mem_free:()=>Do,get_unique_identifier:()=>fo,reset:()=>ho,time_sleep:()=>co});var M={};t.r(M),t.d(M,{base_map:()=>jo,math_arithmetic:()=>Xo,math_bit:()=>xo,math_constant:()=>vo,math_constant_mp:()=>Yo,math_constrain:()=>Ho,math_dec:()=>Bo,math_indexer_number:()=>Jo,math_map:()=>ko,math_max_min:()=>Uo,math_number:()=>Po,math_number_base_conversion:()=>Wo,math_random:()=>wo,math_random_seed:()=>Ko,math_round:()=>Qo,math_selfcalcu:()=>bo,math_single:()=>yo,math_to_int:()=>Go,math_trig:()=>Vo,text_to_number:()=>qo,text_to_number_skulpt:()=>zo});var m={};t.r(m),t.d(m,{ascii_to_char:()=>i_,char_to_ascii:()=>n_,number_to_text:()=>s_,os_system:()=>N_,text:()=>Zo,text_capital:()=>I_,text_center:()=>T_,text_char:()=>t_,text_char_at:()=>p_,text_char_at2:()=>__,text_char_at3:()=>S_,text_compareTo:()=>C_,text_compare_to:()=>r_,text_encode:()=>A_,text_equals_starts_ends:()=>u_,text_eval:()=>L_,text_find:()=>h_,text_format:()=>R_,text_format_noreturn:()=>c_,text_join:()=>e_,text_join_seq:()=>M_,text_length:()=>o_,text_random_char:()=>a_,text_replace:()=>m_,text_split:()=>O_,text_strip:()=>E_,text_substring:()=>d_,text_substring2:()=>l_,text_substring3:()=>g_,text_textarea:()=>$o});var O={};t.r(O),t.d(O,{list_many_input:()=>J_,list_tolist:()=>op,list_tolist2:()=>_p,list_trig:()=>H_,lists_2d_get_col_row_data:()=>F_,lists_2d_get_data_with_col_row:()=>f_,lists_append_extend:()=>X_,lists_change_to:()=>K_,lists_change_to_general:()=>q_,lists_clear:()=>G_,lists_create_with:()=>P_,lists_create_with2:()=>j_,lists_create_with_noreturn:()=>Q_,lists_create_with_text:()=>v_,lists_create_with_text2:()=>Z_,lists_del_general:()=>z_,lists_find:()=>U_,lists_getIndex3:()=>$_,lists_getSublist3:()=>tp,lists_get_index:()=>Y_,lists_get_random_item:()=>b_,lists_get_random_sublist:()=>y_,lists_get_sublist:()=>D_,lists_insert_value:()=>V_,lists_insert_value2:()=>ip,lists_pop:()=>k_,lists_remove_at:()=>w_,lists_remove_at2:()=>np,lists_reverse:()=>B_,lists_setIndex3:()=>ep,lists_set_index:()=>x_,lists_sort:()=>W_,lists_zip:()=>sp});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Ep,dicts_add_or_change:()=>lp,dicts_clear:()=>Tp,dicts_create_with:()=>pp,dicts_create_with_noreturn:()=>gp,dicts_deldict:()=>Op,dicts_delete:()=>dp,dicts_get:()=>up,dicts_get_default:()=>rp,dicts_items:()=>hp,dicts_keys:()=>ap,dicts_length:()=>mp,dicts_pop:()=>Rp,dicts_setdefault:()=>cp,dicts_to_json:()=>Sp,dicts_todict:()=>Cp,dicts_update:()=>Ip,dicts_values:()=>Mp,json_to_dicts:()=>Ap});var R={};t.r(R),t.d(R,{logic_boolean:()=>Fp,logic_compare:()=>Lp,logic_compare_continous:()=>Np,logic_is:()=>xp,logic_is_in:()=>Yp,logic_negate:()=>fp,logic_null:()=>Pp,logic_operation:()=>Dp,logic_tobool:()=>Xp,logic_true_or_false:()=>vp});var c={};t.r(c),t.d(c,{sdcard_mount:()=>sa,sdcard_use_spi_init:()=>na,storage_can_write_ornot:()=>Hp,storage_change_dir:()=>Zp,storage_close_file:()=>Kp,storage_delete_file:()=>Qp,storage_file_seek:()=>jp,storage_file_tell:()=>zp,storage_file_write:()=>Gp,storage_fileopen:()=>yp,storage_fileopen_new:()=>Vp,storage_fileopen_new_encoding:()=>Bp,storage_get_a_line:()=>kp,storage_get_contents:()=>wp,storage_get_contents_without_para:()=>Up,storage_get_current_dir:()=>$p,storage_get_file_size:()=>qp,storage_get_filename:()=>Wp,storage_is_file:()=>ia,storage_list_all_files:()=>Jp,storage_make_dir:()=>ta,storage_open_file_with_os:()=>bp,storage_rename:()=>ea});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>aa,procedures_callreturn:()=>pa,procedures_defnoreturn:()=>_a,procedures_defreturn:()=>oa,procedures_ifreturn:()=>ua,procedures_return:()=>ra});var C={};t.r(C),t.d(C,{tuple_change_to:()=>Ea,tuple_create_with:()=>la,tuple_create_with_noreturn:()=>Ca,tuple_create_with_text2:()=>da,tuple_create_with_text_return:()=>Ia,tuple_del:()=>Ma,tuple_find:()=>Ra,tuple_getIndex:()=>Ta,tuple_getSublist:()=>ga,tuple_get_random_item:()=>Aa,tuple_get_sublist:()=>Sa,tuple_join:()=>ma,tuple_length:()=>ha,tuple_max:()=>Oa,tuple_totuple:()=>La,tuple_trig:()=>ca});var S={};t.r(S),t.d(S,{set_add_discard:()=>Ya,set_clear:()=>Fa,set_create_with:()=>Na,set_create_with_text_return:()=>ba,set_length:()=>Da,set_operate:()=>Pa,set_operate_update:()=>va,set_pop:()=>fa,set_sub:()=>xa,set_toset:()=>ya,set_update:()=>Xa});var A={};t.r(A),t.d(A,{html_content:()=>Ua,html_content_more:()=>wa,html_document:()=>Va,html_form:()=>Ha,html_head_body:()=>Ga,html_style:()=>ka,html_style_content:()=>Wa,html_text:()=>Ka,html_title:()=>Ba});var L={};t.r(L),t.d(L,{attribute_access:()=>$a,function_call:()=>Za,raw_block:()=>Ja,raw_empty:()=>qa,raw_expression:()=>Qa,raw_table:()=>za,type_check:()=>ja});var N={};t.r(N),t.d(N,{actuator_extern_get_led_bright:()=>lu,actuator_extern_get_led_state:()=>du,actuator_extern_led_bright:()=>ru,actuator_extern_led_brightness:()=>Iu,actuator_ms32006_dcmotor:()=>gu,actuator_ms32006_init:()=>cu,actuator_ms32006_stepper:()=>Cu,actuator_neopixel_init:()=>Su,actuator_neopixel_rgb:()=>Au,actuator_neopixel_rgb_all:()=>Lu,actuator_neopixel_write:()=>Nu,actuator_use_uart_init:()=>Du,esp32_music_get_tempo_extern:()=>pu,esp32_music_pitch:()=>nu,esp32_music_pitch_init:()=>iu,esp32_music_pitch_with_time:()=>su,esp32_music_play_list:()=>ou,esp32_music_reset_extern:()=>au,esp32_music_set_tempo_extern:()=>_u,esp32_music_stop:()=>uu,mixbot_actuator_extern_get_addr:()=>Ku,mixbot_actuator_extern_set_addr:()=>Ju,mixbot_addr_extern:()=>Yu,robot_led_extern:()=>yu,robot_led_extern_get_value:()=>Vu,robot_motor_extern:()=>xu,robot_motor_extern_get_speed:()=>Xu,robot_servo_extern_absolute_run:()=>wu,robot_servo_extern_get_status:()=>Bu,robot_servo_extern_relative_continue:()=>Wu,robot_servo_extern_relative_origin:()=>ku,robot_servo_extern_relative_run:()=>Hu,robot_servo_extern_stop:()=>Uu,robot_servo_extern_stop_mode:()=>Gu,robot_traffic_light_extern:()=>bu,servo_get_angle:()=>Eu,servo_get_speed:()=>Ru,servo_init:()=>Tu,servo_move:()=>hu,servo_set_angle:()=>mu,servo_set_speed:()=>Ou,servo_speed_360:()=>Mu,syn6288_builtin_voice:()=>Pu,syn6288_get_voice:()=>Fu,syn6288_set_voice:()=>fu,syn6288_tts_play:()=>vu});var D={};t.r(D),t.d(D,{actuator_dc_motor:()=>Ar,actuator_dc_motor_stop:()=>Lr,actuator_get_led_bright:()=>Zu,actuator_get_led_state:()=>$u,actuator_led_bright:()=>ju,actuator_led_brightness:()=>tr,actuator_mixbot_buzzer_on_off:()=>Pr,actuator_mixgo_nova_mic_get:()=>br,actuator_mixgo_nova_mic_set:()=>Xr,actuator_mixgo_nova_onboard_music_pitch:()=>wr,actuator_mixgo_nova_onboard_music_stop:()=>kr,actuator_mixgo_nova_play_audio:()=>Gr,actuator_mixgo_nova_play_online_audio:()=>Ur,actuator_mixgo_nova_record_audio:()=>Br,actuator_mixgo_nova_voice_get:()=>Vr,actuator_mixgo_nova_voice_set:()=>yr,actuator_mixgo_zero_led_color:()=>er,actuator_onboard_neopixel_rgb:()=>pr,actuator_onboard_neopixel_rgb_all:()=>ar,actuator_onboard_neopixel_rgb_show_all_chase:()=>rr,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>ur,actuator_onboard_neopixel_write:()=>lr,actuator_rm_onboard_neopixel_rgb:()=>dr,actuator_rm_onboard_neopixel_rgb_all:()=>Ir,actuator_rm_onboard_neopixel_rgb_show_all_chase:()=>Tr,actuator_stepper_keep:()=>Cr,actuator_stepper_stop:()=>Sr,analog_keyboard_input:()=>Jr,analog_keyboard_str:()=>el,analog_mouse_input:()=>$r,bitbot_motor:()=>xr,bitbot_move:()=>vr,bitbot_stop:()=>Yr,cc_number:()=>_r,esp32_music_get_tempo:()=>Mr,esp32_music_reset:()=>mr,esp32_music_set_tempo:()=>hr,esp32_onboard_music_pitch:()=>Or,esp32_onboard_music_pitch_with_time:()=>Er,esp32_onboard_music_play_list:()=>cr,esp32_onboard_music_stop:()=>Rr,general_key:()=>qr,general_key_tuple:()=>zr,generalkey_container:()=>jr,generalkey_create_with_item:()=>Zr,get_power_output:()=>Wr,ledswitch:()=>zu,mixbot_motor:()=>Fr,mixbot_motor_status:()=>Nr,mixbot_move:()=>Dr,mixbot_stop:()=>fr,mouse_key:()=>tl,number:()=>qu,rm_actuator_get_led_bright:()=>nr,rm_actuator_get_led_state:()=>sr,rm_actuator_led_bright:()=>ir,rm_actuator_led_brightness:()=>or,rm_motor:()=>gr,set_all_power_output:()=>Kr,set_power_output:()=>Hr,special_key:()=>Qr});var f={};t.r(f),t.d(f,{ai_sensor_20object:()=>Xl,ai_sensor_ailocal_class:()=>Sl,ai_sensor_ailocal_class_result:()=>Al,ai_sensor_ailocal_train:()=>Cl,ai_sensor_asr_recognize:()=>Fl,ai_sensor_audio_play:()=>Nl,ai_sensor_audio_record:()=>Ll,ai_sensor_barcode:()=>ul,ai_sensor_circle:()=>hl,ai_sensor_classifier_faces:()=>xl,ai_sensor_color:()=>El,ai_sensor_color_chases:()=>gl,ai_sensor_color_chases_result:()=>cl,ai_sensor_config:()=>pl,ai_sensor_face:()=>Yl,ai_sensor_find_20objects:()=>bl,ai_sensor_find_barcodes:()=>rl,ai_sensor_find_circles:()=>Ml,ai_sensor_find_colors:()=>Rl,ai_sensor_find_licenseplates:()=>vl,ai_sensor_find_lines:()=>Tl,ai_sensor_find_qrcodes:()=>_l,ai_sensor_find_rects:()=>Ol,ai_sensor_find_tags:()=>dl,ai_sensor_licenseplate:()=>Pl,ai_sensor_line:()=>Il,ai_sensor_qrcode:()=>sl,ai_sensor_qrcode_lite:()=>ol,ai_sensor_rect:()=>ml,ai_sensor_rgb:()=>al,ai_sensor_tag:()=>ll,ai_sensor_use_uart_init:()=>nl,ai_sensor_yolo_recognize:()=>Dl,ai_sensor_yolo_recognize_result:()=>fl});var F={};t.r(F),t.d(F,{MICROPYTHON_AI_Speech_asr:()=>Bl,MICROPYTHON_AI_Speech_unit:()=>Vl,MICROPYTHON_AI_client:()=>yl});var P={};t.r(P),t.d(P,{mpython_blynk_app_data:()=>td,mpython_blynk_app_notify:()=>Jl,mpython_blynk_email:()=>zl,mpython_blynk_get_timers:()=>jl,mpython_blynk_on_connected:()=>Hl,mpython_blynk_on_disconnected:()=>kl,mpython_blynk_run:()=>Kl,mpython_blynk_sensor_data_to_app:()=>$l,mpython_blynk_set_property:()=>ql,mpython_blynk_setup:()=>ed,mpython_blynk_stop_timers:()=>Ql,mpython_blynk_sync_virtual:()=>wl,mpython_blynk_terminal_widget_vpin:()=>Ul,mpython_blynktimer:()=>Zl,mpython_blynktimer_run:()=>Wl});var v={};t.r(v),t.d(v,{communicate_bluetooth_central_init:()=>yd,communicate_bluetooth_connect:()=>Ud,communicate_bluetooth_disconnect:()=>wd,communicate_bluetooth_handle:()=>Jd,communicate_bluetooth_is_connected:()=>Hd,communicate_bluetooth_mac:()=>Gd,communicate_bluetooth_peripheral_init:()=>Vd,communicate_bluetooth_recv:()=>Wd,communicate_bluetooth_recv_only:()=>Kd,communicate_bluetooth_scan:()=>Bd,communicate_bluetooth_send:()=>kd,communicate_espnow_init:()=>Qd,communicate_espnow_init_new:()=>qd,communicate_i2c_available:()=>Ed,communicate_i2c_init:()=>od,communicate_i2c_master_read:()=>Od,communicate_i2c_onboard:()=>nd,communicate_i2c_read:()=>_d,communicate_i2c_scan:()=>ad,communicate_i2c_write:()=>pd,communicate_ir_recv_init:()=>Nd,communicate_ir_send_init:()=>vd,communicate_ow_init:()=>cd,communicate_ow_read:()=>Cd,communicate_ow_reset:()=>Ld,communicate_ow_scan:()=>gd,communicate_ow_select:()=>Ad,communicate_ow_write:()=>Sd,communicate_spi_buffer:()=>ld,communicate_spi_init:()=>ud,communicate_spi_onboard:()=>sd,communicate_spi_read:()=>dd,communicate_spi_read_output:()=>Id,communicate_spi_readinto:()=>Td,communicate_spi_readinto_output:()=>hd,communicate_spi_set:()=>rd,communicate_spi_write:()=>Md,communicate_spi_write_readinto:()=>md,espnow_radio_channel:()=>eI,espnow_radio_channel_new:()=>nI,espnow_radio_on_off:()=>sI,espnow_radio_rec:()=>_I,espnow_radio_recv:()=>aI,espnow_radio_recv_certain_msg:()=>uI,espnow_radio_recv_certain_msg_new:()=>lI,espnow_radio_recv_msg:()=>pI,espnow_radio_recv_new:()=>rI,espnow_radio_send:()=>oI,espnow_radio_txpower:()=>iI,i2c_available:()=>YI,i2c_init:()=>EI,i2c_master_reader2:()=>vI,i2c_read:()=>RI,i2c_scan:()=>gI,i2c_slave_onreceive:()=>Rd,i2c_write:()=>cI,internal_variable:()=>Dd,ir_recv_timeout:()=>Pd,ir_transmit_busy:()=>bd,ir_transmit_conventional_data:()=>Yd,ir_transmit_raw_code:()=>Xd,ir_transmit_study_code:()=>xd,ir_whether_recv:()=>Fd,lora_init:()=>dI,lora_packet:()=>II,lora_recv:()=>hI,lora_send:()=>TI,network_espnow_info:()=>jd,network_espnow_mac:()=>zd,network_espnow_recv:()=>Zd,network_espnow_recv_handle:()=>tI,network_espnow_send:()=>$d,recv_fun:()=>fd,spi_buffer:()=>AI,spi_init:()=>CI,spi_read:()=>LI,spi_read_output:()=>NI,spi_readinto:()=>DI,spi_readinto_output:()=>fI,spi_set:()=>SI,spi_write:()=>FI,spi_write_readinto:()=>PI,urequests_attribute:()=>mI,urequests_get:()=>MI,urequests_method:()=>OI});var Y={};t.r(Y),t.d(Y,{display_animate:()=>uT,display_blink_rate:()=>oT,display_circle:()=>rT,display_color_seclet:()=>gT,display_draw_4strings:()=>$I,display_fill:()=>aT,display_get_screen_image:()=>sT,display_help:()=>dT,display_image_size:()=>tT,display_lcd_use_i2c_init:()=>DT,display_line:()=>iT,display_line_arbitrarily:()=>nT,display_matrix_extern_bright_point:()=>WI,display_matrix_extern_bright_screen:()=>JI,display_matrix_extern_clear:()=>QI,display_matrix_extern_get_pixel:()=>HI,display_matrix_extern_get_screen_pixel:()=>KI,display_matrix_extern_image_builtins:()=>qI,display_matrix_extern_scroll_string:()=>BI,display_matrix_extern_scroll_string_delay:()=>GI,display_matrix_extern_shift:()=>kI,display_matrix_extern_show_frame_string:()=>UI,display_matrix_extern_show_frame_string_delay:()=>wI,display_matrix_extern_show_image:()=>yI,display_matrix_extern_show_image_or_string_delay:()=>VI,display_matrix_use_i2c_init:()=>bI,display_oled_drawPixel:()=>TT,display_oled_showBitmap:()=>IT,display_oled_use_i2c_init:()=>YT,display_onoff:()=>pT,display_rect:()=>eT,display_rgb_color:()=>_T,display_tm1650_power:()=>MT,display_tm1650_set_brightness:()=>ET,display_tm1650_show_dot:()=>OT,display_tm1650_show_num:()=>mT,display_tm_use_i2c_init:()=>hT,display_triangle:()=>lT,display_use_i2c_init:()=>ZI,extern_oled_bright_point:()=>HT,extern_oled_clear:()=>WT,extern_oled_get_pixel:()=>kT,extern_oled_hvline:()=>JT,extern_oled_line:()=>QT,extern_oled_scroll_string:()=>VT,extern_oled_scroll_string_delay:()=>BT,extern_oled_shape_rect:()=>KT,extern_oled_shift:()=>wT,extern_oled_show_frame_string:()=>GT,extern_oled_show_frame_string_delay:()=>UT,extern_oled_show_image:()=>xT,extern_oled_show_image_or_string_delay:()=>yT,extern_oled_show_image_xy:()=>XT,extern_oled_show_string:()=>bT,lcd_backlight:()=>PT,lcd_clear:()=>vT,lcd_print_string:()=>FT,lcd_show_image_or_string_delay:()=>fT,matrix_extern_image_arithmetic:()=>zI,matrix_extern_image_invert:()=>jI,tft_fill:()=>LT,tft_line_arbitrarily:()=>NT,tft_scroll_string_delay:()=>ST,tft_show_frame_string_delay:()=>AT,tft_show_image_or_string_delay:()=>CT,tft_show_image_xy:()=>cT,tft_use_spi_init:()=>RT});var x={};t.r(x),t.d(x,{bitbot_display_image_create:()=>Yh,display_bright_point:()=>uh,display_bright_screen:()=>lh,display_clear:()=>dh,display_get_pixel:()=>ah,display_get_screen_pixel:()=>rh,display_image_builtins:()=>nh,display_image_builtins_all:()=>sh,display_image_create:()=>ih,display_scroll_string:()=>ZT,display_scroll_string_delay:()=>$T,display_shift:()=>ph,display_show_frame_string:()=>th,display_show_frame_string_delay:()=>eh,display_show_image:()=>zT,display_show_image_or_string_delay:()=>jT,image_arithmetic:()=>oh,image_invert:()=>_h,mixbot_display_bright_screen:()=>Ph,mixbot_display_get_ambientbright:()=>Fh,mixbot_display_get_screen_pixel:()=>fh,mixbot_display_image_create:()=>Dh,mixbot_display_rotate:()=>vh,mixgo_display_image_create_new:()=>hh,mixgome_display_font:()=>Mh,mixgome_display_image_create:()=>Ih,mixgomini_display_image_create:()=>Th,mpython_display_hvline:()=>Ah,mpython_display_line:()=>Lh,mpython_display_shape_rect:()=>Sh,mpython_pbm_image:()=>Nh,onboard_oled_bright_point:()=>Ch,onboard_oled_scroll_string_delay:()=>ch,onboard_oled_show_frame_string_delay:()=>gh,onboard_oled_show_image:()=>mh,onboard_oled_show_image_or_string_delay:()=>Rh,onboard_oled_show_image_xy:()=>Oh,onboard_oled_show_string:()=>Eh,onboard_tft_bright_point:()=>Kh,onboard_tft_bright_screen:()=>qh,onboard_tft_clear:()=>Jh,onboard_tft_clock_clear:()=>eM,onboard_tft_clock_draw:()=>tM,onboard_tft_clock_get_rtctime:()=>Zh,onboard_tft_clock_init:()=>jh,onboard_tft_clock_set_time:()=>$h,onboard_tft_display_hvline:()=>wh,onboard_tft_display_line:()=>kh,onboard_tft_display_shape_circle:()=>iM,onboard_tft_display_shape_rect:()=>Uh,onboard_tft_fill:()=>zh,onboard_tft_get_pixel:()=>Wh,onboard_tft_get_screen_pixel:()=>Qh,onboard_tft_scroll_string:()=>yh,onboard_tft_scroll_string_delay:()=>Vh,onboard_tft_shift:()=>Hh,onboard_tft_show_frame_string:()=>Bh,onboard_tft_show_frame_string_delay:()=>Gh,onboard_tft_show_image:()=>xh,onboard_tft_show_image_or_string_delay:()=>bh,onboard_tft_show_image_xy:()=>Xh});var X={};t.r(X),t.d(X,{factory_block:()=>IM,factory_block_return:()=>TM,factory_block_return_with_textarea:()=>MM,factory_block_with_textarea:()=>hM,factory_callMethod_noreturn:()=>lM,factory_callMethod_return:()=>dM,factory_create_with_container:()=>pM,factory_create_with_item:()=>aM,factory_declare:()=>rM,factory_from_import:()=>sM,factory_function_noreturn:()=>_M,factory_function_return:()=>uM,factory_import:()=>oM,folding_block:()=>mM});var b={};t.r(b),t.d(b,{controls_pin_attachInterrupt:()=>BM,inout_analog_atten:()=>NM,inout_analog_read:()=>LM,inout_analog_read_init:()=>YM,inout_analog_write:()=>CM,inout_analog_write_init:()=>vM,inout_analog_write_set:()=>SM,inout_analog_write_set_freq:()=>bM,inout_digital_init:()=>FM,inout_digital_read:()=>cM,inout_digital_write:()=>RM,inout_highlow:()=>EM,inout_pinMode:()=>XM,inout_pin_attachInterrupt:()=>fM,inout_pin_pressed:()=>DM,inout_pin_pressed_init:()=>xM,inout_pwm_analog_write:()=>gM,inout_pwm_analog_write_init:()=>PM,inout_pwm_analog_write_set_freq:()=>AM,pin_pressed:()=>VM,pin_pressed_init:()=>yM});var y={};t.r(y),t.d(y,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>um,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>am,IOT_EMQX_PING:()=>_m,IOT_FORMATTING:()=>sm,IOT_FORMAT_STRING:()=>om,IOT_MIXIO_NTP:()=>pm,IOT_MIXIO_PUBLISH:()=>jM,IOT_MIXIO_SUBSCRIBE:()=>ZM,iot_checkonenet:()=>Em,iot_client_onboard:()=>lm,iot_create_with_item:()=>qM,iot_http_client:()=>dm,iot_http_data:()=>Im,iot_mixio_check:()=>em,iot_mixio_connect:()=>zM,iot_mixio_connect_only:()=>tm,iot_mixio_disconnect:()=>$M,iot_mixio_format_msg:()=>nm,iot_mixio_format_topic:()=>im,iot_mixly_key:()=>rm,iot_mqtt_client:()=>Tm,iot_mqtt_data:()=>hm,iot_onenet_check:()=>HM,iot_onenet_connect:()=>wM,iot_onenet_disconnect:()=>kM,iot_onenet_publish:()=>KM,iot_onenet_publish_dict:()=>WM,iot_onenetconnect:()=>mm,iot_onenetdisconnect:()=>Om,iot_publish:()=>Rm,iot_publish_container:()=>JM,iot_publish_item:()=>QM,iot_wifi_connect:()=>UM,iot_wificonnect:()=>Mm});var V={};t.r(V),t.d(V,{network_ap_connect:()=>Xm,network_connect:()=>Lm,network_get_connect:()=>vm,network_get_wifi:()=>xm,network_init:()=>gm,network_is_active:()=>Sm,network_open:()=>Cm,network_scan:()=>Am,network_server:()=>bm,network_socket_accept:()=>Um,network_socket_bind:()=>Vm,network_socket_close:()=>Km,network_socket_connect:()=>Bm,network_socket_init:()=>ym,network_socket_listen:()=>Gm,network_socket_receive:()=>wm,network_socket_receive_from:()=>Hm,network_socket_send:()=>km,network_socket_send_to:()=>Wm,network_stop:()=>Ym,network_wifi_connect:()=>Nm,ntptime_address:()=>jm,ntptime_time:()=>zm,requests_attribute:()=>Qm,requests_get:()=>Jm,requests_method:()=>qm,urequests_connect_url:()=>Fm,urequests_response:()=>Pm,urequests_wifi_connect:()=>Dm,urequests_wifi_url:()=>fm});var B={};t.r(B),t.d(B,{HCSR04:()=>ZO,PS2_Button:()=>iE,PS2_Buttons:()=>sE,PS2_Buttons_new:()=>aE,PS2_State:()=>nE,PS2_init:()=>$O,PS2_init_new:()=>_E,PS2_stk:()=>oE,PS2_stk_new:()=>uE,PS2_vibration:()=>eE,PS2_vibration_new:()=>pE,esp32_s2_weather_init:()=>QO,esp32_s2_weather_rain:()=>zO,esp32_s2_weather_wd:()=>qO,esp32_s2_weather_ws:()=>jO,extern_rfid_read:()=>xO,extern_rfid_readcontent:()=>bO,extern_rfid_readid:()=>XO,extern_rfid_status:()=>BO,extern_rfid_write:()=>yO,extern_rfid_write_return:()=>VO,gnss_get_data:()=>IE,gnss_have_data:()=>dE,mixbot_sensor_extern_get_addr:()=>RE,mixbot_sensor_extern_set_addr:()=>cE,pm25_get_data:()=>lE,robot_button_extern_get_value:()=>TE,robot_color_extern_get_value:()=>EE,robot_infrared_extern_get_value:()=>ME,robot_infrared_extern_grey_get_value:()=>mE,robot_potentiometer_extern_get_value:()=>OE,robot_sonar_extern_get_value:()=>gE,robot_sonar_extern_led:()=>CE,robot_touch_extern_get_value:()=>hE,sensor_APDS9960_extern:()=>MO,sensor_LTR308_extern:()=>mO,sensor_LTR390UV_extern:()=>EO,sensor_MAX30102_extern:()=>hO,sensor_QMC5883L_extern:()=>SO,sensor_VL530LX_extern:()=>RO,sensor_adxl345_get_acceleration:()=>sO,sensor_aht11_extern:()=>gO,sensor_bmp:()=>rO,sensor_compass_reset:()=>vO,sensor_dht11:()=>_O,sensor_ds18x20:()=>dO,sensor_hp203_extern:()=>CO,sensor_light_level:()=>oO,sensor_lm35:()=>IO,sensor_ltr381_extern:()=>OO,sensor_mixgo_extern_button_attachInterrupt:()=>iO,sensor_mixgo_extern_button_get_presses:()=>eO,sensor_mixgo_extern_button_is_pressed:()=>$m,sensor_mixgo_extern_button_was_pressed:()=>tO,sensor_mixgo_extern_light:()=>pO,sensor_mixgo_extern_pin_near:()=>uO,sensor_mixgo_extern_sound:()=>aO,sensor_mixgoce_hot_wheel_degrees:()=>JO,sensor_mixgoce_hot_wheel_is_touched:()=>KO,sensor_mpu9250_attachGestureInterrupt:()=>nO,sensor_mpu9250_calibrate_compass:()=>fO,sensor_mpu9250_field_strength:()=>PO,sensor_mpu9250_gesture:()=>AO,sensor_mpu9250_get_acceleration:()=>LO,sensor_mpu9250_get_gyro:()=>DO,sensor_mpu9250_get_magnetic:()=>NO,sensor_mpu9250_temperature:()=>FO,sensor_sht:()=>lO,sensor_shtc3_extern:()=>cO,sensor_use_i2c_init:()=>TO,sensor_use_spi_init:()=>YO,sensor_use_uart_init:()=>rE,sensor_weather_solo_init:()=>SE,sensor_weather_solo_rain:()=>NE,sensor_weather_solo_wd:()=>AE,sensor_weather_solo_ws:()=>LE,weather_data:()=>GO,weather_have_data:()=>UO,weather_set_label:()=>kO,weather_set_label_container:()=>HO,weather_set_label_item:()=>WO,weather_uart_mixio:()=>wO});var G={};t.r(G),t.d(G,{HCSR04:()=>HE,RTC_set_date:()=>kE,RTC_set_time:()=>wE,bitbot_als_num:()=>qR,dht11:()=>ic,number1:()=>KE,number2:()=>JE,number3:()=>QE,number4:()=>qE,number5:()=>zE,number6:()=>jE,number7:()=>ZE,onboard_RTC_get_time:()=>oR,onboard_RTC_get_timestamp:()=>_R,onboard_RTC_set_datetime:()=>uR,onboard_RTC_settime_string:()=>aR,onboard_RTC_timestamp_totuple:()=>pR,rfid_readcontent:()=>mR,rfid_readid:()=>MR,rfid_write:()=>OR,rfid_write_return:()=>ER,sensor_LTR308:()=>lR,sensor_aht11:()=>IR,sensor_bitbot_ALS:()=>QR,sensor_button_get_presses:()=>ZR,sensor_button_is_pressed:()=>zR,sensor_button_was_pressed:()=>jR,sensor_distance_hrsc04:()=>UE,sensor_eulerangles:()=>cR,sensor_field_strength:()=>nc,sensor_get_acceleration:()=>RR,sensor_get_temperature:()=>TR,sensor_hp203:()=>hR,sensor_light:()=>ec,sensor_mixbot_get_gyro:()=>JR,sensor_mixbot_patrol_calibrate:()=>HR,sensor_mixbot_patrol_value:()=>WR,sensor_mixbot_temperature:()=>KR,sensor_mixgo_LTR308:()=>sR,sensor_mixgo_button_attachInterrupt:()=>vE,sensor_mixgo_button_get_presses:()=>PE,sensor_mixgo_button_is_pressed:()=>fE,sensor_mixgo_button_was_pressed:()=>FE,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>vR,sensor_mixgo_cc_mmc5603_get_angle:()=>PR,sensor_mixgo_cc_mmc5603_get_magnetic:()=>FR,sensor_mixgo_light:()=>WE,sensor_mixgo_nova_LTR308:()=>nR,sensor_mixgo_nova_pin_near:()=>iR,sensor_mixgo_pin_near:()=>eR,sensor_mixgo_pin_near_double:()=>tR,sensor_mixgo_pin_near_single:()=>$E,sensor_mixgo_pin_pressed:()=>yE,sensor_mixgo_touch_slide:()=>GE,sensor_mixgocar42_button_attachInterrupt:()=>bE,sensor_mixgocar42_button_get_presses:()=>XE,sensor_mixgocar42_button_is_pressed:()=>YE,sensor_mixgocar42_button_was_pressed:()=>xE,sensor_mixgocar_battery_left:()=>kR,sensor_mixgocar_pin_near:()=>UR,sensor_mixgocar_pin_near_line:()=>GR,sensor_mixgocar_pin_near_state_change:()=>wR,sensor_mixgoce_pin_pressed:()=>VE,sensor_mixgoce_temperature:()=>xR,sensor_mixgome_temperature:()=>YR,sensor_mpython_pin_pressed:()=>BE,sensor_mpython_qmi8658_get_gyro:()=>XR,sensor_mpython_qmi8658_temperature:()=>bR,sensor_onboard_compass_reset:()=>fR,sensor_onboard_mpu9250_calibrate_compass:()=>LR,sensor_onboard_mpu9250_field_strength:()=>DR,sensor_onboard_mpu9250_gesture:()=>gR,sensor_onboard_mpu9250_get_acceleration:()=>CR,sensor_onboard_mpu9250_get_gyro:()=>AR,sensor_onboard_mpu9250_get_magnetic:()=>SR,sensor_onboard_mpu9250_temperature:()=>NR,sensor_pin_near:()=>tc,sensor_pin_pressed:()=>$R,sensor_rm_acc:()=>BR,sensor_rm_battery_left:()=>VR,sensor_rm_pin_near_double:()=>yR,sensor_rtc_init:()=>rR,sensor_sound:()=>dR,sensor_temperature:()=>sc});var U={};t.r(U),t.d(U,{serial_any:()=>dc,serial_begin:()=>mc,serial_print:()=>pc,serial_print_byte:()=>_c,serial_print_hex:()=>uc,serial_println:()=>ac,serial_read_from_ai:()=>Lc,serial_readline:()=>Ic,serial_readstr:()=>lc,serial_readstr_until:()=>Tc,serial_receive_data_event:()=>rc,serial_send_to_ai:()=>Ac,serial_softserial:()=>Mc,serial_softserial_new:()=>hc,system_input:()=>Oc,system_print:()=>Ec,system_print_container:()=>Cc,system_print_end:()=>cc,system_print_inline:()=>Rc,system_print_item:()=>Sc,system_print_many:()=>gc});var w={};t.r(w),t.d(w,{Panic_with_status_code:()=>Fc,Timer_init:()=>kc,base_delay:()=>Kc,controls_delay:()=>fc,controls_delay_new:()=>Dc,controls_millis:()=>vc,controls_uname:()=>xc,raw_block:()=>Yc,reset:()=>Pc,system_bitbot_shutdown:()=>wc,system_machine_reset:()=>Uc,system_ticks_diff:()=>yc,system_timer:()=>bc,system_timer_init:()=>Vc,system_wdt_feed:()=>Gc,system_wdt_init:()=>Bc,time_ticks_diff:()=>Wc,timer:()=>Xc,timer2:()=>Hc});var k={};t.r(k),t.d(k,{WEATHER_DAILY:()=>qc,WEATHER_HOUR:()=>zc,WEATHER_NOW:()=>Qc});var H={};t.r(H),t.d(H,{actuator_extern_get_led_bright:()=>Mg,actuator_extern_get_led_state:()=>mg,actuator_extern_led_bright:()=>hg,actuator_extern_led_brightness:()=>Og,actuator_ms32006_dcmotor:()=>sg,actuator_ms32006_init:()=>ng,actuator_ms32006_stepper:()=>og,actuator_neopixel_init:()=>Eg,actuator_neopixel_rgb:()=>gg,actuator_neopixel_rgb_all:()=>Rg,actuator_neopixel_write:()=>cg,actuator_use_uart_init:()=>Cg,esp32_music_get_tempo_extern:()=>lg,esp32_music_pitch:()=>pg,esp32_music_pitch_init:()=>_g,esp32_music_pitch_with_time:()=>ag,esp32_music_play_list:()=>dg,esp32_music_reset_extern:()=>Ig,esp32_music_set_tempo_extern:()=>rg,esp32_music_stop:()=>ug,mixbot_actuator_extern_get_addr:()=>Ug,mixbot_actuator_extern_set_addr:()=>wg,mixbot_addr_extern:()=>Dg,robot_led_extern:()=>vg,robot_led_extern_get_value:()=>Yg,robot_motor_extern:()=>fg,robot_motor_extern_get_speed:()=>Fg,robot_servo_extern_absolute_run:()=>yg,robot_servo_extern_get_status:()=>xg,robot_servo_extern_relative_continue:()=>Gg,robot_servo_extern_relative_origin:()=>Vg,robot_servo_extern_relative_run:()=>Bg,robot_servo_extern_stop:()=>bg,robot_servo_extern_stop_mode:()=>Xg,robot_traffic_light_extern:()=>Pg,servo_get_angle:()=>eg,servo_get_speed:()=>ig,servo_init:()=>jc,servo_move:()=>Tg,servo_set_angle:()=>$c,servo_set_speed:()=>tg,servo_speed_360:()=>Zc,syn6288_builtin_voice:()=>Lg,syn6288_get_voice:()=>Ag,syn6288_set_voice:()=>Sg,syn6288_tts_play:()=>Ng});var W={};t.r(W),t.d(W,{actuator_dc_motor:()=>MC,actuator_dc_motor_stop:()=>mC,actuator_get_led_bright:()=>$g,actuator_get_led_state:()=>tC,actuator_led_bright:()=>Zg,actuator_led_brightness:()=>eC,actuator_mixbot_buzzer_on_off:()=>gC,actuator_mixgo_nova_mic_get:()=>NC,actuator_mixgo_nova_mic_set:()=>LC,actuator_mixgo_nova_onboard_music_pitch:()=>YC,actuator_mixgo_nova_onboard_music_stop:()=>xC,actuator_mixgo_nova_play_audio:()=>PC,actuator_mixgo_nova_play_online_audio:()=>vC,actuator_mixgo_nova_record_audio:()=>FC,actuator_mixgo_nova_voice_get:()=>fC,actuator_mixgo_nova_voice_set:()=>DC,actuator_mixgo_zero_led_color:()=>iC,actuator_onboard_neopixel_rgb:()=>uC,actuator_onboard_neopixel_rgb_all:()=>rC,actuator_onboard_neopixel_rgb_show_all_chase:()=>lC,actuator_onboard_neopixel_rgb_show_all_rainbow:()=>dC,actuator_onboard_neopixel_write:()=>aC,actuator_stepper_keep:()=>TC,actuator_stepper_stop:()=>hC,analog_keyboard_input:()=>VC,analog_keyboard_str:()=>kC,analog_mouse_input:()=>UC,bitbot_motor:()=>AC,bitbot_move:()=>CC,bitbot_stop:()=>SC,cc_number:()=>nC,esp32_music_get_tempo:()=>Hg,esp32_music_reset:()=>qg,esp32_music_set_tempo:()=>kg,esp32_onboard_music_pitch:()=>Wg,esp32_onboard_music_pitch_with_time:()=>Kg,esp32_onboard_music_play_list:()=>Qg,esp32_onboard_music_stop:()=>Jg,general_key:()=>GC,general_key_tuple:()=>HC,get_power_output:()=>bC,ledswitch:()=>jg,mixbot_motor:()=>cC,mixbot_motor_status:()=>OC,mixbot_move:()=>EC,mixbot_stop:()=>RC,mouse_key:()=>wC,number:()=>zg,rm_actuator_get_led_bright:()=>oC,rm_actuator_get_led_state:()=>_C,rm_actuator_led_bright:()=>sC,rm_actuator_led_brightness:()=>pC,rm_motor:()=>IC,set_all_power_output:()=>yC,set_power_output:()=>XC,special_key:()=>BC});var K={};t.r(K),t.d(K,{ai_sensor_20object:()=>CS,ai_sensor_ailocal_class:()=>dS,ai_sensor_ailocal_class_result:()=>IS,ai_sensor_ailocal_train:()=>lS,ai_sensor_asr_recognize:()=>OS,ai_sensor_audio_play:()=>hS,ai_sensor_audio_record:()=>TS,ai_sensor_barcode:()=>jC,ai_sensor_circle:()=>nS,ai_sensor_classifier_faces:()=>gS,ai_sensor_color:()=>pS,ai_sensor_color_chases:()=>rS,ai_sensor_color_chases_result:()=>uS,ai_sensor_config:()=>JC,ai_sensor_face:()=>cS,ai_sensor_find_20objects:()=>SS,ai_sensor_find_barcodes:()=>ZC,ai_sensor_find_circles:()=>sS,ai_sensor_find_colors:()=>aS,ai_sensor_find_licenseplates:()=>RS,ai_sensor_find_lines:()=>iS,ai_sensor_find_qrcodes:()=>zC,ai_sensor_find_rects:()=>_S,ai_sensor_find_tags:()=>tS,ai_sensor_licenseplate:()=>ES,ai_sensor_line:()=>eS,ai_sensor_qrcode:()=>qC,ai_sensor_qrcode_lite:()=>KC,ai_sensor_rect:()=>oS,ai_sensor_rgb:()=>QC,ai_sensor_tag:()=>$C,ai_sensor_use_uart_init:()=>WC,ai_sensor_yolo_recognize:()=>MS,ai_sensor_yolo_recognize_result:()=>mS});var J={};t.r(J),t.d(J,{MICROPYTHON_AI_Speech_asr:()=>NS,MICROPYTHON_AI_Speech_unit:()=>LS,MICROPYTHON_AI_client:()=>AS});var Q={};t.r(Q),t.d(Q,{mpython_blynk_app_data:()=>BS,mpython_blynk_app_notify:()=>xS,mpython_blynk_email:()=>GS,mpython_blynk_get_timers:()=>bS,mpython_blynk_on_connected:()=>PS,mpython_blynk_on_disconnected:()=>FS,mpython_blynk_run:()=>YS,mpython_blynk_sensor_data_to_app:()=>VS,mpython_blynk_set_property:()=>US,mpython_blynk_setup:()=>wS,mpython_blynk_stop_timers:()=>XS,mpython_blynk_sync_virtual:()=>fS,mpython_blynk_terminal_widget_vpin:()=>DS,mpython_blynktimer:()=>yS,mpython_blynktimer_run:()=>vS});var q={};t.r(q),t.d(q,{communicate_bluetooth_central_init:()=>CA,communicate_bluetooth_connect:()=>LA,communicate_bluetooth_disconnect:()=>NA,communicate_bluetooth_handle:()=>YA,communicate_bluetooth_is_connected:()=>fA,communicate_bluetooth_mac:()=>DA,communicate_bluetooth_peripheral_init:()=>SA,communicate_bluetooth_recv:()=>vA,communicate_bluetooth_recv_only:()=>PA,communicate_bluetooth_scan:()=>AA,communicate_bluetooth_send:()=>FA,communicate_espnow_init:()=>xA,communicate_espnow_init_new:()=>XA,communicate_i2c_available:()=>zS,communicate_i2c_init:()=>WS,communicate_i2c_master_read:()=>qS,communicate_i2c_onboard:()=>kS,communicate_i2c_read:()=>KS,communicate_i2c_scan:()=>QS,communicate_i2c_write:()=>JS,communicate_ir_recv_init:()=>IA,communicate_ir_send_init:()=>OA,communicate_ow_init:()=>pA,communicate_ow_read:()=>rA,communicate_ow_reset:()=>uA,communicate_ow_scan:()=>aA,communicate_ow_select:()=>dA,communicate_ow_write:()=>lA,communicate_spi_buffer:()=>tA,communicate_spi_init:()=>ZS,communicate_spi_onboard:()=>HS,communicate_spi_read:()=>eA,communicate_spi_read_output:()=>iA,communicate_spi_readinto:()=>nA,communicate_spi_readinto_output:()=>sA,communicate_spi_set:()=>$S,communicate_spi_write:()=>oA,communicate_spi_write_readinto:()=>_A,espnow_radio_channel:()=>UA,espnow_radio_channel_new:()=>kA,espnow_radio_on_off:()=>HA,espnow_radio_rec:()=>KA,espnow_radio_recv:()=>QA,espnow_radio_recv_certain_msg:()=>qA,espnow_radio_recv_certain_msg_new:()=>jA,espnow_radio_recv_msg:()=>JA,espnow_radio_recv_new:()=>zA,espnow_radio_send:()=>WA,espnow_radio_txpower:()=>wA,i2c_slave_onreceive:()=>jS,internal_variable:()=>TA,ir_recv_timeout:()=>mA,ir_transmit_busy:()=>gA,ir_transmit_conventional_data:()=>EA,ir_transmit_raw_code:()=>cA,ir_transmit_study_code:()=>RA,ir_whether_recv:()=>MA,lora_init:()=>ZA,lora_packet:()=>$A,lora_recv:()=>eL,lora_send:()=>tL,network_espnow_info:()=>yA,network_espnow_mac:()=>bA,network_espnow_recv:()=>VA,network_espnow_recv_handle:()=>GA,network_espnow_send:()=>BA,recv_fun:()=>hA,urequests_attribute:()=>nL,urequests_get:()=>iL,urequests_method:()=>sL});var z={};t.r(z),t.d(z,{display_animate:()=>fL,display_circle:()=>FL,display_color_seclet:()=>UL,display_draw_4strings:()=>gL,display_fill:()=>DL,display_lcd_use_i2c_init:()=>JL,display_line:()=>AL,display_line_arbitrarily:()=>CL,display_matrix_extern_bright_point:()=>hL,display_matrix_extern_bright_screen:()=>mL,display_matrix_extern_clear:()=>dL,display_matrix_extern_get_pixel:()=>TL,display_matrix_extern_get_screen_pixel:()=>ML,display_matrix_extern_image_builtins:()=>OL,display_matrix_extern_scroll_string:()=>rL,display_matrix_extern_scroll_string_delay:()=>lL,display_matrix_extern_shift:()=>IL,display_matrix_extern_show_frame_string:()=>aL,display_matrix_extern_show_frame_string_delay:()=>uL,display_matrix_extern_show_image:()=>_L,display_matrix_extern_show_image_or_string_delay:()=>pL,display_matrix_use_i2c_init:()=>oL,display_oled_drawPixel:()=>YL,display_oled_showBitmap:()=>vL,display_oled_use_i2c_init:()=>ZL,display_onoff:()=>LL,display_rect:()=>SL,display_tm1650_power:()=>XL,display_tm1650_set_brightness:()=>VL,display_tm1650_show_dot:()=>yL,display_tm1650_show_num:()=>bL,display_tm_use_i2c_init:()=>xL,display_triangle:()=>PL,display_use_i2c_init:()=>cL,extern_oled_bright_point:()=>rN,extern_oled_clear:()=>pN,extern_oled_get_pixel:()=>uN,extern_oled_hvline:()=>dN,extern_oled_line:()=>IN,extern_oled_scroll_string:()=>oN,extern_oled_scroll_string_delay:()=>_N,extern_oled_shape_rect:()=>lN,extern_oled_shift:()=>aN,extern_oled_show_frame_string:()=>nN,extern_oled_show_frame_string_delay:()=>sN,extern_oled_show_image:()=>$L,extern_oled_show_image_or_string_delay:()=>iN,extern_oled_show_image_xy:()=>tN,extern_oled_show_string:()=>eN,image_shift:()=>NL,lcd_backlight:()=>zL,lcd_clear:()=>jL,lcd_print_string:()=>qL,lcd_show_image_or_string_delay:()=>QL,matrix_extern_image_arithmetic:()=>EL,matrix_extern_image_invert:()=>RL,tft_fill:()=>WL,tft_line_arbitrarily:()=>KL,tft_scroll_string_delay:()=>HL,tft_show_frame_string_delay:()=>kL,tft_show_image_or_string_delay:()=>wL,tft_show_image_xy:()=>GL,tft_use_spi_init:()=>BL});var j={};t.r(j),t.d(j,{bitbot_display_image_create:()=>jN,display_bright_point:()=>DN,display_bright_screen:()=>FN,display_clear:()=>CN,display_get_pixel:()=>NN,display_get_screen_pixel:()=>fN,display_image_builtins:()=>RN,display_image_builtins_all:()=>cN,display_image_create:()=>gN,display_scroll_string:()=>ON,display_scroll_string_delay:()=>EN,display_shift:()=>LN,display_show_frame_string:()=>MN,display_show_frame_string_delay:()=>mN,display_show_image:()=>TN,display_show_image_or_string_delay:()=>hN,image_arithmetic:()=>SN,image_invert:()=>AN,mixbot_display_bright_screen:()=>qN,mixbot_display_get_ambientbright:()=>QN,mixbot_display_get_screen_pixel:()=>JN,mixbot_display_image_create:()=>KN,mixbot_display_rotate:()=>zN,mixgo_display_image_create_new:()=>xN,mixgome_display_font:()=>YN,mixgome_display_image_create:()=>PN,mixgomini_display_image_create:()=>vN,mpython_display_hvline:()=>HN,mpython_display_line:()=>WN,mpython_display_shape_rect:()=>kN,mpython_pbm_image:()=>XN,onboard_oled_bright_point:()=>wN,onboard_oled_scroll_string_delay:()=>UN,onboard_oled_show_frame_string_delay:()=>GN,onboard_oled_show_image:()=>bN,onboard_oled_show_image_or_string_delay:()=>BN,onboard_oled_show_image_xy:()=>yN,onboard_oled_show_string:()=>VN,onboard_tft_bright_point:()=>lD,onboard_tft_bright_screen:()=>ID,onboard_tft_clear:()=>aD,onboard_tft_clock_clear:()=>ED,onboard_tft_clock_draw:()=>OD,onboard_tft_clock_get_rtctime:()=>MD,onboard_tft_clock_init:()=>hD,onboard_tft_clock_set_time:()=>mD,onboard_tft_display_hvline:()=>_D,onboard_tft_display_line:()=>pD,onboard_tft_display_shape_circle:()=>RD,onboard_tft_display_shape_rect:()=>oD,onboard_tft_fill:()=>TD,onboard_tft_get_pixel:()=>rD,onboard_tft_get_screen_pixel:()=>dD,onboard_tft_scroll_string:()=>nD,onboard_tft_scroll_string_delay:()=>sD,onboard_tft_shift:()=>uD,onboard_tft_show_frame_string:()=>eD,onboard_tft_show_frame_string_delay:()=>iD,onboard_tft_show_image:()=>ZN,onboard_tft_show_image_or_string_delay:()=>tD,onboard_tft_show_image_xy:()=>$N});var Z={};t.r(Z),t.d(Z,{factory_block:()=>DD,factory_block_return:()=>fD,factory_block_return_with_textarea:()=>PD,factory_block_with_textarea:()=>FD,factory_callMethod_noreturn:()=>LD,factory_callMethod_return:()=>ND,factory_declare:()=>AD,factory_from_import:()=>cD,factory_function_noreturn:()=>CD,factory_function_return:()=>SD,factory_import:()=>gD,folding_block:()=>vD});var $={};t.r($),t.d($,{inout_analog_atten:()=>JD,inout_analog_read:()=>GD,inout_analog_read_init:()=>KD,inout_analog_write:()=>yD,inout_analog_write_init:()=>WD,inout_analog_write_set:()=>VD,inout_digital_init:()=>kD,inout_digital_read:()=>XD,inout_digital_write:()=>xD,inout_highlow:()=>YD,inout_pin_attachInterrupt:()=>wD,inout_pin_pressed:()=>UD,inout_pin_pressed_init:()=>QD,inout_pwm_analog_write:()=>bD,inout_pwm_analog_write_init:()=>HD,inout_pwm_analog_write_set_freq:()=>BD});var tt={};t.r(tt),t.d(tt,{IOT_EMQX_INIT_AND_CONNECT_BY_MIXLY_CODE:()=>Tf,IOT_EMQX_INIT_AND_CONNECT_BY_SHARE_CODE:()=>df,IOT_EMQX_PING:()=>hf,IOT_FORMATTING:()=>rf,IOT_FORMAT_STRING:()=>lf,IOT_MIXIO_NTP:()=>Mf,IOT_MIXIO_PUBLISH:()=>nf,IOT_MIXIO_SUBSCRIBE:()=>sf,iot_client_onboard:()=>mf,iot_http_client:()=>Of,iot_http_data:()=>Ef,iot_mixio_check:()=>pf,iot_mixio_connect:()=>ef,iot_mixio_connect_only:()=>_f,iot_mixio_disconnect:()=>of,iot_mixio_format_msg:()=>uf,iot_mixio_format_topic:()=>af,iot_mixly_key:()=>If,iot_mqtt_client:()=>Rf,iot_mqtt_data:()=>cf,iot_onenet_check:()=>$D,iot_onenet_connect:()=>zD,iot_onenet_disconnect:()=>jD,iot_onenet_publish:()=>tf,iot_onenet_publish_dict:()=>ZD,iot_wifi_connect:()=>qD});var et={};t.r(et),t.d(et,{network_ap_connect:()=>Ff,network_connect:()=>Cf,network_get_connect:()=>Af,network_get_wifi:()=>ff,network_init:()=>gf,network_is_active:()=>Df,network_open:()=>Nf,network_scan:()=>Pf,network_server:()=>vf,network_socket_accept:()=>yf,network_socket_bind:()=>xf,network_socket_close:()=>wf,network_socket_connect:()=>Xf,network_socket_init:()=>Yf,network_socket_listen:()=>bf,network_socket_receive:()=>Vf,network_socket_receive_from:()=>Gf,network_socket_send:()=>Bf,network_socket_send_to:()=>Uf,network_stop:()=>Lf,network_wifi_connect:()=>Sf,ntptime_address:()=>Jf,ntptime_time:()=>Kf,requests_attribute:()=>Hf,requests_get:()=>kf,requests_method:()=>Wf,urequests_connect_url:()=>zf,urequests_response:()=>jf,urequests_wifi_connect:()=>Qf,urequests_wifi_url:()=>qf});var it={};t.r(it),t.d(it,{HCSR04:()=>GF,PS2_Button:()=>kF,PS2_Buttons:()=>HF,PS2_Buttons_new:()=>ZF,PS2_State:()=>WF,PS2_init:()=>UF,PS2_init_new:()=>zF,PS2_stk:()=>KF,PS2_stk_new:()=>$F,PS2_vibration:()=>wF,PS2_vibration_new:()=>jF,RTC_get_time:()=>QF,RTC_set_date:()=>oF,RTC_set_datetime:()=>JF,RTC_set_time:()=>sF,esp32_s2_weather_init:()=>bF,esp32_s2_weather_rain:()=>VF,esp32_s2_weather_wd:()=>yF,esp32_s2_weather_ws:()=>BF,extern_rfid_read:()=>SF,extern_rfid_readcontent:()=>LF,extern_rfid_readid:()=>AF,extern_rfid_status:()=>fF,extern_rfid_write:()=>NF,extern_rfid_write_return:()=>DF,gnss_get_data:()=>iP,gnss_have_data:()=>nP,mixbot_sensor_extern_get_addr:()=>dP,mixbot_sensor_extern_set_addr:()=>IP,pm25_get_data:()=>eP,robot_button_extern_get_value:()=>sP,robot_color_extern_get_value:()=>uP,robot_infrared_extern_get_value:()=>_P,robot_infrared_extern_grey_get_value:()=>pP,robot_potentiometer_extern_get_value:()=>aP,robot_sonar_extern_get_value:()=>rP,robot_sonar_extern_led:()=>lP,robot_touch_extern_get_value:()=>oP,sensor_APDS9960_extern:()=>TF,sensor_LTR308_extern:()=>hF,sensor_LTR390UV_extern:()=>OF,sensor_MAX30102_extern:()=>IF,sensor_QMC5883L_extern:()=>EF,sensor_VL530LX_extern:()=>gF,sensor_aht11_extern:()=>cF,sensor_bmp:()=>rF,sensor_dht11:()=>qF,sensor_distance_hrsc04:()=>nF,sensor_hp203_extern:()=>MF,sensor_ltr381_extern:()=>mF,sensor_mixgo_extern_button_attachInterrupt:()=>eF,sensor_mixgo_extern_button_get_presses:()=>tF,sensor_mixgo_extern_button_is_pressed:()=>Zf,sensor_mixgo_extern_button_was_pressed:()=>$f,sensor_mixgo_extern_light:()=>_F,sensor_mixgo_extern_pin_near:()=>aF,sensor_mixgo_extern_sound:()=>pF,sensor_mixgoce_hot_wheel_degrees:()=>XF,sensor_mixgoce_hot_wheel_is_touched:()=>xF,sensor_mpu9250_attachGestureInterrupt:()=>iF,sensor_rtc_init:()=>uF,sensor_sht:()=>lF,sensor_shtc3_extern:()=>RF,sensor_use_i2c_init:()=>dF,sensor_use_spi_init:()=>CF,sensor_use_uart_init:()=>tP,sensor_weather_solo_init:()=>TP,sensor_weather_solo_rain:()=>mP,sensor_weather_solo_wd:()=>hP,sensor_weather_solo_ws:()=>MP,weather_data:()=>FF,weather_have_data:()=>PF,weather_set_label:()=>YF,weather_uart_mixio:()=>vF});var nt={};t.r(nt),t.d(nt,{HCSR04:()=>LP,bitbot_als_num:()=>Hv,dht11:()=>Zv,number1:()=>NP,number2:()=>DP,number3:()=>fP,number4:()=>FP,number5:()=>PP,number6:()=>vP,number7:()=>YP,onboard_RTC_get_time:()=>gv,onboard_RTC_get_timestamp:()=>Cv,onboard_RTC_set_datetime:()=>Rv,onboard_RTC_settime_string:()=>cv,onboard_RTC_timestamp_totuple:()=>Sv,rfid_readcontent:()=>QP,rfid_readid:()=>JP,rfid_write:()=>qP,rfid_write_return:()=>zP,sensor_LTR308:()=>wP,sensor_adxl345_get_acceleration:()=>ov,sensor_aht11:()=>WP,sensor_bitbot_ALS:()=>kv,sensor_button_get_presses:()=>Jv,sensor_button_is_pressed:()=>Wv,sensor_button_was_pressed:()=>Kv,sensor_compass_reset:()=>lv,sensor_ds18x20:()=>GP,sensor_eulerangles:()=>ZP,sensor_get_acceleration:()=>jP,sensor_get_temperature:()=>KP,sensor_hp203:()=>HP,sensor_light:()=>jv,sensor_lm35:()=>UP,sensor_mixbot_get_gyro:()=>wv,sensor_mixbot_patrol_calibrate:()=>Bv,sensor_mixbot_patrol_value:()=>Gv,sensor_mixbot_temperature:()=>Uv,sensor_mixgo_LTR308:()=>VP,sensor_mixgo_button_attachInterrupt:()=>cP,sensor_mixgo_button_get_presses:()=>RP,sensor_mixgo_button_is_pressed:()=>OP,sensor_mixgo_button_was_pressed:()=>EP,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Nv,sensor_mixgo_cc_mmc5603_get_angle:()=>Lv,sensor_mixgo_cc_mmc5603_get_magnetic:()=>Av,sensor_mixgo_light:()=>zv,sensor_mixgo_nova_LTR308:()=>BP,sensor_mixgo_nova_pin_near:()=>yP,sensor_mixgo_pin_near:()=>bP,sensor_mixgo_pin_near_double:()=>XP,sensor_mixgo_pin_near_single:()=>xP,sensor_mixgo_pin_pressed:()=>nv,sensor_mixgo_touch_slide:()=>iv,sensor_mixgocar42_button_attachInterrupt:()=>AP,sensor_mixgocar42_button_get_presses:()=>SP,sensor_mixgocar42_button_is_pressed:()=>gP,sensor_mixgocar42_button_was_pressed:()=>CP,sensor_mixgocar_battery_left:()=>Vv,sensor_mixgocar_pin_near:()=>bv,sensor_mixgocar_pin_near_line:()=>Xv,sensor_mixgocar_pin_near_state_change:()=>yv,sensor_mixgoce_pin_pressed:()=>ev,sensor_mixgoce_temperature:()=>fv,sensor_mixgome_temperature:()=>Dv,sensor_mpu9250_calibrate_compass:()=>av,sensor_mpu9250_field_strength:()=>rv,sensor_mpu9250_gesture:()=>$P,sensor_mpu9250_get_acceleration:()=>tv,sensor_mpu9250_get_gyro:()=>pv,sensor_mpu9250_get_magnetic:()=>_v,sensor_mpu9250_temperature:()=>uv,sensor_mpython_pin_pressed:()=>sv,sensor_mpython_qmi8658_get_gyro:()=>Fv,sensor_mpython_qmi8658_temperature:()=>Pv,sensor_onboard_compass_reset:()=>Ev,sensor_onboard_mpu9250_calibrate_compass:()=>Mv,sensor_onboard_mpu9250_field_strength:()=>Ov,sensor_onboard_mpu9250_gesture:()=>dv,sensor_onboard_mpu9250_get_acceleration:()=>Iv,sensor_onboard_mpu9250_get_gyro:()=>hv,sensor_onboard_mpu9250_get_magnetic:()=>Tv,sensor_onboard_mpu9250_temperature:()=>mv,sensor_pin_near:()=>qv,sensor_pin_pressed:()=>Qv,sensor_rm_acc:()=>xv,sensor_rm_battery_left:()=>Yv,sensor_rm_pin_near_double:()=>vv,sensor_sound:()=>kP});var st={};t.r(st),t.d(st,{serial_any:()=>nY,serial_print:()=>$v,serial_print_byte:()=>tY,serial_print_hex:()=>iY,serial_println:()=>eY,serial_read_from_ai:()=>TY,serial_readline:()=>oY,serial_readstr:()=>sY,serial_send_to_ai:()=>IY,serial_softserial:()=>_Y,serial_softserial_new:()=>pY,system_input:()=>aY,system_print:()=>uY,system_print_end:()=>lY,system_print_inline:()=>rY,system_print_many:()=>dY});var ot={};t.r(ot),t.d(ot,{Panic_with_status_code:()=>LY,Timer_init:()=>UY,base_delay:()=>HY,controls_delay:()=>PY,controls_delay_new:()=>vY,controls_end_program:()=>DY,controls_millis:()=>NY,controls_uname:()=>FY,reset:()=>fY,system_bitbot_shutdown:()=>GY,system_device_name:()=>SY,system_device_serial_number:()=>AY,system_event_bus_source:()=>gY,system_event_bus_value:()=>CY,system_machine_reset:()=>BY,system_on_event:()=>EY,system_raise_event:()=>OY,system_reset:()=>MY,system_run_in_background:()=>hY,system_ticks_diff:()=>XY,system_timer:()=>xY,system_timer_init:()=>bY,system_timestamp:()=>RY,system_value:()=>cY,system_wait:()=>mY,system_wdt_feed:()=>VY,system_wdt_init:()=>yY,time_ticks_diff:()=>kY,timer:()=>YY,timer2:()=>wY});var _t={};t.r(_t),t.d(_t,{WEATHER_DAILY:()=>KY,WEATHER_HOUR:()=>JY,WEATHER_NOW:()=>WY});var pt={};t.r(pt),t.d(pt,{analog_input:()=>ox,analog_output:()=>px,espnow_channel:()=>ix,haskylens_model:()=>nx,i2c_A_pin:()=>ax,i2c_B_pin:()=>ux,pins_analog:()=>Tx,pins_analog_pin:()=>hx,pins_axis:()=>Px,pins_brightness:()=>vx,pins_builtinimg:()=>Sx,pins_builtinimg_extern:()=>Ax,pins_button:()=>Ox,pins_dac:()=>Mx,pins_dac_pin:()=>mx,pins_digital:()=>jY,pins_digital_dot:()=>Gx,pins_digital_pin:()=>ZY,pins_exlcdh:()=>fx,pins_exlcdv:()=>Fx,pins_imglist:()=>Lx,pins_input_pin:()=>$Y,pins_mpython_touch:()=>ex,pins_one_more:()=>Bx,pins_output_pin:()=>tx,pins_playlist:()=>Nx,pins_playlist_extern:()=>Dx,pins_pwm:()=>Ex,pins_pwm_pin:()=>Rx,pins_radio_datarate:()=>Vx,pins_radio_power:()=>yx,pins_serial:()=>Cx,pins_tone_notes:()=>bx,pins_touch:()=>gx,pins_touch_pin:()=>cx,pins_tts_bgmusic:()=>Xx,pins_tts_builtin_music:()=>xx,pins_tts_voice:()=>Yx,pwm_input:()=>sx,pwm_output:()=>_x,spi_A_pin:()=>rx,spi_B_pin:()=>lx,spi_C_pin:()=>dx,spi_D_pin:()=>Ix});var at={};t.r(at),t.d(at,{espnow_channel:()=>zx,haskylens_model:()=>jx,pins_analog:()=>Jx,pins_analog_pin:()=>Kx,pins_axis:()=>rX,pins_brightness:()=>IX,pins_builtinimg:()=>oX,pins_builtinimg_extern:()=>_X,pins_button:()=>wx,pins_dac:()=>tX,pins_dac_pin:()=>$x,pins_digital:()=>Ux,pins_digital_dot:()=>cX,pins_digital_pin:()=>kx,pins_exlcdh:()=>lX,pins_exlcdv:()=>dX,pins_imglist:()=>pX,pins_input_pin:()=>Hx,pins_interrupt:()=>nX,pins_mpython_touch:()=>Zx,pins_one_more:()=>RX,pins_output_pin:()=>Wx,pins_playlist:()=>aX,pins_playlist_extern:()=>uX,pins_pwm:()=>qx,pins_pwm_pin:()=>Qx,pins_radio_datarate:()=>EX,pins_radio_power:()=>OX,pins_serial:()=>sX,pins_tone_notes:()=>mX,pins_touch:()=>iX,pins_touch_pin:()=>eX,pins_tts_bgmusic:()=>MX,pins_tts_builtin_music:()=>hX,pins_tts_voice:()=>TX});const ut=Blockly,rt=Mixly,lt={NAME_TYPE:"VARIABLE",allVariables:function(t){var e;if(t.getDescendants)e=t.getDescendants();else{if(!t.getAllBlocks)throw"Not Block or Workspace: "+t;e=t.getAllBlocks()}for(var i=Object.create(null),n=0;n1&&(_+=n)):i=_}else i="i";return i}},dt=lt; /** * @license * Visual Blocks Editor @@ -18,4 +18,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -class It{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ut.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(ut.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ut.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(ut.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Dt={init:function(){this.setColour(gt),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PYTHON_RANGE).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},ft={init:function(){this.setColour(gt),this.appendValueInput("LIST").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(ut.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return ut.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ft={init:function(){this.setColour(gt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new ut.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ut.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Pt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ut.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},vt={init:function(){this.setColour(gt);var t=new ut.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Yt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ut.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ut.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},xt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ut.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ut.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Ft.OPERATORS=[[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],vt.OPERATORS=[[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Xt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},bt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},yt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(ut.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Vt={init:function(){this.setColour(gt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Bt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Ut={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Gt={init:function(){this.jsonInit({message0:ut.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:gt,tooltip:ut.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:ut.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},wt={init:function(){this.setColour(gt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_STAT),this.setOutput(!0)}},kt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Ht={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},Wt={init:function(){this.appendDummyInput().appendField(ut.Msg.CONTROLS_REPEAT_TITLE_REPEAT+ut.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(ut.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new ut.FieldDropdown([[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(gt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Kt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Jt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},Qt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},qt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_GET_UNIQUE_IDEN)}},zt=230;ut.FieldTextInput.math_number_validator=function(t){return String(t)},ut.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const jt={init:function(){this.setColour(zt),this.appendDummyInput().appendField(new ut.FieldTextInput("0",ut.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MATH_NUMBER_TOOLTIP)}},Zt={init:function(){this.setColour(zt);this.appendDummyInput("").appendField(ut.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ut.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},$t={init:function(){this.setColour(zt);this.appendDummyInput("").appendField(ut.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ut.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},te={init:function(){this.setColour(zt),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ut.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ut.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ut.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ee={init:function(){this.setColour(zt),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ut.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ut.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ut.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ie={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new ut.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},ne={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new ut.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:ut.Msg.MATH_TRIG_TOOLTIP_SIN,COS:ut.Msg.MATH_TRIG_TOOLTIP_COS,TAN:ut.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:ut.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:ut.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:ut.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:ut.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},se={init:function(){var t=[[ut.Msg.MATH_BIN,"bin"],[ut.Msg.MATH_OCT,"oct"],[ut.Msg.MATH_HEX,"hex"]];this.setColour(zt),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new ut.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:ut.Msg.MATH_DEC_TOOLTIP_BIN,oct:ut.Msg.MATH_DEC_TOOLTIP_OCT,hex:ut.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},oe={init:function(){var t=[[ut.Msg.LANG_MATH_TO_ROUND,"round"],[ut.Msg.LANG_MATH_TO_CEIL,"ceil"],[ut.Msg.LANG_MATH_TO_FLOOR,"floor"],[ut.Msg.MATH_ABS,"fabs"],[ut.Msg.MATH_SQRT,"sqrt"]];this.setColour(zt),this.appendValueInput("A").setCheck(Number).appendField(new ut.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:ut.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:ut.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:ut.Msg.MATH_SINGLE_TOOLTIP_SQ,round:ut.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:ut.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:ut.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},_e={init:function(){var t=[[ut.Msg.MIXLY_MAX,"max"],[ut.Msg.MIXLY_MIN,"min"]];this.setColour(zt),this.appendValueInput("A").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(ut.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:ut.Msg.MIXLY_TOOLTIP_MATH_MAX,min:ut.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},pe={init:function(){var t=[[ut.Msg.MATH_TWO,"two"],[ut.Msg.MATH_EIGHT,"eight"],[ut.Msg.MATH_TEN,"ten"],[ut.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(zt),this.appendDummyInput("").appendField(ut.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new ut.FieldDropdown(t),"OP").appendField(ut.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MATH_ZHW).appendField(new ut.FieldDropdown(t),"OP2").appendField(ut.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:ut.Msg.MATH_Before_two,eight:ut.Msg.MATH_Before_eight,ten:ut.Msg.MATH_Before_ten,sixteen:ut.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:ut.Msg.MATH_Behind_two,eight:ut.Msg.MATH_Behind_eight,ten:ut.Msg.MATH_Behind_ten,sixteen:ut.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},ae={init:function(){var t=[[ut.Msg.LANG_MATH_INT,"int"],[ut.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(zt),this.setOutput(!0,Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_RANDOM).appendField(new ut.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:ut.Msg.LANG_MATH_INT,float:ut.Msg.LANG_MATH_FLOAT_RANDOM};return ut.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},ue={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(ut.Msg.MATH_CONSTRAIN_TOOLTIP)}},re={init:function(){this.setColour(zt),this.appendValueInput("NUM",Number).appendField(ut.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(ut.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(ut.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_MATH_MAP)}},le={init:function(){this.setColour(zt),this.appendDummyInput().appendField(new ut.FieldTextInput("0",ut.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(ut.Msg.MATH_NUMBER_TOOLTIP)}},de={init:function(){this.setColour(zt),this.appendValueInput("NUM").setCheck(Number).appendField(ut.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ie={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MATH_ROUND).appendField(ut.Msg.TEXT_KEEP),this.appendDummyInput().appendField(ut.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(ut.Msg.MATH_ROUND_NEW_TOOLTIP)}},Te={init:function(){var t=[[ut.Msg.MIXLY_TO_INT,"int"],[ut.Msg.MIXLY_TO_FLOAT,"float"],[ut.Msg.MIXLY_TO_BITES,"b"]];this.setColour(zt),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ut.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:ut.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:ut.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},he={init:function(){var t=[[ut.Msg.MIXLY_TO_INT,"int"],[ut.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(zt),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ut.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:ut.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Me=re,me=160,Oe={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ut.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ut.FieldImage(e,12,12,'"')}},Ee={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ut.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ut.FieldImage(e,12,12,'"')}};ut.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Re={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldTextInput("",ut.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(ut.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new ut.FieldImage(e,7,12,'"')}},ce={init:function(){this.setColour(me),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(ut.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ge={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Ce={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(String).appendField(ut.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Se={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ae={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Le={init:function(){this.WHERE_OPTIONS=[[ut.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ut.Msg.TEXT_GET_INDEX_RANDOM+1+ut.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.LISTS_GET_INDEX_GET,"MODE"),ut.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(ut.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+ut.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",ut.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:ut.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:ut.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:ut.Msg.TEXT_GET_INDEX_RANDOM};return ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+ut.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==ut.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),ut.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(ut.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new ut.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),ut.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ne={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(ut.Msg.LISTS_GET_INDEX_GET+" "+ut.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(ut.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+ut.Msg.LISTS_GET_INDEX_FROM_START+"n"+ut.Msg.TEXT_CHARAT2)}},De={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(ut.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(ut.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},fe={init:function(){this.WHERE_OPTIONS_1=[[ut.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ut.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[ut.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[ut.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(ut.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==ut.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==ut.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),ut.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(ut.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new ut.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Fe={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(ut.Msg.LISTS_GET_INDEX_GET+" "+ut.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(ut.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(ut.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(ut.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Pe={init:function(){var t=[[ut.Msg.MIXLY_EQUALS,"==="],[ut.Msg.MIXLY_STARTSWITH,"startswith"],[ut.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(me),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new ut.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},ve={init:function(){this.setColour(me),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(ut.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_COMPARETO_HELP)}},Ye={init:function(){var t=[[ut.Msg.TEXT_UPPER,"upper"],[ut.Msg.TEXT_TITLE,"title"],[ut.Msg.TEXT_CAPITALIZE,"capitalize"],[ut.Msg.TEXT_SWAPCASE,"swapcase"],[ut.Msg.TEXT_LOWER,"lower"]];this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ut.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:ut.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:ut.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:ut.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:ut.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:ut.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},xe={init:function(){var t=[[ut.Msg.TEXT_LJUST,"ljust"],[ut.Msg.TEXT_CENTER,"center"],[ut.Msg.TEXT_RJUST,"rjust"]];this.setColour(me),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(ut.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(ut.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},Xe={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(ut.Msg.MIXLY_MID+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(ut.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},be={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},ye={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(ut.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(ut.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ve={init:function(){this.setColour(me),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(ut.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(ut.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Be={init:function(){var t=[[ut.Msg.TEXT_TRIM_BOTH,"strip"],[ut.Msg.TEXT_TRIM_LEFT,"lstrip"],[ut.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(me),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ut.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(ut.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:ut.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:ut.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:ut.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Ue={init:function(){this.setColour(me),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new ut.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ut.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},bi={init:function(){this.setColour(xi),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},yi={init:function(){this.setColour(xi),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Vi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_KEYS),this.setTooltip(ut.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Bi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(ut.Msg.DICTS_GET_TOOLTIP)}},Ui={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(ut.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(ut.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Gi={init:function(){this.setColour(xi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(ut.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},wi={init:function(){this.setColour(xi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_DELETE_TOOLTIP)}},ki={init:function(){this.setColour(xi),this.appendValueInput("DICT2").setCheck("Dict").appendField(ut.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(ut.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MID),this.setTooltip(ut.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_CLEAR),this.setTooltip(ut.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_ITEMS),this.setTooltip(ut.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Ki={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_VALUES),this.setTooltip(ut.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_LENGTH),this.setTooltip(ut.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},Qi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_DELDICT),this.setTooltip(ut.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qi={init:function(){this.MODE=[[ut.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[ut.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(ut.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=ut.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=ut.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==ut.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new ut.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},zi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.setTooltip(ut.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},ji={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(ut.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_SETDEFAULT_TOOLTIP)}},Zi={init:function(){this.setColour(xi),this.appendDummyInput("").appendField(new ut.FieldLabel(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new ut.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},$i={init:function(){this.setColour(xi),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},tn={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TO_JSON),this.setTooltip(ut.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},en={init:function(){this.setColour(xi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(ut.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},nn=210,sn={init:function(){var t=ut.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:ut.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:ut.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:ut.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:ut.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:ut.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:ut.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},on={init:function(){var t=ut.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=ut.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new ut.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},_n={init:function(){var t=[[ut.Msg.LOGIC_OPERATION_AND,"AND"],[ut.Msg.LOGIC_OPERATION_OR,"OR"],[ut.Msg.LOGIC_OPERATION_NOR,"NOR"],[ut.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:ut.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:ut.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:ut.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:ut.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},pn={init:function(){this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(ut.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(ut.Msg.LOGIC_NEGATE_TOOLTIP)}},an={init:function(){var t=[[ut.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[ut.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new ut.FieldDropdown(t),"BOOL"),this.setTooltip(ut.Msg.LOGIC_BOOLEAN_TOOLTIP)}},un={init:function(){this.setColour(nn),this.setOutput(!0),this.appendDummyInput().appendField(ut.Msg.LOGIC_NULL),this.setTooltip(ut.Msg.LOGIC_NULL_TOOLTIP)}},rn={init:function(){this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").appendField(ut.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(ut.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},ln={init:function(){var t=[[ut.Msg.TEXT_APPEND_TO,"in"],[ut.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new ut.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(ut.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.IN)}},dn={init:function(){var t=[[ut.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[ut.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},In={init:function(){this.setColour(nn),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Tn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(ut.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},hn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Mn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG,_=ut.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},mn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(ut.Msg.MIXPY_TEXT_ENCODE).appendField(new ut.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG,_=ut.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},On={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},En={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Rn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},cn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ut.Msg.MICROBIT_PYTHON_TYPE)}},gn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.HTML_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},An={init:function(){this.setColour(0),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const Ln={init:function(){this.setColour(0),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Fn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Pn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+ut.Msg.MIXLY_ESP32_SET+{mkdir:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(ut.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.HTML_FILE,"isfile"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Xn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(ut.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},bn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(ut.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},yn={};yn.NAME_TYPE=ut.PROCEDURE_CATEGORY_NAME,yn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(ut.Msg.MIXLY_AIP_ATTR).setAlign(ut.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Ys={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_FORM_CONTENT).appendField(new ut.FieldDropdown([[ut.Msg.HTML_TEXT,"text"],[ut.Msg.HTML_EMAIL,"email"],[ut.Msg.HTML_NUMBER,"number"],[ut.Msg.HTML_PASSWORD,"password"],[ut.Msg.HTML_CHECKBOX,"checkbox"],[ut.Msg.HTML_RADIOBUTTON,"radiobutton"],[ut.Msg.HTML_BUTTON,"button"],[ut.Msg.HTML_COLOUR,"colour"],[ut.Msg.HTML_DATE,"date"],[ut.Msg.HTML_LOCALTIME,"local time"],[ut.Msg.HTML_FILE,"file"],[ut.Msg.HTML_HIDDEN,"hidden"],[ut.Msg.HTML_IMAGE,"image"],[ut.Msg.HTML_MONTH,"month"],[ut.Msg.HTML_RANGE,"range"],[ut.Msg.HTML_RESET,"reset"],[ut.Msg.HTML_SEARCH,"search"],[ut.Msg.HTML_SUBMIT,"submit"],[ut.Msg.HTML_TELEPHONENUMBER,"telephone number"],[ut.Msg.HTML_TIME,"time"],[ut.Msg.HTML_URL,"url"],[ut.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(ut.Msg.HTML_NAME).appendField(new ut.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(ut.Msg.HTML_VALUE).appendField(new ut.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(ut.Msg.MIXLY_AIP_ATTR).setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},xs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(new ut.FieldTextInput("property"),"KEY").appendField(":").appendField(new ut.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Xs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(new ut.FieldTextInput("property"),"KEY").appendField(":").appendField(new ut.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_TEXT).appendField(new ut.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ys=160,Vs={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new ut.FieldTable(""),"TEXT")}},Bs={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new ut.FieldMultilineInput(""),"TEXT")}},Us={init:function(){this.setColour(ys),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new ut.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Gs={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},ws={init:function(){this.setColour(ys),this.appendDummyInput().appendTitle("Comment:").appendTitle(new ut.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},ks={init:function(){this.setColour(ys),this.appendValueInput("VALUE").appendField(ut.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Hs={init:function(){this.setColour(ys),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ut.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(ut.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=ut.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},ut.isNumber(n)&&ut.isNumber(s)&&ut.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const Dp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},fp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Fp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Pp=function(t,e){return["None",e.ORDER_ATOMIC]},vp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Yp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},xp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Xp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},bp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},yp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Vp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Bp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Up=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Gp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},wp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},kp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Hp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},Wp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},Kp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},Jp=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},Qp=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},qp=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},jp=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},Zp=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},$p=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},ta=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},ea=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},ia=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},na=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},sa=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},oa=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),ut.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Ba=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Ua=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},Ga=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},wa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},ka=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Ha=function(t,e){return'"},Wa=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Ka=function(){return this.getFieldValue("TEXT")+"\n"},Ja=function(t){return t.getFieldValue("TEXT")+"\n"},Qa=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},qa=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},za=function(){return""},ja=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},Za=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},tu.scrubNakedValue=function(t){return t+"\n"},tu.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},tu.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},tu.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=ut.utils.string.wrap(o,tu.COMMENT_WRAP-3),n+=tu.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const eu="#74A55B",iu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_RGB_PIN_COUNT)}},nu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},su={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},ou={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},_u={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ut.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ut.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},pu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},au={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_RESET)}},uu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ru={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},lu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},du={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Iu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Tu={init:function(){this.setColour(eu),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_MOVE)}},Mu={init:function(){this.setColour(eu),this.appendValueInput("VAR").appendField("360°"+ut.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SETTING+ut.Msg.blockpy_turtle_rotate+ut.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},mu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("180°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_MOVE)}},Ou={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("360°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Eu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("180°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ru={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("360°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},cu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new ut.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(ut.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},gu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ut.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[ut.Msg.MOTOR_N,"ms32006.MOT_N"],[ut.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Cu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new ut.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ut.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Su={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_RGB_PIN_COUNT)}},Au={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},Lu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Nu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_WRI)}},Du={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ut.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+ut.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},fu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Fu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Pu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(ut.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},vu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(ut.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Yu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},xu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Xu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},bu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_TRAFFIC_LIGHT).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LISTS_SET_INDEX_SET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_WHITE,"W"],[ut.Msg.COLOUR_RGB_RED,"R"],[ut.Msg.COLOUR_RGB_YELLOW,"Y"],[ut.Msg.COLOUR_RGB_GREEN,"G"],[ut.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_WHITE,"W"],[ut.Msg.COLOUR_RGB_RED,"R"],[ut.Msg.COLOUR_RGB_YELLOW,"Y"],[ut.Msg.COLOUR_RGB_GREEN,"G"],[ut.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Bu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[ut.Msg.MIXLY_SPEED,"[1]"],[ut.Msg.MATH_SINGLE_OP_ABSOLUTE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[ut.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[ut.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[ut.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Uu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Gu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MATH_SINGLE_OP_ABSOLUTE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"0"],[ut.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[ut.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ku={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField("("+ut.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},Wu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField("("+ut.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"0"],[ut.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MOTOR,"ext_motor"],[ut.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ut.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ut.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ut.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ut.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ut.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ut.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MOTOR,"ext_motor"],[ut.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ut.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ut.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ut.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ut.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ut.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ut.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu="#6C9858",qu={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},zu={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_ON,"1"],[ut.Msg.MIXLY_ESP32_OFF,"0"],[ut.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},ju={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},Zu={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},$u={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},tr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_BUILDIN_LED+ut.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},er={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(ut.Msg.MIXLY_LCD_SETCOLOR).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LIGHT_OFF,"0"],[ut.Msg.MIXLY_LIGHT_RED,"1"],[ut.Msg.MIXLY_LIGHT_GREEN,"2"],[ut.Msg.MIXLY_LIGHT_BLUE,"3"],[ut.Msg.MIXLY_LIGHT_YELLOW,"4"],[ut.Msg.MIXLY_LIGHT_CYAN,"5"],[ut.Msg.MIXLY_LIGHT_PURPLE,"6"],[ut.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},ir={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},nr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},sr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},or={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_BUILDIN_LED+ut.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},_r={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},pr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},ar={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},ur={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},rr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.PYTHON_RANGE_STEP).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},lr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_WRI)}},dr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Ir={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Tr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.PYTHON_RANGE_STEP).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},hr={init:function(){this.setColour(Qu),this.appendValueInput("TICKS").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ut.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ut.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Mr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},mr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_RESET)}},Or={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Er={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Rr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cr={init:function(){this.setColour(Qu),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},gr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"],[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField("MixGo Car").appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Sr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField("MixGo Car").appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Ar={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([[ut.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ut.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Lr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([[ut.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ut.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_STOP).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},Dr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ut.Msg.MIXLY_SPEED,"SPEED"],[ut.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},fr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.MIXLY_MOTOR).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"1"],[ut.Msg.TEXT_TRIM_RIGHT,"2"],[ut.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ut.Msg.MIXLY_SPEED,"SPEED"],[ut.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Pr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(ut.Msg.MIXLY_MOTOR).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"0"],[ut.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"],[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(Qu),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},br={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},yr={init:function(){this.setColour(Qu),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_MIXBOT_BUZZER+ut.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},Vr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_MIXBOT_BUZZER+ut.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},Br={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_RECORD_AUDIO).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(ut.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_PLAY_AUDIO).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},kr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.LISTS_SET_INDEX_SET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},Wr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT+ut.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},Kr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.LISTS_SET_INDEX_SET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.MIXLY_ALL+ut.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(ut.ALIGN_RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT+ut.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Jr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special").appendField(ut.Msg.MIXLY_SPECIAL_KEY),this.appendValueInput("general").appendField(ut.Msg.MIXLY_GENERAL_KEY),this.appendDummyInput().appendField(ut.Msg.MIXLY_RELEASE).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT)}},Qr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPECIAL_KEY0,"0"],[ut.Msg.MIXLY_SPECIAL_KEY1,"1"],[ut.Msg.MIXLY_SPECIAL_KEY2,"2"],[ut.Msg.MIXLY_SPECIAL_KEY1,"4"],[ut.Msg.MIXLY_SPECIAL_KEY8,"8"],[ut.Msg.MIXLY_SPECIAL_KEY16,"16"],[ut.Msg.MIXLY_SPECIAL_KEY32,"32"],[ut.Msg.MIXLY_SPECIAL_KEY64,"64"],[ut.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},qr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["ONE","0x1E"],["TWO","0x1F"],["THREE","0x20"],["FOUR","0x21"],["FIVE","0x22"],["SIX","0x23"],["SEVEN","0x24"],["EIGHT","0x25"],["NINE","0x26"],["ZERO","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["MINUS","0x2D"],["EQUAL","0x2E"],["LEFT_BRACE","0x2F"],["RIGHT_BRACE","0x30"],["BACKSLASH","0x31"],["SEMICOLON","0x33"],["QUOTE","0x34"],["TILDE","0x35"],["COMMA","0x36"],["PERIOD","0x37"],["SLASH","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["NUMPAD_SLASH","0x54"],["NUMPAD_ASTERISK","0x55"],["NUMPAD_MINUS","0x56"],["NUMPAD_PLUS","0x57"],["NUMPAD_ENTER","0x58"],["NUMPAD_1","0x59"],["NUMPAD_2","0x5A"],["NUMPAD_3","0x5B"],["NUMPAD_4","0x5C"],["NUMPAD_5","0x5D"],["NUMPAD_6","0x5E"],["NUMPAD_7","0x5F"],["NUMPAD_8","0x60"],["NUMPAD_9","0x61"],["NUMPAD_0","0x62"],["NUMPAD_PERIOD","0x63"]]),"op"),this.setOutput(!0)}},zr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.ANALOG+ut.Msg.MIXLY_MOUSE_INPUT),this.appendValueInput("key").appendField(ut.Msg.MIXLY_MOUSE_KEYS),this.appendValueInput("x").appendField(ut.Msg.MIXLY_X_Y_CHANGES+"x:"),this.appendValueInput("y").appendField("y:"),this.appendValueInput("wheel").appendField(ut.Msg.MIXLY_WHEEL_CHANGES),this.appendDummyInput().appendField(ut.Msg.MIXLY_RELEASE).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT)}},jr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPECIAL_KEY0,"0"],[ut.Msg.MIXLY_MOUSE_LEFT_KEY,"1"],[ut.Msg.MIXLY_MOUSE_RIGHT_KEY,"2"],[ut.Msg.MIXLY_MOUSE_MID_KEY,"4"]]),"op"),this.setOutput(!0)}},Zr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("str").appendField(ut.Msg.MIXLY_STR_PRINT),this.appendValueInput("time").appendField(ut.Msg.MIXLY_STR_PRINT_TIME_DELAY),this.appendDummyInput().appendField("ms"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},$r="#90A244",tl={init:function(){this.setColour($r),this.appendDummyInput("").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ut.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+"MixGo AI"+ut.Msg.MSG.catSensor),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},el={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_QR_CODE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.OLED_STRING,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_QR_CODE_TOOLTIP)}},il={init:function(){this.setColour($r),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_QR_CODE+ut.Msg.MIXPY_OBJECT,"qrcode"],[ut.Msg.MIXLY_BAR_CODE+ut.Msg.MIXPY_OBJECT,"barcode"],[ut.Msg.MIXLY_TAG+ut.Msg.MIXPY_OBJECT,"apriltag"]]),"TYPE"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ANALYSIS_RESULT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip()}},nl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_QR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[qrcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_QR_CODE_RECOGNTITION_TOOLTIP)}},sl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendValueInput("RX").appendField(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_ETHERNET_CLINET_PORT).appendField("RX#").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("TX").appendField("TX#").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().appendField(ut.Msg.SOFT_RESET+ut.Msg.MIXLY_ESP32_RGB_WRITE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},ol={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendValueInput("led1").appendField(ut.Msg.MIXLY_SETTING).appendField("RGB1").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("led2").appendField("RGB2").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CONFIG_TOOLTIP)}},_l={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_BAR_CODE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.OLED_STRING,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_BAR_CODE_TOOLTIP)}},pl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_BAR_CODE_RECOGNTITION),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[barcode]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_BAR_CODE_RECOGNTITION_TOOLTIP)}},al={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TAG+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.OLED_STRING,"info1"],[ut.Msg.blockpy_turtle_rotate+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"info2"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_TAG_TOOLTIP)}},ul={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_TAG_RECOGNTITION),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[tag]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_TAG_RECOGNTITION_TOOLTIP)}},rl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_LINE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LINE_ANGLE,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-x1x2y1y2","rect"],["x1"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["x2"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["y1"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["y2"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LINE_TOOLTIP)}},ll={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_LINE_RECOGNTITION),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_LINE_RECOGNTITION_ANGLE).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ut.Msg.MIXLY_LINE_RECOGNTITION_SLOPE).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[line]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LINE_RECOGNTITION_TOOLTIP)}},dl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_CIRCLE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_CIRCLE_AREA,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},Il={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_CIRCLE_RECOGNTITION),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_CIRCLE_RECOGNTITION_MIN).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ut.Msg.MIXLY_CIRCLE_RECOGNTITION_MAX).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[circle]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Tl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_RECT+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_CIRCLE_AREA,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_RECT_TOOLTIP)}},hl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_RECT_RECOGNTITION),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[rect]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Ml={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["RGB"+ut.Msg.HTML_COLOUR,"[0]"],["LAB"+ut.Msg.MIXLY_COLOR_LAB,"[1]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_COLOR_TOOLTIP)}},ml={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_RECOGNTITION),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"color"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_COLOR_RECOGNTITION_TOOLTIP)}},Ol={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_COLOR_CHASE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_CIRCLE_AREA,"info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CIRCLE_TOOLTIP)}},El={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_CHASE),this.appendValueInput("VAR1").appendField("LAB"+ut.Msg.MIXLY_COLOR_LAB).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_ESP32_THRESHOLD).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ut.Msg.MIXLY_COLOR_CHASE_MERGE).setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[colors]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_CIRCLE_RECOGNTITION_TOOLTIP)}},Rl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_LOCAL_TRAIN),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_OBJECT_LIST).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS+ut.Msg.MIXLY_MODEL_NAME).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR3").appendField(ut.Msg.MIXLY_TRAIN_TIME).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ut.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LOCAL_TRAIN_TOOLTIP)}},cl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_LOCAL_CLASS),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_OBJECT_LIST).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_MODEL_NAME).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ut.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_MODEL_NAME_TOOLTIP)}},gl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_LOCAL_CLASS+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["ID","info1"],[ut.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LOCAL_CLASS_TOOLTIP)}},Cl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MUSIC_RECORD),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXPY_AI_AUDIO_TIME).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_MUSIC_RECORD_TOOLTIP)}},Sl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MUSIC_PLAY),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_MP3_VOL).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Al={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_YOLO_RECOGNIZE),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_ANCHOR).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_MODEL_PATH).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR4").appendField(ut.Msg.MIXLY_AipNlp_Topic_Title).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_TOOLTIP)}},Ll={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_YOLO_RECOGNIZE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_COLOR_CHASE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["ID","info1"],[ut.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"],[ut.Msg.MICROPYTHON_HUSKYLENS_X_CENTERED+ut.Msg.MIXLY_POSITION_XY,"xc"],[ut.Msg.MICROPYTHON_HUSKYLENS_Y_CENTERED+ut.Msg.MIXLY_POSITION_XY,"yc"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_YOLO_RECOGNIZE_RESULT_TOOLTIP)}},Nl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_AipSpeech_asr),this.appendValueInput("VAR1").appendField(ut.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_CORPUS).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("VAR2").appendField(ut.Msg.MIXLY_ESP32_THRESHOLD).setAlign(ut.inputs.Align.RIGHT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_ASR_RECOGNISE_TOOLTIP)}},Dl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_LICENSEPLATE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["ID","info1"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_TOOLTIP)}},fl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_AipOcr_licensePlate),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[licensePlate]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_LICENSEPLATE_RECOGNTITION_TOOLTIP)}},Fl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_FACE+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["ID","info1"],[ut.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_FACE_TOOLTIP)}},Pl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_AipFace),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[face]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_BAR_FACE_CLASSIFIER_TOOLTIP)}},vl={init:function(){this.setColour($r),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_20OBJECTS+ut.Msg.MIXPY_OBJECT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ALL_CODE_ANALYSIS),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([["ID","info1"],[ut.Msg.MIXLY_CONFIDENCE_DEGREE,"info2"],[ut.Msg.MIXLY_POSITION_XY+"-xywh","rect"],["x"+ut.Msg.MIXLY_POSITION_XY,"rect[0]"],["y"+ut.Msg.MIXLY_POSITION_XY,"rect[1]"],["w"+ut.Msg.MIXLY_POSITION_XY,"rect[2]"],["h"+ut.Msg.MIXLY_POSITION_XY,"rect[3]"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_20OBJECTS_TOOLTIP)}},Yl={init:function(){this.setColour($r),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_FIND_20OBJECTS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PROCEDURES_DEFRETURN_RETURN+"[20objects]"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_AI_SENSOR_BAR_FIND_20OBJECTS_TOOLTIP)}},xl={init:function(){this.setColour(205),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_AipSpeech_asr,"ASR"],[ut.Msg.MIXLY_AI_UNIT,"UNIT"]]),"CTYPE"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_Client).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("API_KEY").appendField("API_KEY").setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("SECRET_KEY").appendField("SECRET_KEY").setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Xl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_AI_UNIT).appendField(ut.Msg.MIXLY_Client).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("ID").appendField("ID").setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("STR").appendField(ut.Msg.OLED_STRING).setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setOutput(!0)}},bl={init:function(){this.setColour(205),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_AipSpeech_asr).appendField(ut.Msg.MIXLY_Client).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("FILE").appendField(ut.Msg.MIXPY_AI_AUDIO_TIME).setAlign(ut.inputs.Align.RIGHT),this.appendDummyInput("").appendField(ut.Msg.MIXLY_LANGUAGE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_AI_LANGUAGE_CHINESE,"1537"],[ut.Msg.MIXLY_AI_LANGUAGE_ENGLISH,"1737"],[ut.Msg.MIXLY_AI_LANGUAGE_CANTONESE,"1637"]]),"LANGUAGE"),this.setInputsInline(!0),this.setOutput(!0)}},yl="#2FAD7A",Vl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_TERMINAL_WIDGET_VPIN_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Bl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_SYNC_VIRTUAL_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"}]})}},Ul={init:function(){this.jsonInit({inputsInline:!0,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_ON_DISCONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(ut.CONTROLS_REPEAT_INPUT_DO)}},Gl={init:function(){this.jsonInit({inputsInline:!0,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_ON_CONNECTED_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_ON_CONNECTED_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_ON_CONNECTED_MESSAGE0}),this.appendStatementInput("DO").appendField(ut.CONTROLS_REPEAT_INPUT_DO)}},wl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNKTIMER_RUN_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNKTIMER_RUN_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNKTIMER_RUN_MESSAGE0})}},kl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_RUN_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_RUN_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_RUN_MESSAGE0})}},Hl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_APP_NOTIFY_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_APP_NOTIFY_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_APP_NOTIFY_MESSAGE0,args0:[{check:String,type:"input_value",name:"notification"}]})}},Wl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_STOP_TIMERS_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_STOP_TIMERS_MESSAGE0,args0:[{check:Number,type:"input_value",name:"timer_num"}]})}},Kl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_SET_PROPERTY_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_SET_PROPERTY_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_SET_PROPERTY_MESSAGE0,args0:[{check:String,type:"input_value",name:"attribute_name"},{type:"input_value",name:"attribute_value"}]})}},Jl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_EMAIL_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_EMAIL_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_EMAIL_MESSAGE0,args0:[{check:String,type:"input_value",name:"TargetEmail"},{check:String,type:"input_value",name:"subject"},{check:String,type:"input_value",name:"body"}]})}},Ql={init:function(){this.jsonInit({inputsInline:!0,output:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_GET_TIMERS_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_GET_TIMERS_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_GET_TIMERS_MESSAGE0})}},ql={init:function(){this.jsonInit({message0:ut.Msg.MPYTHON_BLYNKTIMER_MESSAGE0,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNKTIMER_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNKTIMER_TOOLTIP,args0:[{check:Number,type:"input_value",name:"Num"},{options:[[ut.Msg.MIXLY_PYTHON_PERIODIC,"False"],[ut.Msg.MIXLY_PYTHON_ONE_SHOT,"True"]],type:"field_dropdown",name:"Timer_mode"},{check:Number,type:"input_value",name:"period"}]}),this.appendStatementInput("DO").appendField(ut.CONTROLS_REPEAT_INPUT_DO)}},zl={init:function(){this.jsonInit({inputsInline:!0,nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_MESSAGE0,args0:[{type:"input_value",name:"sensor_data"},{check:Number,type:"input_value",name:"virtual_pin"}]})}},jl={init:function(){this.jsonInit({inputsInline:!0,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_APP_DATA_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_SENSOR_DATA_TO_APP_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_APP_DATA_MESSAGE0,args0:[{check:Number,type:"input_value",name:"virtual_pin"},{type:"input_value",name:"virtual_pin_val"}]}),this.appendStatementInput("DO").appendField(ut.CONTROLS_REPEAT_INPUT_DO)}},Zl={init:function(){this.jsonInit({nextStatement:null,previousStatement:null,colour:yl,helpUrl:ut.Msg.MPYTHON_BLYNK_SETUP_HELPURL,tooltip:ut.Msg.MPYTHON_BLYNK_SETUP_TOOLTIP,message0:ut.Msg.MPYTHON_BLYNK_SETUP_MESSAGE0,args0:[{type:"input_dummy"},{check:String,type:"input_value",name:"server"},{check:Number,type:"input_value",name:"port"},{check:String,type:"input_value",name:"auth"}]})}},$l=140,td={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_LED_ON_BOARD+"I2C"),this.setOutput(!0),this.setInputsInline(!0)}},ed={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_LED_ON_BOARD+"SPI"),this.setOutput(!0),this.setInputsInline(!0)}},id={init:function(){this.setColour($l),this.appendValueInput("SUB").appendField("I2C "+ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("TX",Number).appendField("SCL").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("RX",Number).appendField("SDA").setCheck(Number).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_I2C_INIT)}},nd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_RNUMBER),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},sd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendValueInput("address").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_WNUMBER),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},od={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField("I2C").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_I2C_SCAN1+ut.Msg.MIXLY_ESP32_I2C_SCAN2),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_I2C_SCAN)}},_d={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_ESP32_SPI_INIT),this.appendValueInput("freq").setCheck(Number).appendField(ut.Msg.MIXLY_SERIAL_BEGIN),this.appendValueInput("sck").setCheck(Number).appendField("SCK"),this.appendValueInput("mosi").setCheck(Number).appendField("MOSI"),this.appendValueInput("miso").setCheck(Number).appendField("MISO"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_INIT_TOOLTIP)}},pd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_SERIAL_BEGIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_SET)}},ad={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_SET+ut.Msg.MIXLY_ESP32_SPI_BUFFER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_BUFFER_SET)}},ud={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(ut.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ut.Msg.LANG_MATH_BYTE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_READ)}},rd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(Number).appendField(ut.Msg.MIXLY_SERIAL_READ),this.appendDummyInput("").appendField(ut.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ut.Msg.LANG_MATH_BYTE+" "+ut.Msg.MIXLY_ESP32_SPI_OUTPUT),this.appendValueInput("val").setCheck(Number),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_READ_OUTPUT)}},ld={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(ut.Msg.MIXLY_SERIAL_READ+ut.Msg.MIXLY_ESP32_SPI_BUFFER),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_READINTO)}},dd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck("var").appendField(ut.Msg.MIXLY_SERIAL_READ+ut.Msg.MIXLY_ESP32_SPI_BUFFER),this.appendValueInput("val").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_SPI_OUTPUT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_READINTO_OUTPUT)}},Id={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_WRITE)}},Td={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("SPI"),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_WRITE),this.appendValueInput("val").setCheck("var").appendField(ut.Msg.MIXLY_ESP32_BUFFER_READ),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SPI_WRITE_READINTO)}},hd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_READ),this.setOutput(!0,Number)}},Md={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("I2C"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_READ+ut.Msg.MIXLY_ESP32_SUCCESS),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_ESP32_I2C_AVAILABLE)}},md={init:function(){this.setColour($l),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_I2C_SLAVE_ONRECEIVE).setCheck(Number),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Od={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("OneWire "+ut.Msg.MIXLY_SETUP),this.appendValueInput("BUS").setCheck(Number).appendField(ut.Msg.MIXLY_PIN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_INIT)}},Ed={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_ONEWIRE_SCAN),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_SCAN)}},Rd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_ONEWIRE_READ),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_READ)}},cd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("OneWire"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_WRITE).appendField(new ut.FieldDropdown([[ut.Msg.LANG_MATH_STRING,"write"],[ut.Msg.LANG_MATH_BYTE,"writebyte"]]),"op"),this.appendValueInput("byte").setCheck([Number,String]),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_WRITE)}},gd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendValueInput("byte").setCheck(String).appendField(ut.Msg.LISTS_SET_INDEX_SET).appendField("ROM"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_SELECT)}},Cd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField("OneWire").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.blockpy_turtle_reset),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_OW_RESET)}},Sd={init:function(){this.setColour($l),this.appendValueInput("PIN").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.MIXLY_IR_RECEIVE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_IR_INPUT1,"8"],[ut.Msg.MIXLY_IR_INPUT2,"16"],[ut.Msg.MIXLY_IR_INPUT3,"0"],[ut.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type"),this.appendValueInput("SUB").appendField(ut.Msg.CONTROLS_REPEAT_INPUT_DO+ut.Msg.MIXLY_ESP32_ONENET_SUB),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ad={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_IR_CMD_CODE,"0"],[ut.Msg.MIXLY_IR_ADDR_CODE,"1"],[ut.Msg.MIXLY_IR_RAW_CODE,"2"],[ut.Msg.MIXLY_IR_PULSE,"3"]]),"index"),this.setOutput(!0),this.setInputsInline(!0)}},Ld={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXlY_RECV_FUN).appendField(new ut.FieldDropdown([[ut.Msg.MILY_PAUSE,"True"],[ut.Msg.MIXLY_RECOVER,"False"]]),"en"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXlY_RECV_FUN),this.appendDummyInput().appendField(ut.Msg.MIXLY_IR_WHETHER_RECV),this.setOutput(!0),this.setInputsInline(!0)}},Dd={init:function(){this.setColour($l),this.appendValueInput("time").appendField(ut.Msg.MIXlY_RECV_FUN).appendField(ut.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(ut.Msg.MIXLY_MILLISECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},fd={init:function(){this.setColour($l),this.appendValueInput("PIN").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.MIXLY_IR_SEND).appendField(ut.Msg.MIXLY_PIN),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_IR_SEND_samsung1,"False"],[ut.Msg.MIXLY_IR_SEND_samsung2,"True"],[ut.Msg.MIXLY_TR_SEND_RC,"RC5"]]),"type").appendField(ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendValueInput("power"),this.appendDummyInput().appendField(ut.Msg.MATH_QUYU_SYMBOL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_IR_SEND),this.appendValueInput("cmd").appendField(ut.Msg.MIXLY_IR_CMD_CODE),this.appendValueInput("addr").appendField(ut.Msg.MIXLY_IR_ADDR_CODE),this.appendValueInput("toggle").appendField(ut.Msg.MIXLY_CONTROL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_TRANSMIT_CONVEN_DATA)}},Pd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_IR_SEND),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_IR_PULSE).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},vd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_IR_SEND),this.appendValueInput("raw").appendField(ut.Msg.MIXLY_IR_RAW_CODE).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_IR_TRANSMIT_DONE),this.setOutput(!0),this.setInputsInline(!0)}},xd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField(ut.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MSG.catEthernet_init+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+ut.Msg.MSG.catBLE_UART),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Xd={init:function(){this.setColour($l),this.appendValueInput("VAR").appendField(ut.Msg.MSG.catBLE).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MSG.catEthernet_init+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_AS+ut.Msg.MSG.catBLE_HID),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.HTML_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},bd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_ONEWIRE_SCAN+ut.Msg.MSG.catBLE),this.setOutput(!0),this.setInputsInline(!0)}},yd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},Vd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_TEXT_JOIN+ut.Msg.MSG.catBLE).appendField(new ut.FieldDropdown([[ut.Msg.HTML_NAME,"name"],[ut.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"mac"]]),"mode"),this.appendValueInput("data").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Bd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ud={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MSG.catBLE+ut.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").appendField(ut.Msg.HTML_BODY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MSG.catBLE+ut.Msg.MIXLY_EMQX_IS_CONNECT),this.setOutput(!0),this.setInputsInline(!0)}},wd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("METHOD").appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(ut.Msg.CONTROLS_REPEAT_INPUT_DO+ut.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},kd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},Hd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_BLE_HANDLE),this.appendValueInput("METHOD").appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV).appendField(ut.Msg.CONTROLS_REPEAT_INPUT_DO+ut.Msg.MIXLY_ESP32_ONENET_SUB),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+ut.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(ut.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TX_POWER).appendField(new ut.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Kd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "+ut.Msg.MIXLY_SETUP),this.appendValueInput("CHNL").setCheck(Number).appendField(ut.Msg.MIXLY_MP_ESPNOW_CHANNEL),this.appendValueInput("DB").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MP_ESPNOW_INIT_TOOLTIP)}},Jd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_MAC),this.setOutput(!0),this.setInputsInline(!0)}},Qd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_INFO),this.setOutput(!0),this.setInputsInline(!0)}},qd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.appendDummyInput().appendField(new ut.FieldDropdown([["("+ut.Msg.MIXLY_ETHERNET_MAC_ADDRESS+", "+ut.Msg.OLED_STRING+")",""],[ut.Msg.MIXLY_ETHERNET_MAC_ADDRESS,"[0]"],[ut.Msg.OLED_STRING,"[1]"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0)}},zd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("mac").appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_SEND_MAC),this.appendValueInput("content").appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},jd={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("ESPnow "),this.appendValueInput("METHOD").appendField(ut.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zd={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},$d={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_MP_ESPNOW_RADIO+ut.Msg.MIXLY_TX_POWER).appendField(new ut.FieldDropdown([["20","20"],["18","18"],["16","16"],["15","15"],["14","14"],["13","13"],["11","11"],["8","8"],["7","7"],["5","5"],["2","2"]]),"op"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},tI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_INIT),this.appendValueInput("CHNL").setCheck(Number),this.appendValueInput("DB").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER),this.appendDummyInput().appendField("db"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MP_ESPNOW_RADIO_INIT_TOOLTIP)}},eI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"True"],[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"False"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},iI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("send").setCheck(String),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXGO_ESPNOW_SEND_TOOLTIP)}},nI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO).appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0),this.setInputsInline(!0)}},sI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_RECEIVED_MSG),this.setOutput(!0),this.setInputsInline(!0)}},oI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},_I={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new ut.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},pI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},aI={init:function(){this.setColour($l),this.appendDummyInput().appendField(ut.Msg.MIXLY_MP_ESPNOW_RADIO_MSG_RECEIVED_CERTAIN).appendField('"').appendField(new ut.FieldTextInput("on"),"msg").appendField('"'),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!1),this.setNextStatement(!1)}},uI={init:function(){this.setColour($l),this.appendValueInput("SUB").appendField("Lora"+ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("frequency").appendField(ut.Msg.MIXLY_FREQUENCY),this.appendValueInput("rate").appendField(ut.Msg.MIXLY_CODE_RATE),this.appendValueInput("factor").appendField(ut.Msg.MIXLY_SPREADING_FACTOR),this.appendValueInput("power").appendField(ut.Msg.MIXLY_TX_POWER),this.appendDummyInput().appendField(ut.Msg.MIXLY_SIGNAL_BANDWIDTH).appendField(new ut.FieldDropdown([["7800","7800"],["10400","10400"],["15600","15600"],["20800","20800"],["31250","31250"],["41700","41700"],["62500","62500"],["125000","125000"],["250000","250000"],["500000","500000"]]),"bandwidth"),this.setFieldValue("125000","bandwidth"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_LORA_INIT_TOOLTIP)}},rI={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_PACKAGE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SIGNAL_STRENGTH,"packet_rssi"],[ut.Msg.MIXLY_SIGNAL_NOISE_RATE,"packet_snr"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},lI={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ut.Msg.MIXLY_SEND_DATA),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},dI={init:function(){this.setColour($l),this.appendValueInput("VAR").setCheck("var").appendField("Lora "),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXGO_ESPNOW_RECV),this.setOutput(!0,String),this.setInputsInline(!0)}},II={init:function(){this.setColour($l),this.appendValueInput("DOMAIN").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS_GET).appendField(new ut.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},TI={init:function(){this.appendValueInput("VAL");var t=[[ut.Msg.blockpy_REQUESTS_GET_ATTR_HEADER,"headers"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour($l),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ut.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ut.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ut.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},hI={init:function(){this.appendValueInput("VAR").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour($l),this.appendDummyInput("").appendField(ut.Msg.blockpy_CONDUCT).appendField(new ut.FieldDropdown([["get","get"],["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS),this.setOutput(!0),this.setInputsInline(!0)}},MI=id,mI=nd,OI=sd,EI=od,RI=_d,cI=pd,gI=ad,CI=ud,SI=rd,AI=ld,LI=dd,NI=Id,DI=Td,fI=hd,FI=Md,PI=120;({init:function(){this.setColour(PI),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ut.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new ut.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}}).OPERATORS=[[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];({init:function(){this.setColour(PI);var t=new ut.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}}).OPERATORS=[[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const vI="5BA5A5",YI={init:function(){this.setColour(vI),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["32x12 Matrix","32x12 Matrix"],["16x8 Matrix","16x8 Matrix"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},xI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},XI={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},bI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},VI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},BI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},UI={init:function(){var t=[[ut.Msg.MIXLY_UP,"shift_up"],[ut.Msg.MIXLY_DOWN,"shift_down"],[ut.Msg.MIXLY_LEFT,"shift_left"],[ut.Msg.MIXLY_RIGHT,"shift_right"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET2).appendField(new ut.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ut.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ut.Msg.DISPLAY_IMAGE_LET,n=ut.Msg.DISPLAY_IMAGE_LET2,s=ut.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT}[t]+s}))}},GI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},wI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},kI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},HI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},WI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},KI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Built_in_image1).appendField(new ut.FieldDropdown([["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]]),"image"),this.setOutput(!0,"esp32_image"),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},JI={init:function(){var t=[[ut.Msg.MICROBIT_DISPLAY_UNION,"add"],[ut.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(ut.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":ut.Msg.MIXLY_MICROBIT_image_add,"-":ut.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},QI={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(vI),this.appendValueInput("A").setCheck("esp32_image").appendField(ut.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},qI={init:function(){this.setColour(vI),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendValueInput("row").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+"OLED").setCheck(Number),this.appendValueInput("column").appendField("X").setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip()}},zI={init:function(){this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendValueInput("Text_line1","String").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.OLEDDISPLAY+ut.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(vI),this.setTooltip(ut.Msg.MIXLY_DF_LCD+ut.Msg.OLEDDISPLAY+ut.Msg.MIXLY_MICROBIT_TYPE_STRING)}},jI={init:function(){var t=[[ut.Msg.MIXLY_HEIGHT,"height"],[ut.Msg.MIXLY_WIDTH,"width"]];this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ut.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ut.Msg.MIXLY_MICROBIT_IMAGE+{height:ut.Msg.MIXLY_HEIGHT,width:ut.Msg.MIXLY_WIDTH}[t]}))}},ZI={init:function(){var t=[[ut.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ut.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RECT).appendField(new ut.FieldDropdown(t),"OP"),this.jsonInit({message0:ut.Msg.MIXLY_MICROBIT_SHOW_RECT,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"width"},{check:Number,type:"input_value",name:"height"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_OLED_RECT)}},$I={init:function(){this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_DISPLAY_DRAW).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_DISPLAY_RLINE,"hline"],[ut.Msg.MIXLY_DISPLAY_VLINE,"vline"]]),"direction"),this.jsonInit({message0:ut.Msg.MIXLY_MICROBIT_SHOW_LINE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"length"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_OLED_LINE)}},tT={init:function(){this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.jsonInit({message0:ut.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_OLED_LINE_ARBIT)}},eT={init:function(){this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE),this.setInputsInline(!0),this.setOutput(!0,"esp32_image"),this.setTooltip(ut.Msg.MIXLY_ESP32_MONITOR_GET_SCREEN_IMAGE_TOOLTIP)}},iT={init:function(){this.setColour(vI),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BLINK_RATE)}},nT={init:function(){this.setColour(vI),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").appendField(ut.Msg.LISTS_SET_INDEX_SET+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_AS).appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B)}},sT={init:function(){this.setColour(vI),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_ON,"ON"],[ut.Msg.MIXLY_ESP32_OFF,"OFF"]]),"ONOFF"),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},oT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[ut.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:ut.Msg.MIXLY_LCD_STAT_CLEAR,1:ut.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return ut.Msg.MIXLY_DF_LCD+i[e]}))}},_T={init:function(){this.setColour(vI),this.setOutput(!0,"Tuple"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_DISPLAY_ANIMATE).appendField(new ut.FieldDropdown([["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]]),"ANIMATION")}},pT={init:function(){var t=[[ut.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ut.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new ut.FieldDropdown(t),"OP"),this.jsonInit({message0:ut.Msg.MIXLY_HANBIT_SHOW_CIRCLE,args0:[{check:Number,type:"input_value",name:"x"},{check:Number,type:"input_value",name:"y"},{check:Number,type:"input_value",name:"r"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)}},aT={init:function(){var t=[[ut.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[ut.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]];this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_DISPLAY_DRAW+ut.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new ut.FieldDropdown(t),"OP"),this.jsonInit({message0:ut.Msg.MIXLY_HANBIT_SHOW_triangle,args0:[{check:Number,type:"input_value",name:"x0"},{check:Number,type:"input_value",name:"y0"},{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"fill"}]}),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_DISPLAY_DRAW+ut.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)}},uT={init:function(){this.setColour("#555555"),this.appendDummyInput("").appendField(ut.Msg.MIXGO_ONBOARDDISPLAY_HELP),this.setInputsInline(!0),this.setTooltip("")}},rT={init:function(){this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.OLED_BITMAP),this.appendValueInput("START_X",Number).appendField(ut.Msg.OLED_START_X).setCheck(Number),this.appendValueInput("START_Y",Number).appendField(ut.Msg.OLED_START_Y).setCheck(Number),this.appendValueInput("bitmap_name",String).appendField(ut.Msg.OLED_BITMAP_NAME),this.appendValueInput("WIDTH",Number).appendField(ut.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT",Number).appendField(ut.Msg.MIXLY_HEIGHT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.OLED_SHOW_BMP_TOOLTIP)}},lT={init:function(){this.setColour(vI),this.appendValueInput("VAR").appendField(ut.Msg.OLED),this.appendDummyInput("").appendField(ut.Msg.OLED_DRAWPIXEL),this.appendValueInput("POS_X").appendField(ut.Msg.OLED_POSX),this.appendValueInput("POS_Y").appendField(ut.Msg.OLED_POSY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.OLED_DRAW_PIXE_TOOLTIP)}},dT={init:function(){this.setColour(vI),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["TM1650","TM1650"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ut.Msg.MIXLY_ESP32_SENSOR_USE_I2C_TOOLTIP+{TM1650:"TM1650"}[e]}))}},IT={init:function(){this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_4DIGITDISPLAY).appendField(new ut.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ON,"on"],[ut.Msg.MIXLY_OFF,"off"],[ut.Msg.MIXLY_LCD_STAT_CLEAR,"clear"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_4digitdisplay_power)}},TT={init:function(){this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_4DIGITDISPLAY).appendField(new ut.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_NUMBER),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},hT={init:function(){this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_4DIGITDISPLAY).appendField(new ut.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("NO").appendField(ut.Msg.MIXLY_4DIGITDISPLAY_NOMBER1),this.appendValueInput("STAT").appendField(ut.Msg.MIXLY_4DIGITDISPLAY_NOMBER2+ut.Msg.MIXLY_4DIGITDISPLAY_DOT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_4digitdisplay_showDot)}},MT={init:function(){this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_4DIGITDISPLAY).appendField(new ut.FieldDropdown([["TM1650","tm1650"]]),"TYPE"),this.appendValueInput("VAR"),this.appendValueInput("VALUE").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_4DIGITDISPLAY_4DIGITDISPLAY_BRIGHTNESS_TOOLTIP)}},mT={init:function(){this.setColour(vI),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINDC").appendField("DC"),this.appendValueInput("PINCS").appendField("CS"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+ut.Msg.MSG.catTFT),this.appendValueInput("WIDTH").appendField(ut.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("HEIGHT").appendField(ut.Msg.MIXLY_HEIGHT).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.blockpy_turtle_rotate).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_NO,"0"],[ut.Msg.ANTI_CLOCKWISE+"90°","1"],[ut.Msg.ANTI_CLOCKWISE+"180°","2"],[ut.Msg.ANTI_CLOCKWISE+"270°","3"]]),"rotate"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},OT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catTFT),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},ET={init:function(){this.setColour(vI);let t=new ut.FieldColour("#f00",null,{colourOptions:["#f00","#000"],columns:2});this.appendDummyInput("").setAlign(ut.inputs.Align.RIGHT).appendField(t,"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},RT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},cT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},gT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catTFT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},CT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catTFT),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LCD_STAT_CLEAR,"BLACK"],[ut.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"WHITE"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:ut.Msg.MIXLY_LCD_STAT_CLEAR,1:ut.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return ut.Msg.MIXLY_DF_LCD+i[e]}))}},ST={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catTFT).setCheck("var"),this.jsonInit({message0:ut.Msg.MIXLY_MICROBIT_SHOW_LINE_ARBITRARILY,args0:[{check:Number,type:"input_value",name:"x1"},{check:Number,type:"input_value",name:"y1"},{check:Number,type:"input_value",name:"x2"},{check:Number,type:"input_value",name:"y2"}]}),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_OLED_LINE_ARBIT)}},AT={init:function(){this.setColour(vI),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["LCD1602","16"],["LCD2004","20"]]),"key"),this.appendValueInput("ADDR").setCheck(Number).appendField(ut.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ut.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},LT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.array2_rows),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},NT={init:function(){this.setColour(vI),this.appendValueInput("SUB").appendField(ut.Msg.MSG.catLCD),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_SERIAL_PRINT+ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.array2_cols),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.array2_rows),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},DT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catLCD),this.appendDummyInput().appendField(ut.Msg.TFT_Brightness).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_Turn_on_display,"1"],[ut.Msg.MIXLY_MICROBIT_Turn_off_display,"0"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={1:ut.Msg.MIXLY_MICROBIT_Turn_on_display,0:ut.Msg.MIXLY_MICROBIT_Turn_off_display};return ut.Msg.MSG.catLCD+ut.Msg.TFT_Brightness+i[e]}))}},fT={init:function(){this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catLCD),this.setColour(vI),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},FT={init:function(){this.setColour(vI),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+"oled128x64"),this.appendValueInput("ADDR").setCheck(Number).appendField(ut.Msg.MQTT_SERVER_ADD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return ut.Msg.MIXLY_SETUP+{16:"LCD1602",20:"LCD2004"}[e]}))}},PT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},vT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},YT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ut.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},xT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},XT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},bT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},yT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},VT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},BT={init:function(){var t=[[ut.Msg.MIXLY_UP,"shift_up"],[ut.Msg.MIXLY_DOWN,"shift_down"],[ut.Msg.MIXLY_LEFT,"shift_left"],[ut.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET2).appendField(new ut.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ut.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ut.Msg.DISPLAY_IMAGE_LET,n=ut.Msg.DISPLAY_IMAGE_LET2,s=ut.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT}[t]+s}))}},UT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},GT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},wT={init:function(){this.setColour(vI),this.appendValueInput("SUB").setCheck("var").appendField(ut.Msg.MSG.catOLED),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},kT={init:function(){this.jsonInit({colour:vI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ut.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ut.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[ut.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ut.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ut.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE1,nextStatement:null,previousStatement:null})}},HT={init:function(){this.jsonInit({colour:vI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ut.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ut.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[ut.Msg.mpython_vertical,"0"],[ut.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ut.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE1,nextStatement:null,previousStatement:null})}},WT={init:function(){this.jsonInit({colour:vI,args0:[{name:"SUB",type:"input_value"},{name:"state",options:[[ut.Msg.mpython_display_hline_1,"1"],[ut.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.mpython_display_line_TOOLTIP,message0:ut.Msg.mpython_display_line_MESSAGE1,nextStatement:null,previousStatement:null})}},KT="#569A98",JT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),"micropython:esp32:mixbot"==rt.Boards.getSelectedBoardKey()&&this.setTooltip(ut.Msg.MIXLY_MIXBOT_SHOW_SCROLL_STRING_TOOLTIP)}},QT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},jT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},ZT={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$T={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<32;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},th={init:function(){this.jsonInit({colour:KT,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:ut.Msg.MIXLY_MICROBIT_Built_in_image1,message0:ut.Msg.MIXLY_MICROBIT_Built_in_image})}},eh={init:function(){this.jsonInit({colour:KT,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SAD","SAD"],["SMILE","SMILE"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["SURPRISED","SURPRISED"],["ASLEEP","ASLEEP"],["ANGRY","ANGRY"],["CONFUSED","CONFUSED"],["NO","NO"],["YES","YES"],["LEFT_ARROW","LEFT_ARROW"],["RIGHT_ARROW","RIGHT_ARROW"],["DRESS","DRESS"],["TRANSFORMERS","TRANSFORMERS"],["SCISSORS","SCISSORS"],["EXIT","EXIT"],["TREE","TREE"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["PITCHFORK","PITCHFORK"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["COW","COW"],["RABBIT","RABBIT"],["SQUARE_SMALL","SQUARE_SMALL"],["SQUARE","SQUARE"],["DIAMOND_SMALL","DIAMOND_SMALL"],["DIAMOND","DIAMOND"],["CHESSBOARD","CHESSBOARD"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["TRIANGLE","TRIANGLE"],["SNAKE","SNAKE"],["UMBRELLA","UMBRELLA"],["SKULL","SKULL"],["GIRAFFE","GIRAFFE"],["SWORD","SWORD"]],type:"field_dropdown"}],output:["esp32_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:ut.Msg.MIXLY_MICROBIT_Built_in_image1,message0:ut.Msg.MIXLY_MICROBIT_Built_in_image})}},ih={init:function(){var t=[[ut.Msg.MICROBIT_DISPLAY_UNION,"add"],[ut.Msg.MICROBIT_DISPLAY_MINUS,"sub"]];this.setColour(KT),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(ut.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":ut.Msg.MIXLY_MICROBIT_image_add,"-":ut.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},nh={init:function(){this.setColour(KT),this.appendValueInput("A").setCheck("esp32_image").appendField(ut.Msg.MIXLY_MICROBIT_Invert_image1),this.setInputsInline(!0),this.setOutput(!0,"esp32_image")}},sh={init:function(){var t=[[ut.Msg.MIXLY_UP,"shift_up"],[ut.Msg.MIXLY_DOWN,"shift_down"],[ut.Msg.MIXLY_LEFT,"shift_left"],[ut.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(KT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET2).appendField(new ut.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ut.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ut.Msg.DISPLAY_IMAGE_LET,n=ut.Msg.DISPLAY_IMAGE_LET2,s=ut.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:ut.Msg.MIXLY_UP,shift_down:ut.Msg.MIXLY_DOWN,shift_left:ut.Msg.MIXLY_LEFT,shift_right:ut.Msg.MIXLY_RIGHT}[t]+s}))}},oh={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_POINT),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},_h={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},ph={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},ah={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},uh={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},rh={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<8;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},lh={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},dh={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<8;t++){let e=this.appendDummyInput();for(let i=0;i<16;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0,"esp32_image"),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},Ih={init:function(){var t=[["4x5"+ut.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+ut.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+ut.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]];this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.OLED_SET_FONT).appendField(new ut.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Th={init:function(){this.setColour(KT),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},hh={init:function(){this.setColour(KT),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_NUMBER),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},Mh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck([String,"esp32_image","List","Tuple"]).appendField(ut.Msg.OLED_DRAWSTR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},mh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},Oh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},Eh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Rh={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_BRIGHTNESS).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("STAT").setCheck([Number,Boolean]),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},ch={init:function(){this.jsonInit({colour:KT,args0:[{name:"state",options:[[ut.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ut.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"shape",options:[[ut.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ut.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ut.Msg.MPYTHON_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},gh={init:function(){this.jsonInit({colour:KT,args0:[{name:"state",options:[[ut.Msg.MPYTHON_DISPLAY_MODE_1,"1"],[ut.Msg.MPYTHON_DISPLAY_MODE_0,"0"]],type:"field_dropdown"},{name:"dir_h_v",options:[[ut.Msg.mpython_vertical,"0"],[ut.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ut.Msg.MPYTHON_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},Ch={init:function(){this.jsonInit({colour:KT,args0:[{name:"state",options:[[ut.Msg.mpython_display_hline_1,"1"],[ut.Msg.mpython_display_hline_0,"0"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.mpython_display_line_TOOLTIP,message0:ut.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},Sh={init:function(){this.jsonInit({colour:KT,args0:[{type:"field_label",name:"size_image",text:ut.Msg.MIXLY_MICROBIT_Built_in_image1},{name:"path",options:[["Heart","Heart"],["Angry","Angry"],["Bored","Bored"],["Confused","Confused"],["Happy","Happy"],["Paper","Paper"],["Rock","Rock"],["Sad","Sad"],["Scissors","Scissors"],["Silly","Silly"],["Sleep","Sleep"],["Small_heart","Small_heart"],["Small_paper","Small_paper"],["Small_rock","Small_rock"],["Small_scissors","Small_scissors"],["Smile","Smile"],["Surprise","Surprise"],["Wonderful","Wonderful"],["Eyes_Angry","Eyes_Angry"],["Awake","Awake"],["Black_eye","Black_eye"],["Bottom_left","Bottom_left"],["Bottom_right","Bottom_right"],["Crazy_1","Crazy_1"],["Crazy_2","Crazy_2"],["Disappointed","Disappointed"],["Dizzy","Dizzy"],["Down","Down"],["Evil","Evil"],["Hurt","Hurt"],["Knocked_out","Knocked_out"],["Love","Love"],["Middle_left","Middle_left"],["Middle_right","Middle_right"],["Neutral","Neutral"],["Nuclear","Nuclear"],["Pinch_left","Pinch_left"],["Pinch_middle","Pinch_middle"],["Pinch_right","Pinch_right"],["Tear","Tear"],["Tired_left","Tired_left"],["Tired_middle","Tired_middle"],["Tired_right","Tired_right"],["Toxic","Toxic"],["Up","Up"],["Winking","Winking"],["Accept","Accept"],["Backward","Backward"],["Decline","Decline"],["Forward","Forward"],["Left","Left"],["No_go","No_go"],["Question_mark","Question_mark"],["Right","Right"],["Stop_1","Stop_1"],["Stop_2","Stop_2"],["Thumbs_down","Thumbs_down"],["Thumbs_up","Thumbs_up"],["Warning","Warning"],["Bomb","Bomb"],["Boom","Boom"],["Fire","Fire"],["Flowers","Flowers"],["Forest","Forest"],["Lightning","Lightning"],["Light_off","Light_off"],["Light_on","Light_on"],["Night","Night"],["Pirate","Pirate"],["Snow","Snow"],["Target","Target"],["Bar_0","Bar_0"],["Bar_1","Bar_1"],["Bar_2","Bar_2"],["Bar_3","Bar_3"],["Bar_4","Bar_4"],["Dial_0","Dial_0"],["Dial_1","Dial_1"],["Dial_2","Dial_2"],["Dial_3","Dial_3"],["Dial_4","Dial_4"],["Dots_0","Dots_0"],["Dots_1","Dots_1"],["Dots_2","Dots_2"],["Dots_3","Dots_3"],["Hourglass_0","Hourglass_0"],["Hourglass_1","Hourglass_1"],["Hourglass_2","Hourglass_2"],["Timer_0","Timer_0"],["Timer_1","Timer_1"],["Timer_2","Timer_2"],["Timer_3","Timer_3"],["Timer_4","Timer_4"],["Water_level_0","Water_level_0"],["Water_level_1","Water_level_1"],["Water_level_2","Water_level_2"],["Water_level_3","Water_level_3"]],type:"field_dropdown"}],output:"String",helpUrl:"",tooltip:"",message0:"%1 %2"})}},Ah={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<5;t++){let e=this.appendDummyInput();for(let i=0;i<5;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},Lh={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Nh={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_AMBIENTBRIGHT),this.setInputsInline(!0),this.setOutput(!0,Number)}},Dh={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},fh={init:function(){var t=[[ut.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[ut.Msg.CLOCKWISE+"90"+ut.Msg.blockpy_setheading_degree,"1"],[ut.Msg.CLOCKWISE+"180"+ut.Msg.blockpy_setheading_degree,"2"],[ut.Msg.CLOCKWISE+"270"+ut.Msg.blockpy_setheading_degree,"3"]];this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new ut.FieldDropdown(t),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fh={init:function(){this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE);for(let t=0;t<12;t++){let e=this.appendDummyInput();for(let i=0;i<12;i++)e.appendField(new ut.FieldColour("#000",null,{colourOptions:["#f00","#000"],columns:2}),t+"-"+i)}this.setOutput(!0),this.setColour(KT),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Create_image1)}},Ph={init:function(){this.setColour(KT),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},vh={init:function(){this.setColour(KT),this.appendValueInput("data").appendField(ut.Msg.OLED_BITMAP),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.OLED_BITMAP_OR_STRING)}},Yh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.OLED_DRAWSTR),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendDummyInput("").appendField(ut.Msg.TEXT_CENTER).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"center"),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SHOW_IMAGE_OR_STRING_DELAY)}},xh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("space").setCheck(Number).appendField(ut.Msg.MICROPYTHON_DISPLAY_FONT_SPACE),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SCROLL_IMAGE_OR_STRING_DELAY)}},bh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yh={init:function(){this.setColour(KT),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_ESP32_MONITOR_SHOW_FRAME),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vh={init:function(){this.jsonInit({colour:KT,args0:[{name:"shape",options:[[ut.Msg.MPYTHON_DISPLAY_HOLLOW,"rect"],[ut.Msg.MPYTHON_DISPLAY_SOLID,"fill_rect"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"w",type:"input_value"},{name:"h",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_SHAPE_RECT_TOOLTIP,message0:ut.Msg.ONBOARD_TFT_DISPLAY_SHAPE_RECT_MESSAGE0,nextStatement:null,previousStatement:null})}},Bh={init:function(){this.jsonInit({colour:KT,args0:[{name:"dir_h_v",options:[[ut.Msg.mpython_vertical,"0"],[ut.Msg.mpython_horizontal,"1"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"length",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.MPYTHON_DISPLAY_HVLINE_TOOLTIP,message0:ut.Msg.ONBOARD_TFT_DISPLAY_HVLINE_MESSAGE0,nextStatement:null,previousStatement:null})}},Uh={init:function(){this.jsonInit({colour:KT,args0:[{type:"input_dummy"},{name:"x1",type:"input_value"},{name:"y1",type:"input_value"},{name:"x2",type:"input_value"},{name:"y2",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,tooltip:ut.Msg.mpython_display_line_TOOLTIP,message0:ut.Msg.mpython_display_line_MESSAGE0,nextStatement:null,previousStatement:null})}},Gh={init:function(){var t=[[ut.Msg.MIXLY_UP,"shift_up"],[ut.Msg.MIXLY_DOWN,"shift_down"],[ut.Msg.MIXLY_LEFT,"shift_left"],[ut.Msg.MIXLY_RIGHT,"shift_right"]];this.setColour(KT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_LET2).appendField(new ut.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(ut.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=ut.Msg.DISPLAY_IMAGE_LET,n=ut.Msg.DISPLAY_IMAGE_LET2,s=ut.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT}[t]+s}))}},wh={init:function(){this.setColour(KT),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendDummyInput().appendField(ut.Msg.HTML_COLOUR),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_BRIGHTNESS)}},kh={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_LCD_SETCOLOR).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_DISPLAY_SETPIXEL)}},Hh={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Clear_display),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Clear_display)}},Wh={init:function(){this.setColour(KT),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_GET_SCREEN_BRIGHTNESS)}},Kh={init:function(){this.setColour(KT),this.appendValueInput("x").setCheck(Number).appendField(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_JS_MONITOR_SET_SCREEN_BRIGHTNESS+" 0.0-1.0")}},Jh={init:function(){this.setColour(KT),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_SCREEN_FILL),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qh={init:function(){this.setColour(KT),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_INIT_CLOCK),this.appendDummyInput().appendField(ut.Msg.MIXLY_CENTER_POS),this.appendValueInput("x").setCheck(Number).appendField("x"),this.appendValueInput("y").setCheck(Number).appendField("y"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.OLED_CIRCLE_RADIUS),this.appendValueInput("VAR").appendField(ut.Msg.HTML_COLOUR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},qh={init:function(){this.setColour(KT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.GET_RTCTIME),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},zh={init:function(){this.setColour(KT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.SET_TIME),this.appendValueInput("h").setCheck(Number).appendField(ut.Msg.MIXLY_HOUR),this.appendValueInput("m").setCheck(Number).appendField(ut.Msg.MIXLY_MINUTE),this.appendValueInput("s").setCheck(Number).appendField(ut.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},jh={init:function(){this.setColour(KT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.DRAW_CLOCK),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Zh={init:function(){this.setColour(KT),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.CLEAR_CLOCK),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_STM32_TFT_BACKGROUND_COLOR),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},$h={init:function(){this.jsonInit({colour:KT,args0:[{name:"shape",options:[[ut.Msg.MPYTHON_DISPLAY_HOLLOW,"False"],[ut.Msg.MPYTHON_DISPLAY_SOLID,"True"]],type:"field_dropdown"},{type:"input_dummy"},{name:"x",type:"input_value"},{name:"y",type:"input_value"},{name:"r",type:"input_value"},{name:"VAR",type:"input_value"}],inputsInline:!0,helpUrl:ut.Msg.mpython_HELPURL,message0:ut.Msg.ONBOARD_TFT_DISPLAY_SHAPE_CIRCLE_MESSAGE0,nextStatement:null,previousStatement:null})}},tM="#777777",eM={init:function(){this.setColour(tM),this.appendDummyInput("").appendField("from ").appendField(new ut.FieldTextInput("ESP32"),"path").appendField(" import ").appendField(new ut.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},iM={init:function(){this.setColour(tM),this.appendDummyInput("").appendField("import ").appendField(new ut.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},nM={init:function(){this.setColour(tM),this.appendDummyInput("").appendField(new ut.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ut.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;ee?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},HM={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},WM={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},KM={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},JM={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(ut.Msg.MIXLY_WIFI_USERNAME).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(ut.Msg.MIXLY_IOT_PASSWORD).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(ut.Msg.MIXLY_EMQX_PROJECT).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},QM={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ut.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(ut.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},qM={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ut.Msg.MIXLY_EMQX_SUBSCRIBE+ut.Msg.MIXLY_MICROBIT_MSG).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(ut.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},zM={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},jM={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ZM={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$M={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ut.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},tm={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},em={init:function(){this.setColour(yM),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},im={init:function(){this.setColour(yM),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},nm={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},sm={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO").appendField(ut.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(ut.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},om={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+ut.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},_m={init:function(){this.setColour(yM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},pm={init:function(){this.VISITOR_ID=rt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(yM),this.appendDummyInput("").appendField(new ut.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},am={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MixIO").appendField(ut.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},um={init:function(){this.setColour(yM),this.appendDummyInput().appendField("HTTP"+ut.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ut.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(ut.Msg.MIXLY_REQUESTS_GET).appendField(ut.Msg.MIXLY_GET_CURRENT_TIME).appendField(ut.Msg.MIXLY_OPEN_DEBUG).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},rm={init:function(){this.setColour(yM),this.appendDummyInput().appendField("HTTP"+ut.Msg.MIXLY_Client).appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ut.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ut.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},lm={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MQTT"+ut.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ut.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(ut.Msg.MIXLY_INIT_SUBSCRIBE).appendField(ut.Msg.MQTT_Topic).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(ut.Msg.MIXLY_OPEN_DEBUG).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},dm={init:function(){this.setColour(yM),this.appendDummyInput().appendField("MQTT"+ut.Msg.MIXLY_Client).appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ut.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ut.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Im=VM,Tm=BM,hm=UM,Mm=GM,mm=kM,Om=225,Em={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(ut.Msg.MIXLY_NETWORK_MODE).appendField(new ut.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},Rm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[ut.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=ut.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:ut.Msg.MIXLY_NETWORK_WIFI_OPEN,False:ut.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},cm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},gm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return ut.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:ut.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},Cm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(ut.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(ut.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},Sm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_CONNECT+ut.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},Am={init:function(){this.setColour(Om),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(ut.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(ut.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},Lm={init:function(){this.setColour(Om),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},Nm={init:function(){this.setColour(Om),this.appendValueInput("url").appendField(ut.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},Dm={init:function(){this.setColour(Om),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},fm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[ut.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[ut.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:ut.Msg.MIXLY_ESP32_NETWORK_IP,1:ut.Msg.MIXLY_ESP32_NETWORK_MASK,2:ut.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},Fm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},Pm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[ut.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},vm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(ut.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(ut.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},Ym={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},xm={init:function(){this.setColour(Om),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ut.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},Xm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},bm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},ym={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},Vm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},Bm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},Um={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},Gm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},wm={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},km={init:function(){this.setColour(Om),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},Hm={init:function(){this.setColour(Om),this.appendValueInput("DOMAIN").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS_GET).appendField(new ut.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Wm={init:function(){this.appendValueInput("VAL");var t=[[ut.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(Om),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ut.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ut.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ut.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},Km={init:function(){this.appendValueInput("VAR").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(Om),this.appendDummyInput("").appendField(ut.Msg.blockpy_CONDUCT).appendField(new ut.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:ut.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:ut.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},Jm={init:function(){this.setColour(Om),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(ut.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},Qm={init:function(){this.setColour(Om),this.appendDummyInput("").appendField(new ut.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},qm="#A58C5B",zm={init:function(){this.setColour(qm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(ut.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SENOR_IS_PRESSED)}},jm={init:function(){this.setColour(qm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(ut.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SENOR_WAS_PRESSED)}},Zm={init:function(){this.setColour(qm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_BUTTON+ut.Msg.MIXLY_GET_PRESSES)}},$m={init:function(){this.setColour(qm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ut.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ut.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},tO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_shake,"shake"],[ut.Msg.MIXLY_UP,"up"],[ut.Msg.MIXLY_DOWN,"down"],[ut.Msg.MIXLY_LEFT,"left"],[ut.Msg.MIXLY_RIGHT,"right"],[ut.Msg.MIXLY_MICROBIT_face_up,"face up"],[ut.Msg.MIXLY_MICROBIT_face_down,"face down"],[ut.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ut.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ut.Msg.MSG.catSensor,s=ut.Msg.MIXLY_MICROBIT_JS_STATE,o=ut.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ut.Msg.MIXLY_MICROBIT_shake,up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT,"face up":ut.Msg.MIXLY_MICROBIT_face_up,"face down":ut.Msg.MIXLY_MICROBIT_face_down,freefall:ut.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},eO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},iO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},nO={init:function(){var t=[[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(qm),this.appendValueInput("PIN",Number).appendField(new ut.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new ut.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},sO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},oO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},_O={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"left"],[ut.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(ut.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=ut.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=ut.Msg.MIXLY_ESP32_NEAR;return i+{left:ut.Msg.TEXT_TRIM_LEFT,right:ut.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},pO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[ut.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":ut.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":ut.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},aO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[ut.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},uO={init:function(){this.setColour(qm),this.appendValueInput("PIN",Number).appendField("DS18x20 "+ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},rO={init:function(){this.setColour(qm),this.appendDummyInput("").appendField("LM35"+ut.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_LM35)}},lO={init:function(){this.setColour(qm),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},dO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[ut.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[ut.Msg.MIXLY_ESP32_MAX30102_IR+","+ut.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},IO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[ut.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[ut.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},TO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},hO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.HTML_COLOUR+ut.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET+ut.Msg.HTML_COLOUR,"[2]"],[ut.Msg.MIXLY_GET+ut.Msg.MIXLY_IR_STRENGTH,"[1]"],[ut.Msg.MIXLY_GET+ut.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},MO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET_ENV_LIGHT,"E"],[ut.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},mO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},OO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},EO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},RO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_Altitude+ut.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETPRESSURE,"pressure()"],[ut.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[ut.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MIXGOPE_FIELD+ut.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[ut.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},gO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_shake,"shake"],[ut.Msg.MIXLY_UP,"up"],[ut.Msg.MIXLY_DOWN,"down"],[ut.Msg.MIXLY_LEFT,"left"],[ut.Msg.MIXLY_RIGHT,"right"],[ut.Msg.MIXLY_MICROBIT_face_up,"face up"],[ut.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ut.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ut.Msg.MSG.catSensor,s=ut.Msg.MIXLY_MICROBIT_JS_STATE,o=ut.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ut.Msg.MIXLY_MICROBIT_shake,up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT,"face up":ut.Msg.MIXLY_MICROBIT_face_up,"face down":ut.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},CO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},SO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_GET+ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},AO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ut.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},LO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},NO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_GETTEMPERATUE)}},DO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return ut.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},fO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},FO={init:function(){this.setColour(qm),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},PO={init:function(){this.setColour(qm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[ut.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},vO={init:function(){this.setColour(qm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},YO={init:function(){this.setColour(qm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},xO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ut.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},XO={init:function(){this.setColour(qm),this.appendDummyInput().appendField(ut.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ut.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(ut.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},bO={init:function(){this.setColour(qm),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RFID_SCAN_OK,"0"],[ut.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[ut.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},yO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},VO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},BO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},UO={init:function(){this.setColour(qm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ut.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},iL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},nL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},sL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},oL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},_L=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},pL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},aL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},uL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},rL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},lL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},dL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},IL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},TL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},hL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ML=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},mL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},OL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},EL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},RL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},cL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},gL=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},CL=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},SL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},AL=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},LL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},NL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},DL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},fL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},FL=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},PL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},vL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},YL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},xL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},XL=function(t,e){e.definitions_.import_st7789="import st7789";var i=rt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},bL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},yL=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},VL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},BL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},UL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},GL=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},wL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},kL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},HL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},WL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},KL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},JL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},QL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=rt.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},qL=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},zL=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},jL=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},ZL=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},$L=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},tN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},eN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},iN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},nN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},sN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},oN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},_N=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},pN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},aN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},uN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},rN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},lN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},dN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},IN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},TN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},hN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},MN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},mN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},ON=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},zN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},jN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},ZN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},$N=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},tD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},eD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},iD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},nD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},sD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},oD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},_D=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},pD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},aD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},uD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},rD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},lD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},dD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},ID=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},TD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},hD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},MD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},mD=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},OD=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},ED=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},dY=function(){return"control.reset()\n"},IY=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||rt.Profile.default.serial)+")\n"},TY=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||rt.Profile.default.serial)+")\n"},hY=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},MY=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},mY=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},OY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},EY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},RY=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},cY=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},gY=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},CY=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},SY=function(){return"while True:\n pass\n"},AY=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},LY=function(t,e){return e.definitions_.import_os="import os","os.uname()"},NY=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},DY=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},fY=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},FY=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},PY=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},vY=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},YY=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},xY=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},XY=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},bY=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},yY=vY,VY=FY,BY=PY,UY=NY,GY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},wY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},kY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},HY={};HY["飞乙"]={description:"MicroPython[ESP32C3 Bitbot]",digital_pin:rt.Profile.generate(["0-11","18-21"]),input_pin:rt.Profile.generate(["0-11","18-21"]),output_pin:rt.Profile.generate(["0-11","18-21"]),pwm_input:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:rt.Profile.generate(["0-5"],"adc","adc"),pwm_output:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:rt.Profile.generate(["0-5"],"adc","adc"),espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),digital:rt.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:rt.Profile.generate(["0-11","18-21"]),pwm:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:rt.Profile.generate(["0-5"]),analog:rt.Profile.generate(["0-5"],"adc","adc"),button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]],extern_addr:rt.Profile.generate(["0-1"]),als_num:rt.Profile.generate(["0-3"])},HY["超霸大师"]={description:"MicroPython[ESP32 Mixbot]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["P","button_p"],["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]],extern_addr:rt.Profile.generate(["0-3"])},HY["ESP32 Generic"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin11","pin11"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},HY["机器人大师"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["p","button_p"],["cw","button_cw"],["ccw","button_ccw"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]};const WY=HY,KY=230,JY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital),"PIN"),this.setOutput(!0)}},QY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},qY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},zY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},jY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch_mpython),"PIN"),this.setOutput(!0,Number)}},ZY={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},$Y={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},tx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},ex={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},ix={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},nx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},sx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},ox={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},_x={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},px={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},ax={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},ux={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},rx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog),"PIN"),this.setOutput(!0)}},lx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},dx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.dac),"PIN"),this.setOutput(!0)}},Ix={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},Tx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},hx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},Mx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},mx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},Ox={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch),"PIN"),this.setOutput(!0)}},Ex={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},Rx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},cx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},gx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},Cx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},Sx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},Ax={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},Lx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},Nx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},Dx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},fx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},Fx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},Px={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},vx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},Yx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},xx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Xx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},bx={init:function(){this.setColour(KY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},yx=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},Vx=yx,Bx=yx,Ux=yx,Gx=yx,wx=yx,kx=yx,Hx=yx,Wx=yx,Kx=yx,Jx=yx,Qx=yx,qx=yx,zx=yx,jx=yx,Zx=yx,$x=yx,tX=yx,eX=yx,iX=yx,nX=yx,sX=yx,oX=yx,_X=yx,pX=yx,aX=yx,uX=yx,rX=yx,lX=yx,dX=yx,IX=yx,TX=yx,hX=yx,MX=yx,mX=yx;Object.assign(ut.Variables,dt),Object.assign(ut.Procedures,Vn),ut.Python=tu,ut.generator=tu,rt.Profile.default={},Object.assign(rt.Profile,WY),Object.assign(rt.Profile.default,WY["ESP32 Generic"]),Object.assign(ut.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,b,w,G,v,y,k,f,U,B,V,F,D,N,x,Y,X,P,pt),Object.assign(ut.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,$,ot,st,q,tt,_t,K,nt,it,et,J,W,H,j,z,Z,Q,at)})(); \ No newline at end of file +class It{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ut.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(ut.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.CONTROLS_IF_MSG_ELSE);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_if_if");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_if_elseif");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_if_else");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_if_elseif":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_if_else":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_if_elseif":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_if_else":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ut.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(ut.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},Dt={init:function(){this.setColour(gt),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PYTHON_RANGE).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},ft={init:function(){this.setColour(gt),this.appendValueInput("LIST").setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(ut.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return ut.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ft={init:function(){this.setColour(gt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new ut.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(ut.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:ut.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Pt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ut.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_TRY_TOOLTIP),this.elseifCount_=1,this.elseCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var t=document.createElement("mutation");return this.elseifCount_&&t.setAttribute("elseif",this.elseifCount_),this.elseCount_&&t.setAttribute("else",1),t},domToMutation:function(t){var e=this,i=[],n=[];this.elseCount_&&this.removeInput("ELSE");for(var s=this.elseifCount_;s>0;s--)e.getInputTargetBlock("IF"+s)&&e.getInputTargetBlock("IF"+s).previousConnection?i[s]=e.getInputTargetBlock("IF"+s).previousConnection:i[s]=null,this.removeInput("IF"+s),e.getInputTargetBlock("DO"+s)&&e.getInputTargetBlock("DO"+s).previousConnection?n[s]=e.getInputTargetBlock("DO"+s).previousConnection:n[s]=null,this.removeInput("DO"+s);this.elseifCount_=parseInt(t.getAttribute("elseif"),10),this.elseCount_=parseInt(t.getAttribute("else"),10);for(s=1;s<=this.elseifCount_;s++)this.appendValueInput("IF"+s).setCheck([Boolean,Number]).appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.MIXLY_PYTHON_FINALLY);for(s=i.length-2;s>0;s--)i[s]&&i[s].reconnect(this,"IF"+s);for(s=n.length-2;s>0;s--)n[s]&&n[s].reconnect(this,"DO"+s)},decompose:function(t){var e=t.newBlock("controls_try");e.initSvg();for(var i=e.getInput("STACK").connection,n=1;n<=this.elseifCount_;n++){var s=t.newBlock("controls_except");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}if(this.elseCount_){var o=t.newBlock("controls_finally");o.initSvg(),i.connect(o.previousConnection)}return e},compose:function(t){this.elseCount_&&this.removeInput("ELSE"),this.elseCount_=0;for(var e=this.elseifCount_;e>0;e--)this.removeInput("IF"+e),this.removeInput("DO"+e);this.elseifCount_=0;for(var i=t.getInputTargetBlock("STACK"),n=[null],s=[null],o=null;i;){switch(i.type){case"controls_except":this.elseifCount_++,n.push(i.valueConnection_),s.push(i.statementConnection_);break;case"controls_finally":this.elseCount_++,o=i.statementConnection_;break;default:throw Error("Unknown block type: "+i.type)}i=i.nextConnection&&i.nextConnection.targetBlock()}this.updateShape_(),this.reconnectChildBlocks_(n,s,o)},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=1;e;){switch(e.type){case"controls_except":var n=this.getInput("IF"+i),s=this.getInput("DO"+i);e.valueConnection_=n&&n.connection.targetConnection,e.statementConnection_=s&&s.connection.targetConnection,i++;break;case"controls_finally":s=this.getInput("ELSE");e.statementConnection_=s&&s.connection.targetConnection;break;default:throw"Unknown block type."}e=e.nextConnection&&e.nextConnection.targetBlock()}},rebuildShape_:function(){var t=[null],e=[null],i=null;this.getInput("ELSE")&&(i=this.getInput("ELSE").connection.targetConnection);for(var n=1;this.getInput("IF"+n);){var s=this.getInput("IF"+n),o=this.getInput("DO"+n);console.log(s.connection.targetConnection),t.push(s.connection.targetConnection),e.push(o.connection.targetConnection),n++}this.updateShape_(),this.reconnectChildBlocks_(t,e,i)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var t=1;this.getInput("IF"+t);)this.removeInput("IF"+t),this.removeInput("DO"+t),t++;for(t=1;t<=this.elseifCount_;t++)this.appendValueInput("IF"+t).setCheck([Number,Boolean]).appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(ut.Msg.MIXLY_PYTHON_FINALLY)},reconnectChildBlocks_:function(t,e,i){for(var n=1;n<=this.elseifCount_;n++)t[n]&&t[n].reconnect(this,"IF"+n),e[n]&&e[n].reconnect(this,"DO"+n);i&&i.reconnect(this,"ELSE")}},vt={init:function(){this.setColour(gt);var t=new ut.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:ut.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}[t]}))},onchange:function(){if(this.workspace){var t=!1,e=this;do{if("controls_repeat"==e.type||"controls_for"==e.type||"controls_forEach"==e.type||"controls_repeat_ext"==e.type||"controls_whileUntil"==e.type||"do_while"==e.type){t=!0;break}e=e.getSurroundParent()}while(e);t?this.setWarningText(null):this.setWarningText(ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Yt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ut.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ut.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},xt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new ut.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return ut.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};Ft.OPERATORS=[[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],vt.OPERATORS=[[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[ut.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Xt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},bt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},yt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(ut.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Vt={init:function(){this.setColour(gt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Bt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Gt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(ut.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Ut={init:function(){this.jsonInit({message0:ut.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:gt,tooltip:ut.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:ut.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},wt={init:function(){this.setColour(gt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_STAT),this.setOutput(!0)}},kt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Ht={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},Wt={init:function(){this.appendDummyInput().appendField(ut.Msg.CONTROLS_REPEAT_TITLE_REPEAT+ut.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(ut.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new ut.FieldDropdown([[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[ut.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(gt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Kt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Jt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},Qt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},qt={init:function(){this.setColour(gt),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_GET_UNIQUE_IDEN)}},zt=230;ut.FieldTextInput.math_number_validator=function(t){return String(t)},ut.FieldTextInput.math_number_validator_include_blank=function(t){if(""===t)return"";return/^-?(0X|0x|0O|0o|0B|0b)?[a-fA-F0-9]{1,}(\.[a-fA-F0-9]+)?$/.test(t)?String(t):null};const jt={init:function(){this.setColour(zt),this.appendDummyInput().appendField(new ut.FieldTextInput("0",ut.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MATH_NUMBER_TOOLTIP)}},Zt={init:function(){this.setColour(zt);this.appendDummyInput("").appendField(ut.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ut.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},$t={init:function(){this.setColour(zt);this.appendDummyInput("").appendField(ut.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new ut.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:ut.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},te={init:function(){this.setColour(zt),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown([["+","ADD"],["-","MINUS"],["×","MULTIPLY"],["÷","DIVIDE"],["%","QUYU"],["//","ZHENGCHU"],["**","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ut.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ut.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ut.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ee={init:function(){this.setColour(zt),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown([["+=","ADD"],["-=","MINUS"],["×=","MULTIPLY"],["÷=","DIVIDE"],["%=","QUYU"],["//=","ZHENGCHU"],["**=","POWER"]]),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{ADD:ut.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:ut.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:ut.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:ut.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:ut.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},ie={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new ut.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},ne={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new ut.FieldDropdown([["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"],["-","-"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]]),"OP");var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{SIN:ut.Msg.MATH_TRIG_TOOLTIP_SIN,COS:ut.Msg.MATH_TRIG_TOOLTIP_COS,TAN:ut.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:ut.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:ut.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:ut.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:ut.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},se={init:function(){var t=[[ut.Msg.MATH_BIN,"bin"],[ut.Msg.MATH_OCT,"oct"],[ut.Msg.MATH_HEX,"hex"]];this.setColour(zt),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new ut.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:ut.Msg.MATH_DEC_TOOLTIP_BIN,oct:ut.Msg.MATH_DEC_TOOLTIP_OCT,hex:ut.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},oe={init:function(){var t=[[ut.Msg.LANG_MATH_TO_ROUND,"round"],[ut.Msg.LANG_MATH_TO_CEIL,"ceil"],[ut.Msg.LANG_MATH_TO_FLOOR,"floor"],[ut.Msg.MATH_ABS,"fabs"],[ut.Msg.MATH_SQRT,"sqrt"]];this.setColour(zt),this.appendValueInput("A").setCheck(Number).appendField(new ut.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:ut.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:ut.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:ut.Msg.MATH_SINGLE_TOOLTIP_SQ,round:ut.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:ut.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:ut.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},_e={init:function(){var t=[[ut.Msg.MIXLY_MAX,"max"],[ut.Msg.MIXLY_MIN,"min"]];this.setColour(zt),this.appendValueInput("A").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(ut.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:ut.Msg.MIXLY_TOOLTIP_MATH_MAX,min:ut.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},pe={init:function(){var t=[[ut.Msg.MATH_TWO,"two"],[ut.Msg.MATH_EIGHT,"eight"],[ut.Msg.MATH_TEN,"ten"],[ut.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(zt),this.appendDummyInput("").appendField(ut.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new ut.FieldDropdown(t),"OP").appendField(ut.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MATH_ZHW).appendField(new ut.FieldDropdown(t),"OP2").appendField(ut.Msg.MATH_JinZhi),this.setFieldValue("ten","OP2"),this.setOutput(!0),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i={two:ut.Msg.MATH_Before_two,eight:ut.Msg.MATH_Before_eight,ten:ut.Msg.MATH_Before_ten,sixteen:ut.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:ut.Msg.MATH_Behind_two,eight:ut.Msg.MATH_Behind_eight,ten:ut.Msg.MATH_Behind_ten,sixteen:ut.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},ae={init:function(){var t=[[ut.Msg.LANG_MATH_INT,"int"],[ut.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(zt),this.setOutput(!0,Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_RANDOM).appendField(new ut.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(ut.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:ut.Msg.LANG_MATH_INT,float:ut.Msg.LANG_MATH_FLOAT_RANDOM};return ut.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},ue={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(ut.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(ut.Msg.MATH_CONSTRAIN_TOOLTIP)}},re={init:function(){this.setColour(zt),this.appendValueInput("NUM",Number).appendField(ut.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(ut.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(ut.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_MATH_MAP)}},le={init:function(){this.setColour(zt),this.appendDummyInput().appendField(new ut.FieldTextInput("0",ut.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(ut.Msg.MATH_NUMBER_TOOLTIP)}},de={init:function(){this.setColour(zt),this.appendValueInput("NUM").setCheck(Number).appendField(ut.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Ie={init:function(){this.setColour(zt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MATH_ROUND).appendField(ut.Msg.TEXT_KEEP),this.appendDummyInput().appendField(ut.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(ut.Msg.MATH_ROUND_NEW_TOOLTIP)}},Te={init:function(){var t=[[ut.Msg.MIXLY_TO_INT,"int"],[ut.Msg.MIXLY_TO_FLOAT,"float"],[ut.Msg.MIXLY_TO_BITES,"b"]];this.setColour(zt),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ut.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:ut.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:ut.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},he={init:function(){var t=[[ut.Msg.MIXLY_TO_INT,"int"],[ut.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(zt),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:ut.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:ut.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},Me=re,me=160,Oe={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ut.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ut.FieldImage(e,12,12,'"')}},Ee={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(ut.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new ut.FieldImage(e,12,12,'"')}};ut.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const Re={init:function(){this.setColour(me),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new ut.FieldTextInput("",ut.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(ut.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new ut.FieldImage(e,7,12,'"')}},ce={init:function(){this.setColour(me),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(ut.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},ge={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Ce={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(String).appendField(ut.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Se={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Ae={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Le={init:function(){this.WHERE_OPTIONS=[[ut.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ut.Msg.TEXT_GET_INDEX_RANDOM+1+ut.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.LISTS_GET_INDEX_GET,"MODE"),ut.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(ut.Msg.LISTS_GET_INDEX_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.updateAt_(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=t.getFieldValue("WHERE"),n="";switch(e+" "+i){case"GET FROM_START":case"GET FROM_END":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=ut.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+ut.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",ut.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:ut.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:ut.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:ut.Msg.TEXT_GET_INDEX_RANDOM};return ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+ut.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==ut.INPUT_VALUE;return t.setAttribute("at",e),t},domToMutation:function(t){var e="true"==t.getAttribute("statement");this.updateStatement_(e),t="false"!=t.getAttribute("at"),this.updateAt_(t)},updateStatement_:function(t){t!=!this.outputConnection&&(this.unplug(!0,!0),t?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt_:function(t){this.removeInput("AT"),this.removeInput("ORDINAL",!0),t?(this.appendValueInput("AT").setCheck(Number),ut.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(ut.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new ut.FieldDropdown(this.WHERE_OPTIONS,(function(e){var i="FROM_START"==e||"FROM_END"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT").appendField(e,"WHERE"),ut.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ne={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(ut.Msg.LISTS_GET_INDEX_GET+" "+ut.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(ut.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+ut.Msg.LISTS_GET_INDEX_FROM_START+"n"+ut.Msg.TEXT_CHARAT2)}},De={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(ut.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(ut.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},fe={init:function(){this.WHERE_OPTIONS_1=[[ut.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[ut.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[ut.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[ut.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[ut.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput("AT1"),this.appendDummyInput("AT2"),this.setInputsInline(!0),this.setOutput(!0,"List"),this.updateAt_(1,!0),this.updateAt_(2,!0),this.setTooltip(ut.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==ut.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==ut.INPUT_VALUE;return t.setAttribute("at2",i),t},domToMutation:function(t){var e="true"==t.getAttribute("at1"),i="true"==t.getAttribute("at2");this.updateAt_(1,e),this.updateAt_(2,i)},updateAt_:function(t,e){this.removeInput("AT"+t),this.removeInput("ORDINAL"+t,!0),e?(this.appendValueInput("AT"+t).setCheck(Number),ut.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(ut.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new ut.FieldDropdown(this["WHERE_OPTIONS_"+t],(function(i){var n="FROM_START"==i||"FROM_END"==i;if(n!=e){var s=this.sourceBlock_;return s.updateAt_(t,n),s.setFieldValue(i,"WHERE"+t),null}}));this.getInput("AT"+t).appendField(i,"WHERE"+t),1==t&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"))}},Fe={init:function(){this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(ut.Msg.LISTS_GET_INDEX_GET+" "+ut.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(ut.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(ut.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(ut.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},Pe={init:function(){var t=[[ut.Msg.MIXLY_EQUALS,"==="],[ut.Msg.MIXLY_STARTSWITH,"startswith"],[ut.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(me),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new ut.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},ve={init:function(){this.setColour(me),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(ut.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_COMPARETO_HELP)}},Ye={init:function(){var t=[[ut.Msg.TEXT_UPPER,"upper"],[ut.Msg.TEXT_TITLE,"title"],[ut.Msg.TEXT_CAPITALIZE,"capitalize"],[ut.Msg.TEXT_SWAPCASE,"swapcase"],[ut.Msg.TEXT_LOWER,"lower"]];this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ut.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:ut.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:ut.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:ut.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:ut.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:ut.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},xe={init:function(){var t=[[ut.Msg.TEXT_LJUST,"ljust"],[ut.Msg.TEXT_CENTER,"center"],[ut.Msg.TEXT_RJUST,"rjust"]];this.setColour(me),this.appendValueInput("VAR").appendField(new ut.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(ut.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(ut.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},Xe={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(ut.Msg.MIXLY_MID+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(ut.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},be={init:function(){this.setColour(me),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},ye={init:function(){this.setColour(me),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(ut.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(ut.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Ve={init:function(){this.setColour(me),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(ut.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(ut.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},Be={init:function(){var t=[[ut.Msg.TEXT_TRIM_BOTH,"strip"],[ut.Msg.TEXT_TRIM_LEFT,"lstrip"],[ut.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(me),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ut.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new ut.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(ut.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:ut.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:ut.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:ut.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Ge={init:function(){this.setColour(me),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new ut.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ut.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_MIXPY_TEXT_FORMAT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("text_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},bi={init:function(){this.setColour(xi),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},yi={init:function(){this.setColour(xi),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Vi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_KEYS),this.setTooltip(ut.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Bi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(ut.Msg.DICTS_GET_TOOLTIP)}},Gi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(ut.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(ut.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Ui={init:function(){this.setColour(xi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(ut.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},wi={init:function(){this.setColour(xi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(ut.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_DELETE_TOOLTIP)}},ki={init:function(){this.setColour(xi),this.appendValueInput("DICT2").setCheck("Dict").appendField(ut.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(ut.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MID),this.setTooltip(ut.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_CLEAR),this.setTooltip(ut.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_ITEMS),this.setTooltip(ut.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Ki={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_VALUES),this.setTooltip(ut.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},Ji={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_LENGTH),this.setTooltip(ut.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},Qi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.DICT_DELDICT),this.setTooltip(ut.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},qi={init:function(){this.MODE=[[ut.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[ut.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(ut.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(ut.Msg.DICTS_ADD_VALUE),this.updateAt_(!0),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e="";switch(t.getFieldValue("WHERE")){case"INSERT":e=ut.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=ut.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==ut.INPUT_VALUE;return t.setAttribute("at2",e),t},domToMutation:function(t){var e="true"==t.getAttribute("at2");this.updateAt_(e)},updateAt_:function(t){this.removeInput("AT2"),this.removeInput("ORDINAL",!0),t?this.appendValueInput("AT2").setCheck(Number):this.appendDummyInput("AT2");var e=new ut.FieldDropdown(this.MODE,(function(e){var i="INSERT"==e;if(i!=t){var n=this.sourceBlock_;return n.updateAt_(i),n.setFieldValue(e,"WHERE"),null}}));this.getInput("AT2").appendField(e,"WHERE")}},zi={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(ut.Msg.DICTS_ADD_VALUE),this.setTooltip(ut.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},ji={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(ut.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(ut.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_SETDEFAULT_TOOLTIP)}},Zi={init:function(){this.setColour(xi),this.appendDummyInput("").appendField(new ut.FieldLabel(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),"TIP").appendField(" "),this.itemCount_=3,this.updateShape_(),this.setOutput(!0,"Dict"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setMutator(new ut.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("dicts_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},$i={init:function(){this.setColour(xi),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},tn={init:function(){this.setColour(xi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TO_JSON),this.setTooltip(ut.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},en={init:function(){this.setColour(xi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(ut.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0,Number)}},nn=210,sn={init:function(){var t=ut.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:ut.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:ut.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:ut.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:ut.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:ut.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:ut.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},on={init:function(){var t=ut.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=ut.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new ut.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},_n={init:function(){var t=[[ut.Msg.LOGIC_OPERATION_AND,"AND"],[ut.Msg.LOGIC_OPERATION_OR,"OR"],[ut.Msg.LOGIC_OPERATION_NOR,"NOR"],[ut.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new ut.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:ut.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:ut.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:ut.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:ut.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},pn={init:function(){this.setColour(nn),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(ut.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(ut.Msg.LOGIC_NEGATE_TOOLTIP)}},an={init:function(){var t=[[ut.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[ut.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(nn),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new ut.FieldDropdown(t),"BOOL"),this.setTooltip(ut.Msg.LOGIC_BOOLEAN_TOOLTIP)}},un={init:function(){this.setColour(nn),this.setOutput(!0),this.appendDummyInput().appendField(ut.Msg.LOGIC_NULL),this.setTooltip(ut.Msg.LOGIC_NULL_TOOLTIP)}},rn={init:function(){this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").appendField(ut.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(ut.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},ln={init:function(){var t=[[ut.Msg.TEXT_APPEND_TO,"in"],[ut.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new ut.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(ut.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.IN)}},dn={init:function(){var t=[[ut.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[ut.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(nn),this.appendValueInput("A"),this.appendValueInput("B").appendField(new ut.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},In={init:function(){this.setColour(nn),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},Tn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(ut.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},hn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_AS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Mn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG,_=ut.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},mn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(ut.Msg.MIXPY_TEXT_ENCODE).appendField(new ut.FieldDropdown([["ANSI","ANSI"],["gbk","gbk"],["utf-8","utf-8"]]),"CODE"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_USE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=ut.Msg.MIXLY_BELONG,_=ut.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},On={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+ut.Msg.MIXLY_MICROBIT_TYPE_STRING+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},En={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},Rn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},cn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ut.Msg.MICROBIT_PYTHON_TYPE)}},gn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.HTML_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Cn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},An={init:function(){this.setColour(0),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const Ln={init:function(){this.setColour(0),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_DIRS,"removedirs"]]),"MODE"),this.appendValueInput("FILE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Nn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Dn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Fn={init:function(){this.setColour(0),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Pn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MAKEDIRS,"makedirs"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ut.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+ut.Msg.MIXLY_ESP32_SET+{mkdir:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},vn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(ut.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},xn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.HTML_FILE,"isfile"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_DIR,"isdir"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean);let t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+ut.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Xn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(ut.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},bn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(ut.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},yn={};yn.NAME_TYPE=ut.PROCEDURE_CATEGORY_NAME,yn.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s"),this.appendValueInput("style").appendField(ut.Msg.MIXLY_AIP_ATTR).setAlign(ut.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Ys={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_FORM_CONTENT).appendField(new ut.FieldDropdown([[ut.Msg.HTML_TEXT,"text"],[ut.Msg.HTML_EMAIL,"email"],[ut.Msg.HTML_NUMBER,"number"],[ut.Msg.HTML_PASSWORD,"password"],[ut.Msg.HTML_CHECKBOX,"checkbox"],[ut.Msg.HTML_RADIOBUTTON,"radiobutton"],[ut.Msg.HTML_BUTTON,"button"],[ut.Msg.HTML_COLOUR,"colour"],[ut.Msg.HTML_DATE,"date"],[ut.Msg.HTML_LOCALTIME,"local time"],[ut.Msg.HTML_FILE,"file"],[ut.Msg.HTML_HIDDEN,"hidden"],[ut.Msg.HTML_IMAGE,"image"],[ut.Msg.HTML_MONTH,"month"],[ut.Msg.HTML_RANGE,"range"],[ut.Msg.HTML_RESET,"reset"],[ut.Msg.HTML_SEARCH,"search"],[ut.Msg.HTML_SUBMIT,"submit"],[ut.Msg.HTML_TELEPHONENUMBER,"telephone number"],[ut.Msg.HTML_TIME,"time"],[ut.Msg.HTML_URL,"url"],[ut.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(ut.Msg.HTML_NAME).appendField(new ut.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(ut.Msg.HTML_VALUE).appendField(new ut.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(ut.Msg.MIXLY_AIP_ATTR).setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},xs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(new ut.FieldTextInput("property"),"KEY").appendField(":").appendField(new ut.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Xs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(new ut.FieldTextInput("property"),"KEY").appendField(":").appendField(new ut.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},bs={init:function(){this.setColour(Ls),this.appendDummyInput().appendField(ut.Msg.HTML_TEXT).appendField(new ut.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ys=160,Vs={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new ut.FieldTable(""),"TEXT")}},Bs={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new ut.FieldMultilineInput(""),"TEXT")}},Gs={init:function(){this.setColour(ys),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new ut.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Us={init:function(){this.setColour(ys),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},ws={init:function(){this.setColour(ys),this.appendDummyInput().appendTitle("Comment:").appendTitle(new ut.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},ks={init:function(){this.setColour(ys),this.appendValueInput("VALUE").appendField(ut.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Hs={init:function(){this.setColour(ys),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new ut.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(ut.Msg.TEXT_PRINT_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=ut.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+a()+"("+t+", "+e+", "+i+") or "+u()+"("+t+", "+e+", "+i+")"},ut.isNumber(n)&&ut.isNumber(s)&&ut.isNumber(o))n=parseFloat(n),s=parseFloat(s),o=Math.abs(parseFloat(o)),0==n%1&&0==s%1&&0==o%1?(n<=s?(s++,t=0==n&&1==o?s:n+", "+s,1!=o&&(t+=", "+o)):t=n+", "+--s+", -"+o,t="range("+t+")"):(t=n",GTE:">="};const Dp=function(t,e){var i=this.getFieldValue("OP"),n="&&"==i?e.ORDER_LOGICAL_AND:e.ORDER_LOGICAL_OR,s=e.valueToCode(this,"A",n)||"False",o=e.valueToCode(this,"B",n)||"False";if("AND"==i)var _=s+" and "+o;else if("OR"==i)_=s+" or "+o;else if("NOR"==i)_="not("+s+"^"+o+")";else _=s+"^"+o;return[_,n]},fp=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Fp=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Pp=function(t,e){return["None",e.ORDER_ATOMIC]},vp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"False";return["("+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"False")+" if "+i+" else "+(e.valueToCode(this,"C",e.ORDER_ATOMIC)||"False")+")",e.ORDER_ATOMIC]},Yp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},xp=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''";return[i+" "+this.getFieldValue("BOOL")+" "+n,e.ORDER_ATOMIC]},Xp=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},bp=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},yp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Vp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Bp=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Gp=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Up=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},wp=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},kp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Hp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},Wp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},Kp=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},Jp=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},Qp=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},qp=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},zp=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},jp=function(t,e){var i=this.getFieldValue("MODE"),n=0;return n="start"==i?0:"current"==i?1:2,e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".seek("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+","+n+")\n"},Zp=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},$p=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},ta=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},ea=function(t,e){return e.definitions_.import_os="import os","os.rename("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"NEWFILE",e.ORDER_ATOMIC)+")\n"},ia=function(t,e){e.definitions_.import_os="import os";var i=e.valueToCode(this,"FILE",e.ORDER_ATOMIC);return["os."+this.getFieldValue("MODE")+"("+i+")",e.ORDER_ATOMIC]},na=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = sdcard.SDCard("+e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PINSUB",e.ORDER_ATOMIC)+")\n"},sa=function(t,e){return e.definitions_.import_os="import os",e.definitions_.import_sdcard="import sdcard","os.mount("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DIR",e.ORDER_ATOMIC)+")\n"},oa=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),ut.Procedures.NAME_TYPE),n=e.statementToCode(this,"STACK")||" pass\n";e.INFINITE_LOOP_TRAP&&(n=e.INFINITE_LOOP_TRAP.replace(/%1/g,"'"+this.id+"'")+n);var s=e.valueToCode(this,"RETURN",e.ORDER_NONE)||"";s&&(s=" return "+s+"\n");for(var o=[],_=0;_\n\n\n\t\n"+e.statementToCode(this,"HEAD")+"\n\n"+e.statementToCode(this,"BODY")+"\n\n'''",e.ORDER_ATOMIC]},Ba=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"\n"+i+"\n"},Ga=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t\n'+i+"\n";else s="<"+n+">\n"+i+"\n";return s},Ua=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"\n"},wa=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"\n"},ka=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Ha=function(t,e){return'"},Wa=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},Ka=function(){return this.getFieldValue("TEXT")+"\n"},Ja=function(t){return t.getFieldValue("TEXT")+"\n"},Qa=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},qa=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},za=function(){return""},ja=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},Za=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+"while True:\n"+o.join("")+_.join("\n"):e.join("\n")+"\n"+n.join("\n")+"\n"+s.join("")+"\n"+t+_.join("\n")},tu.scrubNakedValue=function(t){return t+"\n"},tu.quote_=function(t){var e="'";return-1!==(t=t.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n")).indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},tu.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},tu.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=ut.utils.string.wrap(o,tu.COMMENT_WRAP-3),n+=tu.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const eu="#74A55B",iu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MIDI),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_RGB_PIN_COUNT)}},nu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},su={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},ou={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},_u={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendValueInput("TICKS").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ut.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ut.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},pu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},au={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_RESET)}},uu={init:function(){this.setColour(eu),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ru={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_SETONOFF)}},lu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},du={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_GETONOFF)}},Iu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_EXTERN_LED),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_EXTERN_LED_SETBRIGHT)}},Tu={init:function(){this.setColour(eu),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.MIXLY_SERVO),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},hu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_MOVE)}},Mu={init:function(){this.setColour(eu),this.appendValueInput("VAR").appendField("360°"+ut.Msg.MIXLY_SERVO),this.appendValueInput("SPEED",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SETTING+ut.Msg.blockpy_turtle_rotate+ut.Msg.MIXLY_SPEED+" (-10~10)"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_360_TOOLTIP)}},mu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("180°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_MOVE)}},Ou={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("360°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("NUM",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SERVO_SPEED_TOOLIPS)}},Eu={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("180°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ru={init:function(){this.setColour(eu),this.appendValueInput("PIN",Number).appendField("360°"+ut.Msg.MIXLY_SERVO).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},cu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("初始化").setCheck("var"),this.appendDummyInput().appendField("电机驱动"),this.appendDummyInput().appendField("地址").appendField(new ut.FieldDropdown([["A","ms32006.ADDRESS_A"],["B","ms32006.ADDRESS_B"]]),"mode"),this.appendValueInput("SUB1").setCheck("var").setAlign(ut.inputs.Align.RIGHT).appendField("通信"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("初始化MS32006电机驱动,使用I2C通信")}},gu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("直流电机").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ut.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"],[ut.Msg.MOTOR_N,"ms32006.MOT_N"],[ut.Msg.MOTOR_P,"ms32006.MOT_P"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置直流电机的状态及转速(0-100)")}},Cu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("步进电机").setCheck("var"),this.appendDummyInput().appendField("选择").appendField(new ut.FieldDropdown([["A","ms32006.MOT_A"],["B","ms32006.MOT_B"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"ms32006.MOT_CW"],[ut.Msg.ANTI_CLOCKWISE,"ms32006.MOT_CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField("转速"),this.appendValueInput("steps").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField("步数"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip("设置步进电机的状态、转速、步数(0-2047)")}},Su={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_SETUP).setCheck("var"),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(ut.Msg.MIXLY_RGB_PIN_COUNT)}},Au={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MP)}},Lu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Nu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_WRI)}},Du={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"uart").appendField(new ut.FieldDropdown([["uart1","uart1"],["uart2","uart2"]]),"key"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO+"SYN6288"+ut.Msg.MIXLY_AipSpeech_synthesis),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},fu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_SET_VOLUME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Fu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_VOLUME),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SET_VOLUME_TOOLTIP)}},Pu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_PLAY_HINTS),this.appendDummyInput().appendField(ut.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PLAY_HINTS_TOOLTIP)}},vu={init:function(){this.setColour(eu),this.appendValueInput("SUB").appendField("SYN6288"),this.appendValueInput("data").setCheck(String).appendField(ut.Msg.MIXLY_AipSpeech_synthesis),this.appendValueInput("VOICE").setCheck(Number).appendField(ut.Msg.MIXLY_BACKGROUND_MUSIC),this.appendDummyInput().appendField(ut.Msg.MIXLY_PROGRAM_BLOCK).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"mode"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_PLAY_TTS_TOOLTIP)}},Yu={init:function(){this.setColour(eu),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.extern_addr),"PIN"),this.setOutput(!0,Number)}},xu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Xu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_SPEED),this.setOutput(!0,Number),this.setInputsInline(!0)}},bu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_TRAFFIC_LIGHT).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.LISTS_SET_INDEX_SET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_Turn_off_display,"0"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_RED_ON,"1"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_RED_BLINK,"2"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_ON,"3"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_YELLOW_BLINK,"4"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_ON,"5"],[ut.Msg.MIXLY_TRAFFIC_LIGHT_GREEN_BLINK,"6"]]),"light"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},yu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_WHITE,"W"],[ut.Msg.COLOUR_RGB_RED,"R"],[ut.Msg.COLOUR_RGB_YELLOW,"Y"],[ut.Msg.COLOUR_RGB_GREEN,"G"],[ut.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendValueInput("value").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.BRIGHTNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Vu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_WHITE,"W"],[ut.Msg.COLOUR_RGB_RED,"R"],[ut.Msg.COLOUR_RGB_YELLOW,"Y"],[ut.Msg.COLOUR_RGB_GREEN,"G"],[ut.Msg.COLOUR_RGB_BLUE,"B"]]),"color").appendField("LED").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.BRIGHTNESS),this.setOutput(!0,Number),this.setInputsInline(!0)}},Bu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"[0]"],[ut.Msg.MIXLY_SPEED,"[1]"],[ut.Msg.MATH_SINGLE_OP_ABSOLUTE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[2]"],[ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"[3]"],[ut.Msg.MIXLY_MIXBOT_SERVO_BLOCK_OR_NOT,"[4]"],[ut.Msg.MIXLY_MIXBOT_SERVO_FINISH_OR_NOT,"[5]"],[ut.Msg.MIXLY_ALL,""]]),"status"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Gu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_SET_STOP_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_KEEP,"0"],[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_COAST,"1"],[ut.Msg.MIXLY_MIXBOT_SERVO_STOP_MODE_BRAKE,"2"]]),"status"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Uu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_STOP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},wu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MATH_SINGLE_OP_ABSOLUTE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"0"],[ut.Msg.MIXLY_MIXBOT_SERVO_NEAREST_PATH,"1"],[ut.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.appendValueInput("angle").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_SERVO_ABSOLUTE_ANGLE_TOOLTIP)}},ku={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ORIGIN_PATH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Hu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField("("+ut.Msg.MIXLY_MIXBOT_SERVO_LIKE_ENCODING_MOTOR+")").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendValueInput("angle").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_DISPLAY_MATRIX_ROTATE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_SERVO_RELATIVE_ANGLE_TOOLTIP)}},Wu={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.ME_GO_MOTOR_EXTERN+ut.Msg.MIXLY_SERVO_MOTOR).appendField(ut.Msg.MIXLY_RELATIVE+ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE+ut.Msg.MSG.run).appendField("("+ut.Msg.MIXLY_MIXBOT_SERVO_LIKE_ORDINARY_MOTOR+")").appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LEFT,"0"],[ut.Msg.MIXLY_RIGHT,"1"]]),"mode"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MODE).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPEED+ut.Msg.MIXLY_MODE,"0"],[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER+ut.Msg.MIXLY_MODE,"1"]]),"status"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField("%"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SERVO_TURN_DIRECTION).setAlign(ut.inputs.Align.RIGHT).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"0"],[ut.Msg.ANTI_CLOCKWISE,"2"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ku={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MOTOR,"ext_motor"],[ut.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ut.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ut.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ut.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ut.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ut.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ut.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_EXTERN_GET_ADDR),this.setOutput(!0),this.setInputsInline(!0)}},Ju={init:function(){this.setColour(eu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.ME_GO_MOTOR_EXTERN).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MOTOR,"ext_motor"],[ut.Msg.MIXLY_TRAFFIC_LIGHT,"ext_traffic"],[ut.Msg.COLOUR_RGB_WHITE+"LED","W_LED"],[ut.Msg.COLOUR_RGB_RED+"LED","R_LED"],[ut.Msg.COLOUR_RGB_YELLOW+"LED","Y_LED"],[ut.Msg.COLOUR_RGB_GREEN+"LED","G_LED"],[ut.Msg.COLOUR_RGB_BLUE+"LED","B_LED"],[ut.Msg.MIXLY_SERVO_MOTOR,"ext_servo"]]),"name"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_EXTERN_SET_ADDR),this.appendValueInput("old").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE),this.appendValueInput("new").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_UPDATE),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Qu="#6C9858",qu={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([["L1","1"],["L2","2"]]),"op"),this.setOutput(!0)}},zu={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_ON,"1"],[ut.Msg.MIXLY_ESP32_OFF,"0"],[ut.Msg.MIXLY_ESP32_TOGGLE,"-1"]]),"flag"),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},ju={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},Zu={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},$u={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},tr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_BUILDIN_LED+ut.Msg.MIXLY_BRIGHTNESS+"(0-100%)")}},er={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING),this.appendValueInput("led").appendField(ut.Msg.MIXLY_BUILDIN_LED),this.appendDummyInput("").appendField(ut.Msg.MIXLY_LCD_SETCOLOR).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_LIGHT_RED,"1"],[ut.Msg.MIXLY_LIGHT_GREEN,"2"],[ut.Msg.MIXLY_LIGHT_BLUE,"3"],[ut.Msg.MIXLY_LIGHT_YELLOW,"4"],[ut.Msg.MIXLY_LIGHT_CYAN,"5"],[ut.Msg.MIXLY_LIGHT_PURPLE,"6"],[ut.Msg.MIXLY_LIGHT_WHITE,"7"]]),"colorvalue"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},ir={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},nr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ut.Msg.MIXLY_BRIGHTNESS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},sr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendDummyInput().appendField(ut.Msg.MIXLY_PULSEIN_STAT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},or={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_SETTING).appendField(ut.Msg.MIXLY_BUILDIN_LED).appendField(new ut.FieldDropdown([[ut.Msg.COLOUR_RGB_RED,"r"],[ut.Msg.COLOUR_RGB_GREEN,"g"]]),"color"),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_BRIGHTNESS),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_BUILDIN_LED+ut.Msg.MIXLY_BRIGHTNESS+"(0-10)")}},_r={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(new ut.FieldDropdown([["L1","20"],["L2","21"]]),"op"),this.setOutput(!0)}},pr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgo_cc":case"micropython:esp32s2:mixgo_ce":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgo_me":default:this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},ar={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},ur={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RAINBOW),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},rr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.PYTHON_RANGE_STEP).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},lr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_WRI)}},dr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);switch(rt.Boards.getSelectedBoardKey()){case"micropython:esp32c3:mixgocc":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOCC);break;case"micropython:esp32c3:mixgome":default:this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MIXGOME);break;case"micropython:esp32:mPython":this.setTooltip(ut.Msg.MIXLY_RGB_NUM_R_G_B_MPYTHON)}}},Ir={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(ut.Msg.MIXLY_RGB_ALL_R_G_B_MIXGOCC)}},Tr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RGB),this.appendDummyInput("").appendField(ut.Msg.MIXLY_CHASE),this.appendValueInput("RVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_RGB_B),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.PYTHON_RANGE_STEP).appendField(ut.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},hr={init:function(){this.setColour(Qu),this.appendValueInput("TICKS").setCheck(Number).appendField(ut.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(ut.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(ut.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_SET_TEMPO)}},Mr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Get_current_tempo),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_GET_TEMPO)}},mr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_music),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_RESET)}},Or={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},Er={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.appendValueInput("time").setCheck(Number).appendField(ut.Msg.MIXLY_DURATION),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},Rr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cr={init:function(){this.setColour(Qu),this.appendValueInput("LIST").appendField(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_MUSIC_PLAY_LISTS)}},gr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([["1","1"],["2","2"],["3","3"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"],[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Cr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField("MixGo Car").appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Sr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField("MixGo Car").appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip("")}},Ar={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([[ut.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ut.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_STEPPER_SET_SPEED),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Lr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MOTOR_DC).appendField(new ut.FieldDropdown([[ut.Msg.MIXLYCAR_WHEEL_LEFT,"L"],[ut.Msg.MIXLYCAR_WHEEL_RIGHT,"R"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_STOP).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Nr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_MOTOR_STATUS),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_STATUS_TOOLTIP)}},Dr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ut.Msg.MIXLY_SPEED,"SPEED"],[ut.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},fr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Fr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXBOT).appendField(ut.Msg.MIXLY_MOTOR).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"1"],[ut.Msg.TEXT_TRIM_RIGHT,"2"],[ut.Msg.TEXT_TRIM_BOTH,"0"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BLE_POWER,"PWR"],[ut.Msg.MIXLY_SPEED,"SPEED"],[ut.Msg.MIXLY_MIXBOT_MOTOR_TURNS,"TURNS"]]),"mode"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOVE_TOOLTIP)}},Pr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_BUZZER),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"0"],[ut.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"1"]]),"on_off"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},vr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(new ut.FieldDropdown([[ut.Msg.blockpy_forward,"F"],[ut.Msg.blockpy_backward,"B"],[ut.Msg.blockpy_left,"L"],[ut.Msg.blockpy_right,"R"]]),"VAR"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Yr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(new ut.FieldDropdown([[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"VAR"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},xr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.BITBOT).appendField(ut.Msg.MIXLY_MOTOR).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"0"],[ut.Msg.TEXT_TRIM_RIGHT,"1"]]),"wheel"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Direction).appendField(new ut.FieldDropdown([[ut.Msg.CLOCKWISE,"CW"],[ut.Msg.ANTI_CLOCKWISE,"CCW"],[ut.Msg.MOTOR_P,"P"],[ut.Msg.MOTOR_N,"N"]]),"direction"),this.appendValueInput("speed").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.MIXLY_SPEED),this.appendDummyInput("").appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Xr={init:function(){this.setColour(Qu),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_MIXBOT_SOUND_SET_LOUDNESS),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},br={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_MIXBOT_SOUND_LOUDNESS+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},yr={init:function(){this.setColour(Qu),this.appendValueInput("bright").appendField(ut.Msg.MIXLY_SETTING+ut.Msg.MIXLY_MIXBOT_BUZZER+ut.Msg.MIXLY_MP3_VOL),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_SETONOFF)}},Vr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.MIXLY_MIXBOT_BUZZER+ut.Msg.MIXLY_MP3_VOL+"(%)"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_LED_GETONOFF)}},Br={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_RECORD_AUDIO).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendValueInput("TIME").setCheck(Number).appendField(ut.Msg.MIXLY_GET_PRESSES_TIME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Gr={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_PLAY_AUDIO).appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},Ur={init:function(){this.setColour(Qu),this.appendValueInput("PATH").appendField(ut.Msg.MIXLY_PLAY_ONLINE_AUDIO).appendField("URL"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},wr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_TONE),this.appendValueInput("pitch").setCheck(Number).appendField(ut.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},kr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_NOTONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Hr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.LISTS_SET_INDEX_SET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendValueInput("duty").setCheck(Number).setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT),this.appendDummyInput().appendField("%"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip()}},Wr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.PIN_NUMBERING).appendField(new ut.FieldDropdown([["1","1"],["2","2"]]),"index"),this.appendDummyInput().setAlign(ut.inputs.Align.RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT+ut.Msg.MIXLY_DUTY_RATIO),this.setOutput(!0,Number),this.setInputsInline(!0)}},Kr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.LISTS_SET_INDEX_SET+ut.Msg.ME_GO_MOTOR_EXTERN).appendField(ut.Msg.MIXLY_ALL+ut.Msg.PIN_NUMBERING),this.appendValueInput("duty").setCheck(Number).setAlign(ut.ALIGN_RIGHT).appendField(ut.Msg.blynk_IOT_IR_POWER+ut.Msg.MIXLY_PINMODEOUT+ut.Msg.MIXLY_FREQUENCY),this.appendDummyInput().appendField("Hz"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MIXBOT_MOTOR_EXTERN_TOOLTIP)}},Jr={init:function(){this.setColour(Qu),this.appendDummyInput().appendField(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT),this.appendValueInput("special"),this.appendValueInput("general"),this.appendDummyInput().appendField(ut.Msg.MIXLY_RELEASE).appendField(new ut.FieldDropdown([[ut.Msg.MICROPYTHON_DISPLAY_YES,"True"],[ut.Msg.MICROPYTHON_DISPLAY_NO,"False"]]),"release"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.ANALOG+ut.Msg.MIXLY_KEYBOARD_INPUT)}},Qr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SPECIAL_KEY).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPECIAL_KEY0,"0"],[ut.Msg.MIXLY_SPECIAL_KEY1,"1"],[ut.Msg.MIXLY_SPECIAL_KEY2,"2"],[ut.Msg.MIXLY_SPECIAL_KEY1,"4"],[ut.Msg.MIXLY_SPECIAL_KEY8,"8"],[ut.Msg.MIXLY_SPECIAL_KEY16,"16"],[ut.Msg.MIXLY_SPECIAL_KEY32,"32"],[ut.Msg.MIXLY_SPECIAL_KEY64,"64"],[ut.Msg.MIXLY_SPECIAL_KEY128,"128"]]),"op"),this.setOutput(!0)}},qr={init:function(){this.setColour(Qu),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GENERAL_KEY).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_SPECIAL_KEY0,"0"],["A","0x04"],["B","0x05"],["C","0x06"],["D","0x07"],["E","0x08"],["F","0x09"],["G","0x0A"],["H","0x0B"],["I","0x0C"],["J","0x0D"],["K","0x0E"],["L","0x0F"],["M","0x10"],["N","0x11"],["O","0x12"],["P","0x13"],["Q","0x14"],["R","0x15"],["S","0x16"],["T","0x17"],["U","0x18"],["V","0x19"],["W","0x1A"],["X","0x1B"],["Y","0x1C"],["Z","0x1D"],["1","0x1E"],["2","0x1F"],["3","0x20"],["4","0x21"],["5","0x22"],["6","0x23"],["7","0x24"],["8","0x25"],["9","0x26"],["0","0x27"],["ENTER","0x28"],["ESC","0x29"],["BACKSPACE","0x2A"],["TAB","0x2B"],["SPACE","0x2C"],["-","0x2D"],["=","0x2E"],["{","0x2F"],["}","0x30"],["\\","0x31"],[";","0x33"],['"',"0x34"],["`","0x35"],[",","0x36"],[".","0x37"],["/","0x38"],["CAPS_LOCK","0x39"],["F1","0x3A"],["F2","0x3B"],["F3","0x3C"],["F4","0x3D"],["F5","0x3E"],["F6","0x3F"],["F7","0x40"],["F8","0x41"],["F9","0x42"],["F10","0x43"],["F11","0x44"],["F12","0x45"],["PRINTSCREEN","0x46"],["SCROLL_LOCK","0x47"],["PAUSE","0x48"],["INSERT","0x49"],["HOME","0x4A"],["PAGE_UP","0x4B"],["DELETE","0x4C"],["END","0x4D"],["PAGE_DOWN","0x4E"],["RIGHT","0x4F"],["LEFT","0x50"],["DOWN","0x51"],["UP","0x52"],["NUM_LOCK","0x53"],["/","0x54"],["*","0x55"],["-","0x56"],["+","0x57"],["ENTER","0x58"],["1","0x59"],["2","0x5A"],["3","0x5B"],["4","0x5C"],["5","0x5D"],["6","0x5E"],["7","0x5F"],["8","0x60"],["9","0x61"],["0","0x62"],[".","0x63"]]),"op"),this.setOutput(!0)}},zr={init:function(){this.setColour(Qu),this.itemCount_=2,this.updateShape_(),this.setOutput(!0),this.setMutator(new ut.icons.MutatorIcon(["generalkey_create_with_item"],this)),this.setTooltip(ut.Msg.GENERALKEY_TUPLE_CREATE_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("generalkey_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;ne?t[e]:'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},JM={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},QM={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},qM={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},zM={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").setCheck(String).appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(ut.Msg.MIXLY_WIFI_USERNAME).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(ut.Msg.MIXLY_IOT_PASSWORD).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("PROJECT").setCheck(String).appendField(ut.Msg.MIXLY_EMQX_PROJECT).setAlign(ut.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},jM={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ut.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(ut.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_PUBLISH_TOOLTIP)}},ZM={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendValueInput("TOPIC").appendField(ut.Msg.MIXLY_EMQX_SUBSCRIBE+ut.Msg.MIXLY_MICROBIT_MSG).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(ut.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_SUBSCRIBE_TOOLTIP)}},$M={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_DISCONNECT_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},tm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_EMQX_CONNECT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},em={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_CHECK_ONENET),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},im={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ut.Msg.MQTT_Topic),this.setInputsInline(!0),this.setOutput(!0)}},nm={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT).appendField(ut.Msg.MIXLY_EMQX_PUBLISH_MSG),this.setInputsInline(!0),this.setOutput(!0)}},sm={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_ESP32_IOT_MAP_FORMATING),this.setOutput(!0)}},om={init:function(){this.setColour(GM),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROPYTHON_FORMAT+"(Json)"),this.setOutput(!0)}},_m={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO"),this.appendDummyInput().appendField(ut.Msg.MIXLY_EMQX_PING),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_EMQX_PING_TOOLTIP)}},pm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO").appendField(ut.Msg.MIXLY_GET_NTP),this.appendValueInput("addr").appendField(ut.Msg.blynk_SERVER_ADD),this.setInputsInline(!0),this.setOutput(!0)}},am={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+ut.Msg.MIXLY_MIXIO_SHARE_KEY).setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},um={init:function(){this.setColour(GM),this.appendDummyInput().appendField(ut.Msg.MIXLY_CREATE_MQTT_CLIENT_AND_CONNECT),this.appendValueInput("SERVER").appendField(ut.Msg.MIXLY_EMQX_SERVER).setAlign(ut.inputs.Align.RIGHT),this.appendValueInput("KEY").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"Mixly Key").setAlign(ut.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},rm={init:function(){this.VISITOR_ID=rt.Config.BOARD.visitorId.str32.substring(0,8).toUpperCase(),this.setColour(GM),this.appendDummyInput("").appendField(new ut.FieldTextInput(this.visitorId),"VISITOR_ID"),this.setOutput(!0,null)},onchange:function(){const t=this.getFieldValue("VISITOR_ID");this.VISITOR_ID!==t&&this.setFieldValue(this.VISITOR_ID,"VISITOR_ID")}},lm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MixIO").appendField(ut.Msg.MSG.catEthernet_clinet),this.setOutput(!0),this.setInputsInline(!0)}},dm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("HTTP"+ut.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ut.Msg.DISPLAY_IMAGE_LET2),this.appendDummyInput().appendField(ut.Msg.MIXLY_REQUESTS_GET).appendField(ut.Msg.MIXLY_GET_CURRENT_TIME).appendField(ut.Msg.MIXLY_OPEN_DEBUG).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Im={init:function(){this.setColour(GM),this.appendDummyInput().appendField("HTTP"+ut.Msg.MIXLY_Client).appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ut.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ut.Msg.MIXLY_REQUESTS_MESSAGE,"text"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Tm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MQTT"+ut.Msg.MIXLY_Client),this.appendValueInput("addr").appendField(ut.Msg.MIXLY_CONNECTTO),this.appendDummyInput().appendField(ut.Msg.MIXLY_INIT_SUBSCRIBE).appendField(ut.Msg.MQTT_Topic).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET_CURRENT_TIME,""]]),"key").appendField(ut.Msg.MIXLY_OPEN_DEBUG).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"],[ut.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"]]),"key2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},hm={init:function(){this.setColour(GM),this.appendDummyInput().appendField("MQTT"+ut.Msg.MIXLY_Client).appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_REQUESTS_LEN,"client_len"],[ut.Msg.MIXLY_REQUESTS_GET_LEN,"server_len"],[ut.Msg.MIXLY_REQUESTS_MESSAGE,"time_msg()"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},Mm=UM,mm=wM,Om=kM,Em=HM,Rm=KM,cm=225,gm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(ut.Msg.MIXLY_NETWORK_MODE).appendField(new ut.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},Cm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[ut.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_FLAG),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("op"),i=ut.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:ut.Msg.MIXLY_NETWORK_WIFI_OPEN,False:ut.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},Sm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Am={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return ut.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:ut.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},Lm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(ut.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(ut.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},Nm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_NETWORK_WIFI_CONNECT+ut.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},Dm={init:function(){this.setColour(cm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_UREQUESTS_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(ut.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(ut.Msg.HTML_PASSWORD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},fm={init:function(){this.setColour(cm),this.appendValueInput("URL").setCheck(String).appendField("URL"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_UREQUESTS_URL_TOOLTIP)}},Fm={init:function(){this.setColour(cm),this.appendValueInput("url").appendField(ut.Msg.MIXLY_ESP32_CONNECT_URL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_UREQUESTS_URL_TOOLTIP)}},Pm={init:function(){this.setColour(cm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_URL_REPONSE),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_URL_REPONSE_TOOLTIP)}},vm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[ut.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[ut.Msg.MIXLY_ESP32_NETWORK_GATEWAY,"2"],["DNS","3"]]),"mode"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:ut.Msg.MIXLY_ESP32_NETWORK_IP,1:ut.Msg.MIXLY_ESP32_NETWORK_MASK,2:ut.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},Ym={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},xm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[ut.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},Xm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(ut.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(ut.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},bm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(ut.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},ym={init:function(){this.setColour(cm),this.appendValueInput("VAR").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new ut.FieldDropdown([["TCP","TCP"],["UDP","UDP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("mode");return ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},Vm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},Bm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},Gm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},Um={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},wm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},km={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},Hm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},Wm={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},Km={init:function(){this.setColour(cm),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},Jm={init:function(){this.setColour(cm),this.appendValueInput("DOMAIN").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS_GET).appendField(new ut.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){ut.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Qm={init:function(){this.appendValueInput("VAL");var t=[[ut.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[ut.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]];this.setColour(cm),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown(t),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:ut.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:ut.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:ut.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},qm={init:function(){this.appendValueInput("VAR").appendField(ut.Msg.DISPLAY_IMAGE_LET2).setCheck(String);this.setColour(cm),this.appendDummyInput("").appendField(ut.Msg.blockpy_CONDUCT).appendField(new ut.FieldDropdown([["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]),"DIR"),this.appendDummyInput("").appendField(ut.Msg.blockpy_REQUESTS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{forward:ut.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:ut.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))}},zm={init:function(){this.setColour(cm),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(ut.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},jm={init:function(){this.setColour(cm),this.appendDummyInput("").appendField(new ut.FieldDropdown([["ntp.aliyun.com","ntp.aliyun.com"],["ntp1.aliyun.com","ntp1.aliyun.com"],["ntp2.aliyun.com","ntp2.aliyun.com"],["ntp3.aliyun.com","ntp3.aliyun.com"],["ntp4.aliyun.com","ntp4.aliyun.com"],["ntp5.aliyun.com","ntp5.aliyun.com"],["ntp6.aliyun.com","ntp6.aliyun.com"],["ntp7.aliyun.com","ntp7.aliyun.com"],["time1.cloud.tencent.com","time1.cloud.tencent.com"],["time2.cloud.tencent.com","time2.cloud.tencent.com"],["time3.cloud.tencent.com","time3.cloud.tencent.com"],["time4.cloud.tencent.com","time4.cloud.tencent.com"],["time5.cloud.tencent.com","time5.cloud.tencent.com"]]),"op"),this.setOutput(!0)}},Zm="#A58C5B",$m={init:function(){this.setColour(Zm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_IS_PRESSED),this.appendValueInput("STAT").appendField(ut.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SENOR_IS_PRESSED)}},tO={init:function(){this.setColour(Zm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_WAS_PRESSED),this.appendValueInput("STAT").appendField(ut.Msg.MIXLY_ELECLEVEL),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_SENOR_WAS_PRESSED)}},eO={init:function(){this.setColour(Zm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(ut.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.PROCEDURES_DEFRETURN_RETURN+ut.Msg.MIXLY_BUTTON+ut.Msg.MIXLY_GET_PRESSES)}},iO={init:function(){this.setColour(Zm),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_BUTTON).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MODE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[ut.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[ut.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},nO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_shake,"shake"],[ut.Msg.MIXLY_UP,"up"],[ut.Msg.MIXLY_DOWN,"down"],[ut.Msg.MIXLY_LEFT,"left"],[ut.Msg.MIXLY_RIGHT,"right"],[ut.Msg.MIXLY_MICROBIT_face_up,"face up"],[ut.Msg.MIXLY_MICROBIT_face_down,"face down"],[ut.Msg.MIXLY_MICROBIT_freefall,"freefall"],["3g","3g"],["6g","6g"],["8g","8g"]]),"gesture"),this.appendStatementInput("DO").appendField(ut.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ut.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ut.Msg.MSG.catSensor,s=ut.Msg.MIXLY_MICROBIT_JS_STATE,o=ut.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ut.Msg.MIXLY_MICROBIT_shake,up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT,"face up":ut.Msg.MIXLY_MICROBIT_face_up,"face down":ut.Msg.MIXLY_MICROBIT_face_down,freefall:ut.Msg.MIXLY_MICROBIT_freefall,"3g":"3g","6g":"6g","8g":"8g"}[e]+o}))}},sO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_ADXL345).setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},oO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_LIGHT_LEVEL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_ESP32_SENSOR_LIGHT_LEVEL_TOOLTIP)}},_O={init:function(){var t=[[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]];this.setColour(Zm),this.appendValueInput("PIN",Number).appendField(new ut.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new ut.FieldDropdown(t),"WHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHAT");return{temperature:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:ut.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[t]}))}},pO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},aO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_SOUND),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},uO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new ut.FieldDropdown([[ut.Msg.TEXT_TRIM_LEFT,"left"],[ut.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(ut.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=ut.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=ut.Msg.MIXLY_ESP32_NEAR;return i+{left:ut.Msg.TEXT_TRIM_LEFT,right:ut.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},rO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("BMP280").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"get_BMP_temperature()"],[ut.Msg.MIXLY_GETPRESSURE,"get_BMP_pressure()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_BMP_temperature()":ut.Msg.MIXLY_MICROBIT_SENSOR_BMP_temperature_TOOLTIP,"get_BMP_pressure()":ut.Msg.MIXLY_MICROBIT_SENSOR_BMP_press_TOOLTIP}[e]}))}},lO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("SHT20").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"get_SHT_temperature()"],[ut.Msg.MIXLY_GETHUMIDITY,"get_SHT_relative_humidity()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{"get_SHT_temperature()":ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,"get_SHT_relative_humidity()":ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},dO={init:function(){this.setColour(Zm),this.appendValueInput("PIN",Number).appendField("DS18x20 "+ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_MICROBIT_SENSOR_DS18X20_TOOLTIP)}},IO={init:function(){this.setColour(Zm),this.appendDummyInput("").appendField("LM35"+ut.Msg.MIXLY_TEMP),this.appendValueInput("PIN",Number).appendField(ut.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(ut.Msg.MIXLY_TOOLTIP_LM35)}},TO={init:function(){this.setColour(Zm),this.appendValueInput("I2CSUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"I2C").setCheck("var"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["MPU9250","MPU9250"],["BMP280","BMP280"],["SHT20","SHT20"],["ADXL345","ADXL345"],["LTR308","LTR308"],["LTR381RGB","LTR381RGB"],["LTR390UV","LTR390UV"],["HP203X","HP203X"],["SHTC3","SHTC3"],["AHT21","AHT21"],["VL53L0X","VL53L0X"],["QMC5883L","QMC5883L"],["MAX30102","MAX30102"],["APDS9960","APDS9960"],["RFID","RFID"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("LTR308","key")}},hO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_MAX30102+" MAX30102"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_MAX30102_IR,"[0]"],[ut.Msg.MIXLY_ESP32_MAX30102_RED,"[1]"],[ut.Msg.MIXLY_ESP32_MAX30102_IR+","+ut.Msg.MIXLY_ESP32_MAX30102_RED,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},MO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_APDS9960+" APDS9960"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_ESP32_APDS9960_COLOR,"color"],[ut.Msg.MIXLY_ESP32_APDS9960_GESTURE,"gesture"],[ut.Msg.MIXLY_ESP32_APDS9960_APPROACH,"proximity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},mO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_ESP32_EXTERN_LIGHT+" LTR308"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_LIGHT_INTENSITY),this.setOutput(!0,Number),this.setInputsInline(!0)}},OO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.HTML_COLOUR+ut.Msg.MSG.catSensor+" LTR381RGB").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET+ut.Msg.HTML_COLOUR,"[2]"],[ut.Msg.MIXLY_GET+ut.Msg.MIXLY_IR_STRENGTH,"[1]"],[ut.Msg.MIXLY_GET+ut.Msg.MIXLY_LIGHT_STRENGTH,"[0]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},EO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_EXTERN_LIGHTUV+" LTR390UV").setCheck("var"),this.appendDummyInput().appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GET_ENV_LIGHT,"E"],[ut.Msg.MIXLY_GET_ULTRAVIOLET,"U"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},RO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_LASER_RANGE+" VL53L0X"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GET_DISTANCE+"(mm)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_TEM_HUM+" SHTC3").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},gO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_TEM_HUM+" AHT21").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETTEMPERATUE,"temperature"],[ut.Msg.MIXLY_GETHUMIDITY,"humidity"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key");return{temperature:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,relative_humidity:ut.Msg.MIXLY_MICROBIT_SENSOR_SHT_HUM_TOOLTIP}[e]}))}},CO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_Altitude+ut.Msg.MSG.catSensor+" HP203X").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_GETPRESSURE,"pressure()"],[ut.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[ut.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},SO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MIXGOPE_FIELD+ut.Msg.MSG.catSensor+" QMC5883L").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"get_bearing()"],[ut.Msg.MIXLY_TEMPERATURE,"get_temp()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},AO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_shake,"shake"],[ut.Msg.MIXLY_UP,"up"],[ut.Msg.MIXLY_DOWN,"down"],[ut.Msg.MIXLY_LEFT,"left"],[ut.Msg.MIXLY_RIGHT,"right"],[ut.Msg.MIXLY_MICROBIT_face_up,"face up"],[ut.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=ut.Msg.MIXLY_MICROBIT_JS_CURRENT,n=ut.Msg.MSG.catSensor,s=ut.Msg.MIXLY_MICROBIT_JS_STATE,o=ut.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:ut.Msg.MIXLY_MICROBIT_shake,up:ut.Msg.MIXLY_UP,down:ut.Msg.MIXLY_DOWN,left:ut.Msg.MIXLY_LEFT,right:ut.Msg.MIXLY_RIGHT,"face up":ut.Msg.MIXLY_MICROBIT_face_up,"face down":ut.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},LO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},NO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_GET+ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},DO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+ut.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new ut.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=ut.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=ut.Msg.MIXLY_MICROBIT_Direction,s=ut.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":ut.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},fO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},FO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_GETTEMPERATUE)}},PO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"heading"]]),"compass"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("compass");return ut.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:ut.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:ut.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},vO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(ut.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(ut.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},YO={init:function(){this.setColour(Zm),this.appendValueInput("SPISUB").appendField(ut.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(ut.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SETUP+ut.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(new ut.FieldDropdown([["RFID","RFID"],["WS-LoRa","Weather"]]),"key"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setFieldValue("RFID","key")}},xO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RFID_READ_CARD_UID,"id"],[ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"content"],[ut.Msg.MIXLY_ALL,"ALL"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},XO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},bO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField("RFID"+ut.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},yO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ut.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},VO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField(ut.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SUB").setCheck("var"),this.appendValueInput("SECTOR").appendField(ut.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(ut.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(ut.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},BO={init:function(){this.setColour(Zm),this.appendDummyInput().appendField("RFID"),this.appendValueInput("SUB").setCheck("var"),this.appendDummyInput("").appendField(new ut.FieldDropdown([[ut.Msg.MIXLY_RFID_SCAN_OK,"0"],[ut.Msg.MIXLY_RFID_SCAN_NOTAGERR,"1"],[ut.Msg.MIXLY_RFID_SCAN_ERROR,"2"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},GO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_MICROBIT_JS_GET).appendField(new ut.FieldDropdown([["全部(元组)","data()[0]"],["全部(json)","data()[1]"],["全部(json,附带位置信息)","data()[2]"],["编号","data()[0][0]"],["电量","data()[0][1]"],["风速","data()[0][2]"],["阵风","data()[0][3]"],["风向","data()[0][4]"],["雨量","data()[0][5]"],["温度","data()[0][6]"],["湿度","data()[0][7]"],["光照","data()[0][8]"],["紫外线","data()[0][9]"],["大气压","data()[0][10]"],["信号强度","data()[0][11]"],["信噪比","data()[0][12]"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip("返回气象数据元组 data= (设备id,电池状态,风速m/s,阵风m/s,风向°,雨量mm,温度℃,湿度%,光照Lux,UVI,大气压Pa,信号强度dB,信噪比dB)")}},UO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendDummyInput("").appendField(ut.Msg.MIXLY_SERIAL_AVAILABLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},wO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.appendValueInput("BASE").appendField("以主题"),this.appendDummyInput("").appendField("串口发送至MixIO"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},kO={init:function(){this.setColour(Zm),this.appendValueInput("SUB").appendField("无线气象站 WS-LoRa").setCheck("var"),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new ut.icons.MutatorIcon(["weather_set_label_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip()},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.updateShape_()},decompose:function(t){var e=t.newBlock("weather_set_label_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n>6),i.push(128|63&o)):(2048<=o&&o<=55295||57344<=o&&o<=65535)&&(n+=3,i.push(224|15&o>>12),i.push(128|63&o>>6),i.push(128|63&o))}for(s=0;s>8,255&n].concat(i)}(t,!0),i="",n=0;n=0?"0x700000":["mixgo_zero"].indexOf(n)>=0?"0xE00000":"0x3A0000","32x12 Matrix"==_?(e.definitions_.import_matrix32x12="import matrix32x12",i=s+" = matrix32x12.Matrix("+o+",font_address="+p+")\n"):"16x8 Matrix"==_&&(e.definitions_.import_matrix16x8="import matrix16x8",i=s+" = matrix16x8.Matrix("+o+")\n"),i},_L=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},pL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},aL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},uL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},rL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},lL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},dL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},IL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},TL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},hL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},ML=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".get_brightness()",e.ORDER_ATOMIC]},mL=function(t,e){return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},OL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("image"),e.ORDER_ATOMIC]},EL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_"+t.getFieldValue("OP")+"("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+","+e.valueToCode(t,"B",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},RL=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".map_invert("+e.valueToCode(t,"A",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},cL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC);return e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+" = ssd1306.SSD1306_I2C("+e.valueToCode(this,"row",e.ORDER_ATOMIC)+","+e.valueToCode(this,"column",e.ORDER_ATOMIC)+","+i+")\n"},gL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_str("+(e.valueToCode(this,"Text_line1",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line2",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line3",e.ORDER_ASSIGNMENT)||"''")+","+(e.valueToCode(this,"Text_line4",e.ORDER_ASSIGNMENT)||"''")+")\n"},CL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_line("+e.valueToCode(this,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"y2",e.ORDER_ATOMIC)+", 1)\n"},SL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"width",e.ORDER_ATOMIC),_=e.valueToCode(this,"height",e.ORDER_ATOMIC),p="TRUE"==this.getFieldValue("fill")?"True":"False",a=this.getFieldValue("OP");switch(p){case"True":return i+".show_fill_rect("+n+", "+s+", "+o+", "+_+","+a+")\n";case"False":return i+".show_rect("+n+", "+s+", "+o+", "+_+","+a+")\n"}},AL=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"length",e.ORDER_ATOMIC);return i+".show_"+this.getFieldValue("direction")+"("+n+", "+s+", "+o+", 1)\n"},LL=function(t,e){return["ON"==this.getFieldValue("ONOFF")?"1":"0",e.ORDER_ATOMIC]},NL=function(t,e){e.definitions_.import_matrix="import matrix";var i=t.getFieldValue("OP");return[e.valueToCode(t,"img",e.ORDER_ATOMIC)+".shift_"+i+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},DL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_ssd1306="import ssd1306",e.definitions_.import_machine="import machine",i+".show_fill("+this.getFieldValue("key")+")\n"},fL=function(t,e){return["matrix.Image."+this.getFieldValue("ANIMATION"),e.ORDER_ATOMIC]},FL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x",e.ORDER_ATOMIC),s=e.valueToCode(this,"y",e.ORDER_ATOMIC),o=e.valueToCode(this,"r",e.ORDER_ATOMIC),_="TRUE"==this.getFieldValue("fill")?"True":"False",p=this.getFieldValue("OP");switch(_){case"True":return i+".show_fill_circle("+n+", "+s+", "+o+", "+p+")\n";case"False":return i+".show_circle("+n+", "+s+", "+o+", "+p+")\n"}},PL=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306";var n=e.valueToCode(this,"x0",e.ORDER_ATOMIC),s=e.valueToCode(this,"y0",e.ORDER_ATOMIC),o=e.valueToCode(this,"x1",e.ORDER_ATOMIC),_=e.valueToCode(this,"y1",e.ORDER_ATOMIC),p=e.valueToCode(this,"x2",e.ORDER_ATOMIC),a=e.valueToCode(this,"y2",e.ORDER_ATOMIC),u="TRUE"==this.getFieldValue("fill")?"True":"False",r=this.getFieldValue("OP");switch(u){case"True":return i+".show_fill_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n";case"False":return i+".show_triangle("+n+", "+s+", "+o+", "+_+", "+p+", "+a+", "+r+")\n"}},vL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_bitmap("+e.valueToCode(this,"START_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"START_Y",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"bitmap_name",e.ORDER_ATOMIC)+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+")\n"},YL=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_ssd1306="import ssd1306",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".show_pixel("+e.valueToCode(this,"POS_X",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"POS_Y",e.ORDER_ATOMIC)+")\n"},xL=function(t,e){var i,n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),o=this.getFieldValue("key");return"TM1650"==o?(e.definitions_.import_tm1650="import tm1650",i=n+" = tm1650."+o+"("+s+")\n"):"TM1637"==o&&(e.definitions_.import_tm1637="import tm1637",i=n+" = tm1637."+o+"("+s+")\n"),i},XL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+this.getFieldValue("STAT")+"()\n"},bL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".shownum("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},yL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".showDP("+e.valueToCode(this,"NO",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"},VL=function(t,e){return e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".intensity("+e.valueToCode(this,"VALUE",e.ORDER_ATOMIC)+")\n"},BL=function(t,e){e.definitions_.import_st7789="import st7789";var i=rt.Boards.getSelectedBoardKey().split(":")[2],n="";n=["mpython","mixgo_pe","mixgo_nova"].indexOf(i)>=0?"0x700000":["mixgo_zero"].indexOf(i)>=0?"0xE00000":"0x3A0000";var s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),o=e.valueToCode(this,"SPISUB",e.ORDER_ATOMIC),_=e.valueToCode(this,"PINCS",e.ORDER_ATOMIC),p=e.valueToCode(this,"PINDC",e.ORDER_ATOMIC);return s+" = st7789.ST7789("+o+","+e.valueToCode(this,"WIDTH",e.ORDER_ATOMIC)+","+e.valueToCode(this,"HEIGHT",e.ORDER_ATOMIC)+",dc_pin="+p+",cs_pin="+_+",rotation="+this.getFieldValue("rotate")+",font_address="+n+")\n"},GL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".image("+n+",x = "+s+",y = "+o+",size = "+_+",color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},UL=function(t,e){var i="0x"+this.getFieldValue("COLOR").slice(1);return["0x"+((16252928&i)>>8|(64512&i)>>5|(255&i)>>3).toString(16),e.ORDER_ATOMIC]},wL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),u=this.getFieldValue("center");if("0x"==a.slice(0,2))var r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color="+a+")\n";else{const t=a.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r=i+".shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+u+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},kL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p=i+".frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p=i+".frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},HL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u=i+".scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},WL=function(t,e){return e.definitions_.import_st7789="import st7789",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".fill(st7789."+this.getFieldValue("key")+")\n"},KL=function(t,e){e.definitions_.import_st7789="import st7789";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"x1",e.ORDER_ATOMIC),s=e.valueToCode(this,"y1",e.ORDER_ATOMIC),o=e.valueToCode(this,"x2",e.ORDER_ATOMIC),_=e.valueToCode(this,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=i+".line("+n+", "+s+", "+o+", "+_+", color="+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=i+".line("+n+", "+s+", "+o+", "+_+", color=0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},JL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=this.getFieldValue("key"),o=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC);return e.definitions_.import_i2clcd="import i2clcd",i+" = i2clcd.LCD("+n+",lcd_width="+s+",i2c_addr="+o+")\n"},QL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},qL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".print("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",column = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",line = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",delay="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},zL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".backlight("+this.getFieldValue("key")+")\n"},jL=function(t,e){return e.definitions_.import_i2clcd="import i2clcd",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".clear()\n"},ZL=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(this,"I2CSUB",e.ORDER_ATOMIC),s=e.valueToCode(this,"ADDR",e.ORDER_ATOMIC),o=rt.Boards.getSelectedBoardKey().split(":")[2],_="";return _=["mpython","mixgo_pe","mixgo_nova"].indexOf(o)>=0?"0x700000":["mixgo_zero"].indexOf(o)>=0?"0xE00000":"0x3A0000",e.definitions_.import_oled128x64="import oled128x64",i+" = oled128x64.OLED("+n+",address="+s+",font_address="+_+")\n"},$L=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},tN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".image("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+")\n"},eN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},iN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",x = "+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+",center = "+this.getFieldValue("center")+")\n"},nN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},sN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},oN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},_N=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",y = "+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+",size = "+e.valueToCode(this,"size",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},pN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".fill(0)\n"+i+".show()\n"},aN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},uN=function(t,e){return e.definitions_.import_oled128x64="import oled128x64",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+"))",e.ORDER_ATOMIC]},rN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".pixel(int("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+"), int("+e.valueToCode(this,"y",e.ORDER_ASSIGNMENT)+"), "+e.valueToCode(this,"STAT",e.ORDER_ATOMIC)+")\n"+i+".show()\n"},lN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=t.getFieldValue("state");return i+"."+t.getFieldValue("shape")+"("+n+", "+s+", "+o+", "+_+", "+p+")\n"+i+".show()\n"},dN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC),n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=t.getFieldValue("state");return i+"."+("0"==t.getFieldValue("dir_h_v")?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\n"+i+".show()\n"},IN=function(t,e){e.definitions_.import_oled128x64="import oled128x64";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return i+".line("+e.valueToCode(t,"x1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y1",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"x2",e.ORDER_ATOMIC)+", "+e.valueToCode(t,"y2",e.ORDER_ATOMIC)+", "+t.getFieldValue("state")+")\n"+i+".show()\n"},TN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"},hN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),o=this.getFieldValue("center");return"mixgo_zero"==i||"mixgo_nova"==i?(e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.shows("+n+",space = "+s+",center = "+o+")\n"):(e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.shows("+n+",space = "+s+",center = "+o+")\n")},MN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},mN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",delay = "+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+")\n"},ON=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_oled";var n="onboard_oled.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}else{e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix";n="onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+")\n"}return n},EN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix","onboard_matrix.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",speed ="+e.valueToCode(this,"time",e.ORDER_ASSIGNMENT)+",space = "+e.valueToCode(this,"space",e.ORDER_ASSIGNMENT)+")\n"},RN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},cN=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_matrix"]="from "+i+" import onboard_matrix",["onboard_matrix."+t.getFieldValue("image"),e.ORDER_ATOMIC]},gN=function(t,e){var i={"#000000":"0","#ff0000":"1"};function n(t){let e="";if(t.length%2==1&&(t="0"+t),t.length<8){let e=8-t.length;for(let i=1;i<=e;i++)t="0"+t}for(let i=1;i<=t.length;i++)i%2==0&&i!==t.length?e=e+t[i-1]+",0x":e+=t[i-1];return"0x"+e}let s=[];for(let e=0;e<12;e++){let o="",_=0,p=0;for(let n=0;n<32;n++)n<8?p=7-n:n<16?p=23-n:n<24?p=39-n:n<32&&(p=55-n),_+=Number(i[t.getFieldValue(e+"-"+n)])*Math.pow(2,31-p);o+=n(_.toString(16)),s.unshift(o)}let o=[];for(let t=0;t>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},tD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=this.getFieldValue("center"),u=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==u.slice(0,2))var r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color="+u+")\n";else{const t=u.match(/\d+/g);var l="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");r="onboard_tft.shows("+n+",x = "+s+",y = "+o+",size = "+_+",space = "+p+",center = "+a+",color=0x"+((16252928&l)>>8|(64512&l)>>5|(255&l)>>3).toString(16)+")\n"}return r},eD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.frame("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},iD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==_.slice(0,2))var p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color="+_+")\n";else{const t=_.match(/\d+/g);var a="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");p="onboard_tft.frame("+n+",size = "+s+",delay = "+o+",color=0x"+((16252928&a)>>8|(64512&a)>>5|(255&a)>>3).toString(16)+")\n"}return p},nD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_oled"]="from "+i+" import onboard_tft","onboard_tft.scroll("+e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)+",color=0xffff)\n"},sD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"time",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"space",e.ORDER_ASSIGNMENT),a=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==a.slice(0,2))var u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color="+a+")\n";else{const t=a.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft.scroll("+n+",y = "+s+",size = "+o+",speed ="+_+",space = "+p+",color=0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\n"}return u},oD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"w",e.ORDER_ATOMIC),_=e.valueToCode(t,"h",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),a=t.getFieldValue("shape");if("0x"==p.slice(0,2))var u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var r="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");u="onboard_tft."+a+"("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&r)>>8|(64512&r)>>5|(255&r)>>3).toString(16)+")\nonboard_tft.show()\n"}return u},_D=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"length",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("dir_h_v");if("0x"==_.slice(0,2))var a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", "+_+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft."+("0"==p?"v":"h")+"line("+n+", "+s+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},pD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x1",e.ORDER_ATOMIC),s=e.valueToCode(t,"y1",e.ORDER_ATOMIC),o=e.valueToCode(t,"x2",e.ORDER_ATOMIC),_=e.valueToCode(t,"y2",e.ORDER_ATOMIC),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", "+p+")\nonboard_tft.show()\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.line("+n+", "+s+", "+o+", "+_+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\nonboard_tft.show()\n"}return a},aD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return"onboard_tft.fill(0)\nonboard_tft.show()\n"},uD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft."+t.getFieldValue("OP")+"("+e.valueToCode(t,"val",e.ORDER_ATOMIC)+")\n"},rD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft",["hex(onboard_tft.pixel(int("+e.valueToCode(t,"x",e.ORDER_ATOMIC)+"), int("+e.valueToCode(t,"y",e.ORDER_ATOMIC)+")))",e.ORDER_ATOMIC]},lD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==o.slice(0,2))var _="onboard_tft.pixel(int("+n+"), int("+s+"), "+o+")\nonboard_tft.show()\n";else{const t=o.match(/\d+/g);var p="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");_="onboard_tft.pixel(int("+n+"), int("+s+"), 0x"+((16252928&p)>>8|(64512&p)>>5|(255&p)>>3).toString(16)+")\nonboard_tft.show()\n"}return _},dD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";return["onboard_tft.get_brightness()",e.ORDER_ATOMIC]},ID=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft","onboard_tft.set_brightness("+e.valueToCode(this,"x",e.ORDER_ASSIGNMENT)+")\n"},TD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT);if("0x"==n.slice(0,2))var s="onboard_tft.fill("+n+")\nonboard_tft.show()\n";else{const t=n.match(/\d+/g);var o="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");s="onboard_tft.fill(0x"+((16252928&o)>>8|(64512&o)>>5|(255&o)>>3).toString(16)+")\nonboard_tft.show()\n"}return s},hD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"x",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"y",e.ORDER_ASSIGNMENT),o=e.valueToCode(this,"size",e.ORDER_ASSIGNMENT),_=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),p=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==p.slice(0,2))var a=_+"=Clock("+n+","+s+","+o+","+p+")\n";else{const t=p.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a=_+"=Clock("+n+","+s+","+o+",0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+")\n"}return a},MD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_rtctime()\n"},mD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".set_time("+e.valueToCode(this,"h",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"m",e.ORDER_ASSIGNMENT)+","+e.valueToCode(this,"s",e.ORDER_ASSIGNMENT)+")\n"},OD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock",e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT)+".draw_clock()\n"},ED=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_Clock"]="from "+i+" import Clock";var n=e.valueToCode(this,"SUB",e.ORDER_ASSIGNMENT),s=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);if("0x"==s.slice(0,2))var o=n+".clear("+s+")\n";else{const t=s.match(/\d+/g);var _="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");o=n+".clear(0x"+((16252928&_)>>8|(64512&_)>>5|(255&_)>>3).toString(16)+")\n"}return o},RD=function(t,e){var i=rt.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_tft"]="from "+i+" import onboard_tft";var n=e.valueToCode(t,"x",e.ORDER_ATOMIC),s=e.valueToCode(t,"y",e.ORDER_ATOMIC),o=e.valueToCode(t,"r",e.ORDER_ATOMIC),_=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),p=t.getFieldValue("shape");if("0x"==_.slice(0,2))var a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", "+_+","+p+")\nonboard_tft.show()\n";else{const t=_.match(/\d+/g);var u="0x"+((parseInt(t[0])<<16)+(parseInt(t[1])<<8)+parseInt(t[2])).toString(16).padStart(4,"0");a="onboard_tft.ellipse("+n+", "+s+", "+o+", "+o+", 0x"+((16252928&u)>>8|(64512&u)>>5|(255&u)>>3).toString(16)+","+p+")\nonboard_tft.show()\n"}return a},cD=function(t,e){var i=this.getFieldValue("path"),n=this.getFieldValue("module");return e.definitions_["import_"+i+"_"+n]="from "+i+" import "+n,""},gD=function(t,e){var i=this.getFieldValue("module");return e.definitions_["import_"+i]="import "+i,""},CD=function(t,e){for(var i=this.getFieldValue("NAME"),n=new Array(this.itemCount_),s=0;s {\n"+e.statementToCode(this,"do")+"})\n"},MY=function(){return"control.reset()\n"},mY=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||rt.Profile.default.serial)+")\n"},OY=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||rt.Profile.default.serial)+")\n"},EY=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||rt.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},RY=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},cY=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},gY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},CY=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},SY=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},AY=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},LY=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},NY=function(t,e){switch(e.definitions_.import_time="import time",this.getFieldValue("Time")){case"ms":return["time.ticks_ms()",e.ORDER_ATOMIC];case"us":return["time.ticks_us()",e.ORDER_ATOMIC]}},DY=function(){return"while True:\n pass\n"},fY=function(t,e){return e.definitions_.import_mixgo="import mixgo","reset()\n"},FY=function(t,e){return e.definitions_.import_os="import os","os.uname()"},PY=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},vY=function(t,e){e.definitions_.import_time="import time";var i=e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000";switch(this.getFieldValue("Time")){case"s":return"time.sleep("+i+")\n";case"ms":return"time.sleep_ms("+i+")\n";case"us":return"time.sleep_us("+i+")\n"}},YY=function(t,e){return e.definitions_.import_mixgo="import mixgo",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = Timer."+(e.valueToCode(this,"mode",e.ORDER_NONE)||"None")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},xY=function(t,e){return e.definitions_.import_machine="import machine",(e.valueToCode(this,"VAR",e.ORDER_NONE)||"None")+".init(period = "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+", mode = machine.Timer."+this.getFieldValue("mode")+", callback = "+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},XY=function(t,e){return e.definitions_.import_time="import time",["time.ticks_diff("+(e.valueToCode(this,"END",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"START",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},bY=function(t,e){var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return e.definitions_.import_machine="import machine",i+" = machine.Timer(0)\n"},yY=function(t,e){return e.definitions_.import_machine="import machine","wdt = machine.WDT(timeout= "+(e.valueToCode(this,"period",e.ORDER_NONE)||"0")+")\n"},VY=function(t,e){e.definitions_.import_machine="import machine";return"wdt.feed()\n"},BY=function(t,e){e.definitions_.import_machine="import machine";return"machine.reset()\n"},GY=function(t,e){e.definitions_.import_bitbot_onboard_bot51="from bitbot import onboard_bot51";return"onboard_bot51.shutdown()\n"},UY=bY,wY=xY,kY=XY,HY=PY,WY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},KY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api."+this.getFieldValue("mode")+"("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"day",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},JY=function(t,e){return e.definitions_.import_seniverse_api="import seniverse_api",["seniverse_api.weather_hourly("+e.valueToCode(this,"key",e.ORDER_ATOMIC)+","+e.valueToCode(this,"addr",e.ORDER_ATOMIC)+","+e.valueToCode(this,"hour",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},QY={};QY["飞乙"]={description:"MicroPython[ESP32C3 Bitbot]",digital_pin:rt.Profile.generate(["0-11","18-21"]),input_pin:rt.Profile.generate(["0-11","18-21"]),output_pin:rt.Profile.generate(["0-11","18-21"]),pwm_input:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_input:rt.Profile.generate(["0-5"],"adc","adc"),pwm_output:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_output:rt.Profile.generate(["0-5"],"adc","adc"),espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),digital:rt.Profile.generate(["0-11","18-21"],"pin","pin"),pwm_pin:rt.Profile.generate(["0-11","18-21"]),pwm:rt.Profile.generate(["0-11","18-21"],"pwm","pwm"),analog_pin:rt.Profile.generate(["0-5"]),analog:rt.Profile.generate(["0-5"],"adc","adc"),button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]],extern_addr:rt.Profile.generate(["0-1"]),als_num:rt.Profile.generate(["0-3"])},QY["超霸大师"]={description:"MicroPython[ESP32 Mixbot]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["P","button_p"],["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["MUSIC_QUAVERS","onboard_matrix.MUSIC_QUAVERS"],["MUSIC_QUAVER","onboard_matrix.MUSIC_QUAVER"],["MUSIC_CROTCHET","onboard_matrix.MUSIC_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]],extern_addr:rt.Profile.generate(["0-3"])},QY["ESP32 Generic"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin6","pin6"],["pin7","pin7"],["pin8","pin8"],["pin9","pin9"],["pin10","pin10"],["pin11","pin11"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["7","7"],["8","8"],["12","12"],["13","13"],["14","14"],["15","15"],["19","19"],["20","20"],["21","21"],["22","22"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]},QY["机器人大师"]={description:"MicroPython[ESP32 Generic]",digital_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],digital:[["pin0","pin0"],["pin2","pin2"],["pin4","pin4"],["pin5","pin5"],["pin12","pin12"],["pin13","pin13"],["pin14","pin14"],["pin15","pin15"],["pin16","pin16"],["pin17","pin17"],["pin18","pin18"],["pin19","pin19"],["pin20","pin20"],["pin21","pin21"],["pin22","pin22"],["pin23","pin23"],["pin25","pin25"],["pin26","pin26"],["pin27","pin27"],["pin32","pin32"],["pin33","pin33"],["pin34","pin34"],["pin35","pin35"],["pin36","pin36"],["pin37","pin37"],["pin38","pin38"],["pin39","pin39"]],input_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],output_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["18","18"],["19","19"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"],["33","33"]],pwm_pin:[["0","0"],["2","2"],["4","4"],["5","5"],["12","12"],["13","13"],["14","14"],["15","15"],["16","16"],["17","17"],["18","18"],["19","19"],["20","20"],["21","21"],["22","22"],["23","23"],["25","25"],["26","26"],["27","27"],["32","32"]],pwm:[["pwm0","pwm0"],["pwm2","pwm2"],["pwm4","pwm4"],["pwm5","pwm5"],["pwm12","pwm12"],["pwm13","pwm13"],["pwm14","pwm14"],["pwm15","pwm15"],["pwm16","pwm16"],["pwm17","pwm17"],["pwm18","pwm18"],["pwm19","pwm19"],["pwm20","pwm20"],["pwm21","pwm21"],["pwm22","pwm22"],["pwm23","pwm23"],["pwm25","pwm25"],["pwm26","pwm26"],["pwm27","pwm27"],["pwm32","pwm32"]],espnow_channel:rt.Profile.generate(["1-13"]),haskylens_model:rt.Profile.generate(["0-4"]),analog_pin:[["32","32"],["33","33"],["34","34"],["35","35"],["36","36"],["37","37"],["38","38"],["39","39"]],analog:[["adc32","adc32"],["adc33","adc33"],["adc34","adc34"],["adc35","adc35"],["adc36","adc36"],["adc37","adc37"],["adc38","adc38"],["adc39","adc39"]],dac_pin:[["25","25"],["26","26"]],dac:[["dac25","dac25"],["dac26","dac26"]],touch:[["tc0","tc0"],["tc2","tc2"],["tc4","tc4"],["tc12","tc12"],["tc13","tc13"],["tc14","tc14"],["tc15","tc15"],["tc27","tc27"],["tc32","tc32"],["tc33","tc33"]],touch_pin:[["0","0"],["2","2"],["4","4"],["12","12"],["13","13"],["14","14"],["15","15"],["27","27"],["32","32"],["33","33"]],button:[["p","button_p"],["cw","button_cw"],["ccw","button_ccw"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],exlcdh:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"],["10","10"],["11","11"],["12","12"],["13","13"],["14","14"],["15","15"]],exlcdv:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],tts_voice:rt.Profile.generate(["0-16"]),tts_builtin_music:rt.Profile.generate(["0-47"]),tts_bgmusic:rt.Profile.generate(["0-15"]),builtinimg:[["HEART","onboard_matrix.HEART"],["HEART_SMALL","onboard_matrix.HEART_SMALL"],["HAPPY","onboard_matrix.HAPPY"],["SAD","onboard_matrix.SAD"],["SMILE","onboard_matrix.SMILE"],["SILLY","onboard_matrix.SILLY"],["FABULOUS","onboard_matrix.FABULOUS"],["SURPRISED","onboard_matrix.SURPRISED"],["ASLEEP","onboard_matrix.ASLEEP"],["ANGRY","onboard_matrix.ANGRY"],["CONFUSED","onboard_matrix.CONFUSED"],["NO","onboard_matrix.NO"],["YES","onboard_matrix.YES"],["LEFT_ARROW","onboard_matrix.LEFT_ARROW"],["RIGHT_ARROW","onboard_matrix.RIGHT_ARROW"],["DRESS","onboard_matrix.DRESS"],["TRANSFORMERS","onboard_matrix.TRANSFORMERS"],["SCISSORS","onboard_matrix.SCISSORS"],["EXIT","onboard_matrix.EXIT"],["TREE","onboard_matrix.TREE"],["PACMAN","onboard_matrix.PACMAN"],["TARGET","onboard_matrix.TARGET"],["TSHIRT","onboard_matrix.TSHIRT"],["ROLLERSKATE","onboard_matrix.ROLLERSKATE"],["DUCK","onboard_matrix.DUCK"],["HOUSE","onboard_matrix.HOUSE"],["TORTOISE","onboard_matrix.TORTOISE"],["BUTTERFLY","onboard_matrix.BUTTERFLY"],["STICKFIGURE","onboard_matrix.STICKFIGURE"],["GHOST","onboard_matrix.GHOST"],["PITCHFORK","onboard_matrix.PITCHFORK"],["onboard_music_QUAVERS","onboard_matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","onboard_matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","onboard_matrix.onboard_music_CROTCHET"],["COW","onboard_matrix.COW"],["RABBIT","onboard_matrix.RABBIT"],["SQUARE_SMALL","onboard_matrix.SQUARE_SMALL"],["SQUARE","onboard_matrix.SQUARE"],["DIAMOND_SMALL","onboard_matrix.DIAMOND_SMALL"],["DIAMOND","onboard_matrix.DIAMOND"],["CHESSBOARD","onboard_matrix.CHESSBOARD"],["TRIANGLE_LEFT","onboard_matrix.TRIANGLE_LEFT"],["TRIANGLE","onboard_matrix.TRIANGLE"],["SNAKE","onboard_matrix.SNAKE"],["UMBRELLA","onboard_matrix.UMBRELLA"],["SKULL","onboard_matrix.SKULL"],["GIRAFFE","onboard_matrix.GIRAFFE"],["SWORD","onboard_matrix.SWORD"]],builtinimg_extern:[["HEART","matrix32x12.Matrix.HEART"],["HEART_SMALL","matrix32x12.Matrix.HEART_SMALL"],["HAPPY","matrix32x12.Matrix.HAPPY"],["SAD","matrix32x12.Matrix.SAD"],["SMILE","matrix32x12.Matrix.SMILE"],["SILLY","matrix32x12.Matrix.SILLY"],["FABULOUS","matrix32x12.Matrix.FABULOUS"],["SURPRISED","matrix32x12.Matrix.SURPRISED"],["ASLEEP","matrix32x12.Matrix.ASLEEP"],["ANGRY","matrix32x12.Matrix.ANGRY"],["CONFUSED","matrix32x12.Matrix.CONFUSED"],["NO","matrix32x12.Matrix.NO"],["YES","matrix32x12.Matrix.YES"],["LEFT_ARROW","matrix32x12.Matrix.LEFT_ARROW"],["RIGHT_ARROW","matrix32x12.Matrix.RIGHT_ARROW"],["DRESS","matrix32x12.Matrix.DRESS"],["TRANSFORMERS","matrix32x12.Matrix.TRANSFORMERS"],["SCISSORS","matrix32x12.Matrix.SCISSORS"],["EXIT","matrix32x12.Matrix.EXIT"],["TREE","matrix32x12.Matrix.TREE"],["PACMAN","matrix32x12.Matrix.PACMAN"],["TARGET","matrix32x12.Matrix.TARGET"],["TSHIRT","matrix32x12.Matrix.TSHIRT"],["ROLLERSKATE","matrix32x12.Matrix.ROLLERSKATE"],["DUCK","matrix32x12.Matrix.DUCK"],["HOUSE","matrix32x12.Matrix.HOUSE"],["TORTOISE","matrix32x12.Matrix.TORTOISE"],["BUTTERFLY","matrix32x12.Matrix.BUTTERFLY"],["STICKFIGURE","matrix32x12.Matrix.STICKFIGURE"],["GHOST","matrix32x12.Matrix.GHOST"],["PITCHFORK","matrix32x12.Matrix.PITCHFORK"],["onboard_music_QUAVERS","matrix32x12.Matrix.onboard_music_QUAVERS"],["onboard_music_QUAVER","matrix32x12.Matrix.onboard_music_QUAVER"],["onboard_music_CROTCHET","matrix32x12.Matrix.onboard_music_CROTCHET"],["COW","matrix32x12.Matrix.COW"],["RABBIT","matrix32x12.Matrix.RABBIT"],["SQUARE_SMALL","matrix32x12.Matrix.SQUARE_SMALL"],["SQUARE","matrix32x12.Matrix.SQUARE"],["DIAMOND_SMALL","matrix32x12.Matrix.DIAMOND_SMALL"],["DIAMOND","matrix32x12.Matrix.DIAMOND"],["CHESSBOARD","matrix32x12.Matrix.CHESSBOARD"],["TRIANGLE_LEFT","matrix32x12.Matrix.TRIANGLE_LEFT"],["TRIANGLE","matrix32x12.Matrix.TRIANGLE"],["SNAKE","matrix32x12.Matrix.SNAKE"],["UMBRELLA","matrix32x12.Matrix.UMBRELLA"],["SKULL","matrix32x12.Matrix.SKULL"],["GIRAFFE","matrix32x12.Matrix.GIRAFFE"],["SWORD","matrix32x12.Matrix.SWORD"]],imglist:[["ALL_CLOCKS","onboard_matrix.ALL_CLOCKS"],["ALL_ARROWS","onboard_matrix.ALL_ARROWS"]],playlist:[["DADADADUM","onboard_music.DADADADUM"],["ENTERTAINER","onboard_music.ENTERTAINER"],["PRELUDE","onboard_music.PRELUDE"],["ODE","onboard_music.ODE"],["NYAN","onboard_music.NYAN"],["RINGTONE","onboard_music.RINGTONE"],["FUNK","onboard_music.FUNK"],["BLUES","onboard_music.BLUES"],["BIRTHDAY","onboard_music.BIRTHDAY"],["WEDDING","onboard_music.WEDDING"],["FUNERAL","onboard_music.FUNERAL"],["PUNCHLINE","onboard_music.PUNCHLINE"],["PYTHON","onboard_music.PYTHON"],["BADDY","onboard_music.BADDY"],["CHASE","onboard_music.CHASE"],["BA_DING","onboard_music.BA_DING"],["WAWAWAWAA","onboard_music.WAWAWAWAA"],["JUMP_UP","onboard_music.JUMP_UP"],["JUMP_DOWN","onboard_music.JUMP_DOWN"],["POWER_UP","onboard_music.POWER_UP"],["POWER_DOWN","onboard_music.POWER_DOWN"]],playlist_extern:[["DADADADUM","DADADADUM"],["ENTERTAINER","ENTERTAINER"],["PRELUDE","PRELUDE"],["ODE","ODE"],["NYAN","NYAN"],["RINGTONE","RINGTONE"],["FUNK","FUNK"],["BLUES","BLUES"],["BIRTHDAY","BIRTHDAY"],["WEDDING","WEDDING"],["FUNERAL","FUNERAL"],["PUNCHLINE","PUNCHLINE"],["PYTHON","PYTHON"],["BADDY","BADDY"],["CHASE","CHASE"],["BA_DING","BA_DING"],["WAWAWAWAA","WAWAWAWAA"],["JUMP_UP","JUMP_UP"],["JUMP_DOWN","JUMP_DOWN"],["POWER_UP","POWER_UP"],["POWER_DOWN","POWER_DOWN"]],tone_notes:[["NOTE_C3","131"],["NOTE_D3","147"],["NOTE_E3","165"],["NOTE_F3","175"],["NOTE_G3","196"],["NOTE_A3","220"],["NOTE_B3","247"],["NOTE_C4","262"],["NOTE_D4","294"],["NOTE_E4","330"],["NOTE_F4","349"],["NOTE_G4","392"],["NOTE_A4","440"],["NOTE_B4","494"],["NOTE_C5","523"],["NOTE_D5","587"],["NOTE_E5","659"],["NOTE_F5","698"],["NOTE_G5","784"],["NOTE_A5","880"],["NOTE_B5","988"]],serial_pin:[["pin0","0"],["pin1","1"],["pin2","2"],["pin8","8"],["pin12","12"],["pin13","13"],["pin14","14"],["pin15","15"],["pin16","16"]],radio_power:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"]],radio_datarate:[["1Mbit","RATE_1MBIT"],["250Kbit","RATE_250KBIT"],["2Mbit","RATE_2MBIT"]],one_more:[["ONE_SHOT","ONE_SHOT"],["PERIODIC","PERIODIC"]],digital_dot:[["0","0"],["1","1"],["2","2"],["3","3"]]};const qY=QY,zY=230,jY={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital),"PIN"),this.setOutput(!0)}},ZY={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital_pin),"PIN"),this.setOutput(!0,Number)}},$Y={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.input_pin),"PIN"),this.setOutput(!0,Number)}},tx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.output_pin),"PIN"),this.setOutput(!0,Number)}},ex={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch_mpython),"PIN"),this.setOutput(!0,Number)}},ix={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.espnow_channel),"PIN"),this.setOutput(!0,Number)}},nx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.haskylens_model),"PIN"),this.setOutput(!0,Number)}},sx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_input),"PIN"),this.setOutput(!0)}},ox={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_input),"PIN"),this.setOutput(!0)}},_x={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_output),"PIN"),this.setOutput(!0)}},px={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_output),"PIN"),this.setOutput(!0)}},ax={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.i2c_A_pin),"PIN"),this.setOutput(!0,Number)}},ux={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.i2c_B_pin),"PIN"),this.setOutput(!0,Number)}},rx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_A_pin),"PIN"),this.setOutput(!0,Number)}},lx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_B_pin),"PIN"),this.setOutput(!0,Number)}},dx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_C_pin),"PIN"),this.setOutput(!0,Number)}},Ix={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.spi_D_pin),"PIN"),this.setOutput(!0,Number)}},Tx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog),"PIN"),this.setOutput(!0)}},hx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.analog_pin),"PIN"),this.setOutput(!0,Number)}},Mx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.dac),"PIN"),this.setOutput(!0)}},mx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.dac_pin),"PIN"),this.setOutput(!0,Number)}},Ox={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.button),"PIN"),this.setOutput(!0,Number)}},Ex={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm),"PIN"),this.setOutput(!0)}},Rx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.pwm_pin),"PIN"),this.setOutput(!0,Number)}},cx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch_pin),"PIN"),this.setOutput(!0,Number)}},gx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.touch),"PIN"),this.setOutput(!0)}},Cx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.serial_pin),"PIN"),this.setOutput(!0,Number)}},Sx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.builtinimg),"PIN"),this.setOutput(!0,"esp32_image")}},Ax={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.builtinimg_extern),"PIN"),this.setOutput(!0,"esp32_image")}},Lx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.imglist),"PIN"),this.setOutput(!0)}},Nx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.playlist),"PIN"),this.setOutput(!0)}},Dx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.playlist_extern),"PIN"),this.setOutput(!0)}},fx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.exlcdh),"PIN"),this.setOutput(!0,Number)}},Fx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.exlcdv),"PIN"),this.setOutput(!0,Number)}},Px={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.axis),"PIN"),this.setOutput(!0,Number)}},vx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.brightness),"PIN"),this.setOutput(!0,Number)}},Yx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_voice),"PIN"),this.setOutput(!0,Number)}},xx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_builtin_music),"PIN"),this.setOutput(!0,Number)}},Xx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tts_bgmusic),"PIN"),this.setOutput(!0,Number)}},bx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.tone_notes),"PIN"),this.setOutput(!0,Number)}},yx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.radio_power),"PIN"),this.setOutput(!0,Number)}},Vx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.radio_datarate),"PIN"),this.setOutput(!0,Number)}},Bx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.one_more),"PIN"),this.setOutput(!0)}},Gx={init:function(){this.setColour(zY),this.appendDummyInput("").appendField(new ut.FieldDropdown(rt.Profile.default.digital_dot),"PIN"),this.setOutput(!0,Number)}},Ux=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},wx=Ux,kx=Ux,Hx=Ux,Wx=Ux,Kx=Ux,Jx=Ux,Qx=Ux,qx=Ux,zx=Ux,jx=Ux,Zx=Ux,$x=Ux,tX=Ux,eX=Ux,iX=Ux,nX=Ux,sX=Ux,oX=Ux,_X=Ux,pX=Ux,aX=Ux,uX=Ux,rX=Ux,lX=Ux,dX=Ux,IX=Ux,TX=Ux,hX=Ux,MX=Ux,mX=Ux,OX=Ux,EX=Ux,RX=Ux,cX=Ux;Object.assign(ut.Variables,dt),Object.assign(ut.Procedures,Vn),ut.Python=tu,ut.generator=tu,rt.Profile.default={},Object.assign(rt.Profile,qY),Object.assign(rt.Profile.default,qY["ESP32 Generic"]),Object.assign(ut.Blocks,e,i,n,s,o,_,p,a,u,r,l,d,I,b,w,U,v,y,k,f,G,B,V,F,D,N,x,Y,X,P,pt),Object.assign(ut.Python.forBlock,T,h,M,m,O,E,R,c,g,C,S,A,L,$,ot,st,q,tt,_t,K,nt,it,et,J,W,H,j,z,Z,Q,at)})(); \ No newline at end of file diff --git a/boards/default/micropython_robot/styles/main.4eae9b97.css b/boards/default/micropython_robot/styles/main.3bcb54bb.css similarity index 100% rename from boards/default/micropython_robot/styles/main.4eae9b97.css rename to boards/default/micropython_robot/styles/main.3bcb54bb.css