(()=>{"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:()=>_t,controls_typeLists:()=>ut,lists_zip:()=>pt,lists_zip_container:()=>rt,lists_zip_item:()=>at,unpack_iterable_object:()=>lt,variables_change:()=>st,variables_get:()=>it,variables_global:()=>ot,variables_set:()=>nt});var i={};t.r(i),t.d(i,{base_setup:()=>Tt,controls_delay:()=>Mt,controls_end_program:()=>ht,controls_except:()=>Nt,controls_finally:()=>Pt,controls_flow_statements:()=>gt,controls_for:()=>Ct,controls_forEach:()=>Et,controls_for_range:()=>At,controls_if:()=>mt,controls_if_else:()=>ft,controls_if_elseif:()=>St,controls_if_if:()=>Lt,controls_lambda:()=>Yt,controls_main:()=>dt,controls_pass:()=>vt,controls_range:()=>Ot,controls_repeat_ext:()=>Ft,controls_thread:()=>Xt,controls_try:()=>Dt,controls_try_finally:()=>Rt,controls_whileUntil:()=>ct,datetime_fromtimestamp:()=>Ut,do_while:()=>bt,garbage_collection:()=>yt,gene_unique_identifier:()=>wt,get_mem_alloc:()=>Vt,get_mem_free:()=>Bt,get_unique_identifier:()=>Gt});var n={};t.r(n),t.d(n,{base_map:()=>pe,generate_cartesian_product:()=>ae,math_arithmetic:()=>Kt,math_bit:()=>Qt,math_constant:()=>Ht,math_constant_mp:()=>Wt,math_constrain:()=>ee,math_dec:()=>jt,math_degree_to_radian:()=>Ie,math_indexer_number:()=>ne,math_map:()=>ie,math_max_min:()=>Zt,math_number:()=>xt,math_number_base_conversion:()=>$t,math_radian_to_degree:()=>le,math_random:()=>te,math_random_seed:()=>se,math_round:()=>oe,math_selfcalcu:()=>Jt,math_to_int:()=>zt,math_trig:()=>qt,text_to_number:()=>_e,text_to_number_skulpt:()=>ue,turn_to_int:()=>re});var s={};t.r(s),t.d(s,{ascii_to_char:()=>Oe,char_to_ascii:()=>Ee,number_to_text:()=>ce,os_system:()=>We,text:()=>Te,text_capital:()=>Ne,text_center:()=>Pe,text_char:()=>he,text_char_at:()=>Ce,text_char_at2:()=>ge,text_char_at3:()=>we,text_compareTo:()=>Ue,text_compare_to:()=>De,text_create_with_container:()=>Ve,text_create_with_item:()=>Be,text_encode:()=>xe,text_equals_starts_ends:()=>fe,text_eval:()=>He,text_find:()=>Fe,text_format:()=>ye,text_format_noreturn:()=>ke,text_join:()=>me,text_join_seq:()=>Ye,text_length:()=>Re,text_random_char:()=>Ae,text_replace:()=>ve,text_split:()=>Xe,text_strip:()=>be,text_substring:()=>Se,text_substring2:()=>Le,text_substring3:()=>Ge,text_textarea:()=>Me});var o={};t.r(o),t.d(o,{ENUMERATE:()=>fi,content_in_lists:()=>Ni,enumerate:()=>Di,list_many_input:()=>Ti,list_tolist:()=>Oi,list_tolist2:()=>Si,list_trig:()=>li,lists_2d_get_col_row_data:()=>je,lists_2d_get_data_with_col_row:()=>qe,lists_append_extend:()=>ii,lists_change_to:()=>di,lists_change_to_general:()=>hi,lists_clear:()=>ui,lists_create_with:()=>ze,lists_create_with2:()=>Ei,lists_create_with_container:()=>$e,lists_create_with_item:()=>ti,lists_create_with_noreturn:()=>Mi,lists_create_with_text:()=>Ze,lists_create_with_text2:()=>ci,lists_del_general:()=>mi,lists_find:()=>ai,lists_getIndex3:()=>Ri,lists_getSublist3:()=>gi,lists_get_index:()=>Je,lists_get_random_item:()=>ni,lists_get_random_sublist:()=>si,lists_get_sublist:()=>Qe,lists_insert_value:()=>oi,lists_insert_value2:()=>Ai,lists_pop:()=>ri,lists_remove_at:()=>pi,lists_remove_at2:()=>Li,lists_reverse:()=>_i,lists_setIndex3:()=>Ci,lists_set_index:()=>ei,lists_sort:()=>Ii});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>Wi,dicts_add_or_change:()=>Vi,dicts_clear:()=>Ui,dicts_create_with:()=>Fi,dicts_create_with_container:()=>Yi,dicts_create_with_item:()=>vi,dicts_create_with_noreturn:()=>Qi,dicts_deldict:()=>Hi,dicts_delete:()=>Bi,dicts_get:()=>bi,dicts_get_default:()=>yi,dicts_items:()=>wi,dicts_keys:()=>Xi,dicts_length:()=>xi,dicts_pop:()=>Ki,dicts_setdefault:()=>Ji,dicts_to_json:()=>ji,dicts_to_json2:()=>$i,dicts_to_to:()=>Zi,dicts_todict:()=>qi,dicts_update:()=>Gi,dicts_values:()=>ki,json_to_dicts:()=>zi});var u={};t.r(u),t.d(u,{logic_boolean:()=>_n,logic_compare:()=>en,logic_compare_continous:()=>nn,logic_is:()=>an,logic_is_in:()=>rn,logic_negate:()=>on,logic_null:()=>un,logic_operation:()=>sn,logic_tobool:()=>ln,logic_true_or_false:()=>pn});var p={};t.r(p),t.d(p,{sdcard_mount:()=>Xn,sdcard_use_spi_init:()=>vn,storage_can_write_ornot:()=>cn,storage_change_dir:()=>Fn,storage_close_file:()=>gn,storage_delete_file:()=>An,storage_file_seek:()=>fn,storage_file_tell:()=>Sn,storage_file_write:()=>hn,storage_fileopen:()=>dn,storage_fileopen_new:()=>Tn,storage_fileopen_new_encoding:()=>Mn,storage_get_a_line:()=>En,storage_get_contents:()=>On,storage_get_contents_without_para:()=>mn,storage_get_current_dir:()=>Dn,storage_get_file_size:()=>Ln,storage_get_filename:()=>Rn,storage_is_file:()=>Yn,storage_list_all_files:()=>Cn,storage_make_dir:()=>Nn,storage_open_file_with_os:()=>In,storage_rename:()=>Pn});var r={};t.r(r),t.d(r,{procedures_callnoreturn:()=>Gn,procedures_callreturn:()=>Un,procedures_defnoreturn:()=>bn,procedures_defreturn:()=>yn,procedures_ifreturn:()=>wn,procedures_mutatorarg:()=>Bn,procedures_mutatorcontainer:()=>Vn,procedures_return:()=>kn});var a={};t.r(a),t.d(a,{tuple_change_to:()=>ts,tuple_create_with:()=>Hn,tuple_create_with_container:()=>Wn,tuple_create_with_item:()=>Kn,tuple_create_with_noreturn:()=>ss,tuple_create_with_text2:()=>Jn,tuple_create_with_text_return:()=>Qn,tuple_del:()=>zn,tuple_find:()=>es,tuple_getIndex:()=>qn,tuple_getSublist:()=>ns,tuple_get_random_item:()=>_s,tuple_get_sublist:()=>os,tuple_input:()=>ps,tuple_join:()=>Zn,tuple_length:()=>jn,tuple_max:()=>$n,tuple_totuple:()=>us,tuple_trig:()=>is});var l={};t.r(l),t.d(l,{set_add_discard:()=>Os,set_clear:()=>Ms,set_create_with:()=>as,set_create_with_container:()=>ls,set_create_with_item:()=>Is,set_create_with_text_return:()=>Rs,set_length:()=>ds,set_operate:()=>hs,set_operate_update:()=>ms,set_pop:()=>Ts,set_sub:()=>Es,set_toset:()=>gs,set_update:()=>cs});var I={};t.r(I),t.d(I,{html_content:()=>fs,html_content_more:()=>Ds,html_document:()=>As,html_form:()=>Ps,html_head_body:()=>Ss,html_style:()=>Ns,html_style_color:()=>Ys,html_style_content:()=>Fs,html_text:()=>vs,html_title:()=>Ls});var d={};t.r(d),t.d(d,{attribute_access:()=>Js,function_call:()=>Hs,function_call_container:()=>Ws,function_call_item:()=>Ks,raw_block:()=>ys,raw_empty:()=>Bs,raw_expression:()=>Vs,raw_table:()=>bs,text_comment:()=>Gs,text_print_multiple:()=>ws,text_print_multiple_container:()=>ks,text_print_multiple_item:()=>xs,type_check:()=>Us});var T={};t.r(T),t.d(T,{controls_type:()=>Zs,controls_typeLists:()=>$s,lists_zip:()=>to,unpack_iterable_object:()=>eo,variables_change:()=>js,variables_get:()=>Qs,variables_global:()=>zs,variables_set:()=>qs});var M={};t.r(M),t.d(M,{Panic_with_status_code:()=>lo,base_setup:()=>no,controls_delay:()=>ao,controls_flow_statements:()=>ro,controls_for:()=>_o,controls_forEach:()=>mo,controls_for_range:()=>uo,controls_if:()=>so,controls_interrupts:()=>Mo,controls_lambda:()=>Eo,controls_main:()=>io,controls_millis:()=>Io,controls_nointerrupts:()=>ho,controls_pass:()=>Ro,controls_range:()=>Oo,controls_repeat:()=>No,controls_repeat_ext:()=>Ao,controls_thread:()=>go,controls_try_finally:()=>oo,controls_whileUntil:()=>po,datetime_fromtimestamp:()=>Po,do_while:()=>Co,garbage_collection:()=>Lo,gene_unique_identifier:()=>Fo,get_mem_alloc:()=>So,get_mem_free:()=>fo,get_unique_identifier:()=>Do,reset:()=>To,time_sleep:()=>co});var h={};t.r(h),t.d(h,{base_map:()=>Zo,generate_cartesian_product:()=>t_,math_arithmetic:()=>yo,math_bit:()=>bo,math_constant:()=>vo,math_constant_mp:()=>Xo,math_constrain:()=>Wo,math_dec:()=>Uo,math_degree_to_radian:()=>i_,math_indexer_number:()=>Qo,math_map:()=>Ho,math_max_min:()=>ko,math_number:()=>Yo,math_number_base_conversion:()=>Ko,math_radian_to_degree:()=>e_,math_random:()=>xo,math_random_seed:()=>Jo,math_round:()=>qo,math_selfcalcu:()=>Vo,math_single:()=>Bo,math_to_int:()=>wo,math_trig:()=>Go,text_to_number:()=>jo,text_to_number_skulpt:()=>zo,turn_to_int:()=>$o});var m={};t.r(m),t.d(m,{ascii_to_char:()=>u_,char_to_ascii:()=>p_,number_to_text:()=>r_,os_system:()=>Y_,text:()=>n_,text_capital:()=>O_,text_center:()=>E_,text_char:()=>o_,text_char_at:()=>I_,text_char_at2:()=>l_,text_char_at3:()=>N_,text_compareTo:()=>D_,text_compare_to:()=>M_,text_encode:()=>P_,text_equals_starts_ends:()=>T_,text_eval:()=>F_,text_find:()=>c_,text_format:()=>L_,text_format_noreturn:()=>S_,text_join:()=>__,text_join_seq:()=>R_,text_length:()=>a_,text_random_char:()=>d_,text_replace:()=>g_,text_split:()=>C_,text_strip:()=>A_,text_substring:()=>m_,text_substring2:()=>h_,text_substring3:()=>f_,text_textarea:()=>s_});var O={};t.r(O),t.d(O,{content_in_lists:()=>Iu,enumerate:()=>lu,list_many_input:()=>Z_,list_tolist:()=>ru,list_tolist2:()=>au,list_trig:()=>q_,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:()=>tu,lists_clear:()=>W_,lists_create_with:()=>y_,lists_create_with2:()=>iu,lists_create_with_noreturn:()=>$_,lists_create_with_text:()=>V_,lists_create_with_text2:()=>nu,lists_del_general:()=>eu,lists_find:()=>K_,lists_getIndex3:()=>su,lists_getSublist3:()=>ou,lists_get_index:()=>B_,lists_get_random_item:()=>w_,lists_get_random_sublist:()=>k_,lists_get_sublist:()=>v_,lists_insert_value:()=>x_,lists_insert_value2:()=>uu,lists_pop:()=>Q_,lists_remove_at:()=>J_,lists_remove_at2:()=>pu,lists_reverse:()=>H_,lists_setIndex3:()=>_u,lists_set_index:()=>G_,lists_sort:()=>j_});var E={};t.r(E),t.d(E,{dicts_add_change_del:()=>Lu,dicts_add_or_change:()=>mu,dicts_clear:()=>cu,dicts_create_with:()=>du,dicts_create_with_noreturn:()=>Du,dicts_deldict:()=>Au,dicts_delete:()=>Ou,dicts_get:()=>Mu,dicts_get_default:()=>hu,dicts_items:()=>Ru,dicts_keys:()=>Tu,dicts_length:()=>Cu,dicts_pop:()=>Su,dicts_setdefault:()=>fu,dicts_to_json:()=>Pu,dicts_to_json2:()=>vu,dicts_to_to:()=>Yu,dicts_todict:()=>Nu,dicts_update:()=>Eu,dicts_values:()=>gu,json_to_dicts:()=>Fu});var c={};t.r(c),t.d(c,{logic_boolean:()=>Bu,logic_compare:()=>Xu,logic_compare_continous:()=>bu,logic_is:()=>ku,logic_is_in:()=>wu,logic_negate:()=>Vu,logic_null:()=>Gu,logic_operation:()=>yu,logic_tobool:()=>xu,logic_true_or_false:()=>Uu});var R={};t.r(R),t.d(R,{sdcard_mount:()=>Ip,sdcard_use_spi_init:()=>lp,storage_can_write_ornot:()=>Zu,storage_change_dir:()=>_p,storage_close_file:()=>tp,storage_delete_file:()=>ip,storage_file_seek:()=>op,storage_file_tell:()=>sp,storage_file_write:()=>Qu,storage_fileopen:()=>Wu,storage_fileopen_new:()=>Ku,storage_fileopen_new_encoding:()=>Ju,storage_get_a_line:()=>zu,storage_get_contents:()=>ju,storage_get_contents_without_para:()=>qu,storage_get_current_dir:()=>up,storage_get_file_size:()=>np,storage_get_filename:()=>$u,storage_is_file:()=>ap,storage_list_all_files:()=>ep,storage_make_dir:()=>pp,storage_open_file_with_os:()=>Hu,storage_rename:()=>rp});var g={};t.r(g),t.d(g,{procedures_callnoreturn:()=>hp,procedures_callreturn:()=>Mp,procedures_defnoreturn:()=>Tp,procedures_defreturn:()=>dp,procedures_ifreturn:()=>mp,procedures_return:()=>Op});var C={};t.r(C),t.d(C,{tuple_change_to:()=>fp,tuple_create_with:()=>Ep,tuple_create_with_noreturn:()=>Fp,tuple_create_with_text2:()=>cp,tuple_create_with_text_return:()=>Rp,tuple_del:()=>Ap,tuple_find:()=>Dp,tuple_getIndex:()=>gp,tuple_getSublist:()=>Pp,tuple_get_random_item:()=>vp,tuple_get_sublist:()=>Yp,tuple_input:()=>bp,tuple_join:()=>Lp,tuple_length:()=>Cp,tuple_max:()=>Sp,tuple_totuple:()=>Xp,tuple_trig:()=>Np});var A={};t.r(A),t.d(A,{set_add_discard:()=>kp,set_clear:()=>Gp,set_create_with:()=>yp,set_create_with_text_return:()=>Wp,set_length:()=>Vp,set_operate:()=>Up,set_operate_update:()=>wp,set_pop:()=>Bp,set_sub:()=>xp,set_toset:()=>Kp,set_update:()=>Hp});var L={};t.r(L),t.d(L,{html_content:()=>jp,html_content_more:()=>zp,html_document:()=>Jp,html_form:()=>$p,html_head_body:()=>qp,html_style:()=>Zp,html_style_content:()=>tr,html_text:()=>er,html_title:()=>Qp});var S={};t.r(S),t.d(S,{attribute_access:()=>pr,function_call:()=>ur,raw_block:()=>ir,raw_empty:()=>sr,raw_expression:()=>nr,raw_table:()=>or,type_check:()=>_r});var f={};t.r(f),t.d(f,{educore_mqtt_connect:()=>Oa,educore_mqtt_connect_success:()=>ga,educore_mqtt_subscribe_message:()=>Ea,educore_mqtt_topic_publish:()=>Ra,educore_mqtt_topic_subscribe:()=>ca,educore_wifi_connect:()=>ma,network_ap_connect:()=>jr,network_connect:()=>Wr,network_get_connect:()=>Jr,network_get_wifi:()=>qr,network_init:()=>wr,network_is_active:()=>xr,network_open:()=>kr,network_scan:()=>Hr,network_server:()=>zr,network_socket_accept:()=>ia,network_socket_bind:()=>$r,network_socket_close:()=>ua,network_socket_connect:()=>ta,network_socket_init:()=>Zr,network_socket_listen:()=>ea,network_socket_receive:()=>na,network_socket_receive_from:()=>oa,network_socket_send:()=>sa,network_socket_send_to:()=>_a,network_stop:()=>Qr,network_wifi_connect:()=>Kr,ntptime_address:()=>Ia,ntptime_time:()=>la,requests_attribute:()=>ra,requests_attribute2:()=>ha,requests_get:()=>pa,requests_get2:()=>Ta,requests_method:()=>aa,requests_post:()=>Ma});var D={};t.r(D),t.d(D,{CI130X_BROADCAST_SANT:()=>AI,CI130X_GET_THE_RECOGNIZED_CMD_SANT:()=>CI,CI130X_GET_WHETHER_IDENTIFY_SANT:()=>gI,CI130X_IDENTIFY_AND_SAVE_SANT:()=>RI,CI130X_SET_SYSTEM_CMD_SANT:()=>LI,HCSR04:()=>Wa,RTC_set_date:()=>Ha,RTC_set_time:()=>xa,bitbot_als_num:()=>tI,dht11:()=>uI,educore_button_sensor:()=>hI,educore_button_was_pressed:()=>mI,educore_gyroscope_sensor:()=>dI,educore_gyroscope_sensor_read:()=>TI,educore_gyroscope_sensor_shake:()=>MI,educore_light_sensor:()=>II,educore_rfid_sensor:()=>OI,educore_rfid_sensor_scan:()=>EI,educore_rfid_sensor_scan_data:()=>cI,educore_voice_sensor:()=>aI,number1:()=>Ja,number2:()=>Qa,number3:()=>qa,number4:()=>ja,number5:()=>za,number6:()=>Za,number7:()=>$a,onboard_RTC_get_time:()=>ul,onboard_RTC_get_time_str:()=>dl,onboard_RTC_get_timestamp:()=>pl,onboard_RTC_get_timetuple_to_str:()=>Tl,onboard_RTC_set_datetime:()=>ll,onboard_RTC_settime_string:()=>al,onboard_RTC_timestamp_totuple:()=>rl,rfid_readcontent:()=>Rl,rfid_readid:()=>cl,rfid_status:()=>Al,rfid_write:()=>gl,rfid_write_return:()=>Cl,sensor_LTR308:()=>Ml,sensor_aht11:()=>ml,sensor_bitbot_ALS:()=>$l,sensor_button_get_presses:()=>nI,sensor_button_is_pressed:()=>eI,sensor_button_was_pressed:()=>iI,sensor_distance_hrsc04:()=>ka,sensor_eulerangles:()=>Sl,sensor_field_strength:()=>pI,sensor_get_acceleration:()=>Ll,sensor_get_temperature:()=>Ol,sensor_get_the_coprocessor_version:()=>SI,sensor_hp203:()=>El,sensor_light:()=>_I,sensor_mixbot_get_gyro:()=>Zl,sensor_mixbot_patrol_calibrate:()=>ql,sensor_mixbot_patrol_value:()=>jl,sensor_mixbot_temperature:()=>zl,sensor_mixgo_LTR308:()=>ol,sensor_mixgo_button_attachInterrupt:()=>va,sensor_mixgo_button_get_presses:()=>Ya,sensor_mixgo_button_is_pressed:()=>Pa,sensor_mixgo_button_was_pressed:()=>Fa,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>Vl,sensor_mixgo_cc_mmc5603_get_angle:()=>yl,sensor_mixgo_cc_mmc5603_get_magnetic:()=>bl,sensor_mixgo_light:()=>Ka,sensor_mixgo_nova_LTR308:()=>sl,sensor_mixgo_nova_pin_near:()=>nl,sensor_mixgo_pin_near:()=>il,sensor_mixgo_pin_near_double:()=>el,sensor_mixgo_pin_near_single:()=>tl,sensor_mixgo_pin_pressed:()=>Ba,sensor_mixgo_sant_color:()=>_l,sensor_mixgo_touch_slide:()=>wa,sensor_mixgocar42_button_attachInterrupt:()=>Va,sensor_mixgocar42_button_get_presses:()=>ya,sensor_mixgocar42_button_is_pressed:()=>Xa,sensor_mixgocar42_button_was_pressed:()=>ba,sensor_mixgocar_battery_left:()=>Ql,sensor_mixgocar_pin_near:()=>Kl,sensor_mixgocar_pin_near_line:()=>Wl,sensor_mixgocar_pin_near_state_change:()=>Jl,sensor_mixgoce_pin_pressed:()=>Ga,sensor_mixgoce_temperature:()=>Gl,sensor_mixgome_temperature:()=>Bl,sensor_mpython_pin_pressed:()=>Ua,sensor_mpython_qmi8658_get_gyro:()=>Ul,sensor_mpython_qmi8658_temperature:()=>wl,sensor_onboard_compass_reset:()=>Xl,sensor_onboard_mpu9250_calibrate_compass:()=>Fl,sensor_onboard_mpu9250_field_strength:()=>vl,sensor_onboard_mpu9250_gesture:()=>fl,sensor_onboard_mpu9250_get_acceleration:()=>Dl,sensor_onboard_mpu9250_get_gyro:()=>Pl,sensor_onboard_mpu9250_get_magnetic:()=>Nl,sensor_onboard_mpu9250_temperature:()=>Yl,sensor_pin_near:()=>oI,sensor_pin_pressed:()=>sI,sensor_read:()=>lI,sensor_rm_acc:()=>Hl,sensor_rm_battery_left:()=>xl,sensor_rm_pin_near_double:()=>kl,sensor_rtc_init:()=>Il,sensor_sound:()=>hl,sensor_temperature:()=>rI});var N={};t.r(N),t.d(N,{educore_mqtt_connect:()=>od,educore_mqtt_connect_success:()=>rd,educore_mqtt_subscribe_message:()=>_d,educore_mqtt_topic_publish:()=>pd,educore_mqtt_topic_subscribe:()=>ud,educore_wifi_connect:()=>sd,network_ap_connect:()=>VI,network_connect:()=>PI,network_get_connect:()=>YI,network_get_wifi:()=>yI,network_init:()=>NI,network_is_active:()=>bI,network_open:()=>XI,network_scan:()=>BI,network_server:()=>GI,network_socket_accept:()=>HI,network_socket_bind:()=>wI,network_socket_close:()=>qI,network_socket_connect:()=>kI,network_socket_init:()=>UI,network_socket_listen:()=>xI,network_socket_receive:()=>WI,network_socket_receive_from:()=>JI,network_socket_send:()=>KI,network_socket_send_to:()=>QI,network_stop:()=>vI,network_wifi_connect:()=>FI,ntptime_address:()=>td,ntptime_time:()=>$I,requests_attribute:()=>zI,requests_attribute2:()=>id,requests_get:()=>jI,requests_get2:()=>ed,requests_method:()=>ZI,requests_post:()=>nd});var P={};t.r(P),t.d(P,{CI130X_BROADCAST_SANT:()=>rM,CI130X_GET_THE_RECOGNIZED_CMD_SANT:()=>pM,CI130X_GET_WHETHER_IDENTIFY_SANT:()=>uM,CI130X_IDENTIFY_AND_SAVE_SANT:()=>_M,CI130X_SET_SYSTEM_CMD_SANT:()=>aM,HCSR04:()=>Od,bitbot_als_num:()=>UT,dht11:()=>QT,educore_button_sensor:()=>eM,educore_button_was_pressed:()=>iM,educore_gyroscope_sensor:()=>ZT,educore_gyroscope_sensor_read:()=>$T,educore_gyroscope_sensor_shake:()=>tM,educore_light_sensor:()=>zT,educore_rfid_sensor:()=>nM,educore_rfid_sensor_scan:()=>sM,educore_rfid_sensor_scan_data:()=>oM,educore_voice_sensor:()=>qT,number1:()=>Ed,number2:()=>cd,number3:()=>Rd,number4:()=>gd,number5:()=>Cd,number6:()=>Ad,number7:()=>Ld,onboard_RTC_get_time:()=>hT,onboard_RTC_get_time_str:()=>ET,onboard_RTC_get_timestamp:()=>mT,onboard_RTC_get_timetuple_to_str:()=>cT,onboard_RTC_set_datetime:()=>TT,onboard_RTC_settime_string:()=>MT,onboard_RTC_timestamp_totuple:()=>OT,rfid_readcontent:()=>wd,rfid_readid:()=>Ud,rfid_status:()=>Hd,rfid_write:()=>kd,rfid_write_return:()=>xd,sensor_LTR308:()=>bd,sensor_adxl345_get_acceleration:()=>$d,sensor_aht11:()=>Bd,sensor_bitbot_ALS:()=>GT,sensor_button_get_presses:()=>xT,sensor_button_is_pressed:()=>wT,sensor_button_was_pressed:()=>kT,sensor_compass_reset:()=>oT,sensor_ds18x20:()=>vd,sensor_eulerangles:()=>Kd,sensor_get_acceleration:()=>Wd,sensor_get_temperature:()=>Gd,sensor_get_the_coprocessor_version:()=>lM,sensor_hp203:()=>Vd,sensor_light:()=>JT,sensor_lm35:()=>Xd,sensor_mixbot_get_gyro:()=>BT,sensor_mixbot_patrol_calibrate:()=>bT,sensor_mixbot_patrol_value:()=>yT,sensor_mixbot_temperature:()=>VT,sensor_mixgo_LTR308:()=>Pd,sensor_mixgo_button_attachInterrupt:()=>dd,sensor_mixgo_button_get_presses:()=>Id,sensor_mixgo_button_is_pressed:()=>ad,sensor_mixgo_button_was_pressed:()=>ld,sensor_mixgo_cc_mmc5603_calibrate_compass:()=>CT,sensor_mixgo_cc_mmc5603_get_angle:()=>gT,sensor_mixgo_cc_mmc5603_get_magnetic:()=>RT,sensor_mixgo_light:()=>KT,sensor_mixgo_nova_LTR308:()=>Yd,sensor_mixgo_nova_pin_near:()=>Nd,sensor_mixgo_pin_near:()=>Dd,sensor_mixgo_pin_near_double:()=>fd,sensor_mixgo_pin_near_single:()=>Sd,sensor_mixgo_pin_pressed:()=>zd,sensor_mixgo_sant_color:()=>Fd,sensor_mixgo_touch_slide:()=>jd,sensor_mixgocar42_button_attachInterrupt:()=>md,sensor_mixgocar42_button_get_presses:()=>hd,sensor_mixgocar42_button_is_pressed:()=>Td,sensor_mixgocar42_button_was_pressed:()=>Md,sensor_mixgocar_battery_left:()=>XT,sensor_mixgocar_pin_near:()=>YT,sensor_mixgocar_pin_near_line:()=>FT,sensor_mixgocar_pin_near_state_change:()=>vT,sensor_mixgoce_pin_pressed:()=>qd,sensor_mixgoce_temperature:()=>LT,sensor_mixgome_temperature:()=>AT,sensor_mpu9250_calibrate_compass:()=>iT,sensor_mpu9250_field_strength:()=>sT,sensor_mpu9250_gesture:()=>Jd,sensor_mpu9250_get_acceleration:()=>Qd,sensor_mpu9250_get_gyro:()=>eT,sensor_mpu9250_get_magnetic:()=>tT,sensor_mpu9250_temperature:()=>nT,sensor_mpython_pin_pressed:()=>Zd,sensor_mpython_qmi8658_get_gyro:()=>ST,sensor_mpython_qmi8658_temperature:()=>fT,sensor_onboard_compass_reset:()=>dT,sensor_onboard_mpu9250_calibrate_compass:()=>aT,sensor_onboard_mpu9250_field_strength:()=>IT,sensor_onboard_mpu9250_gesture:()=>_T,sensor_onboard_mpu9250_get_acceleration:()=>uT,sensor_onboard_mpu9250_get_gyro:()=>rT,sensor_onboard_mpu9250_get_magnetic:()=>pT,sensor_onboard_mpu9250_temperature:()=>lT,sensor_pin_near:()=>WT,sensor_pin_pressed:()=>HT,sensor_read:()=>jT,sensor_rm_acc:()=>PT,sensor_rm_battery_left:()=>NT,sensor_rm_pin_near_double:()=>DT,sensor_sound:()=>yd});var F={};t.r(F),t.d(F,{MP3_CONTROL:()=>BM,MP3_EQ_MODE:()=>kM,MP3_INIT:()=>yM,MP3_LOOP_MODE:()=>UM,MP3_PLAY_FOLDER:()=>WM,MP3_PLAY_NUM:()=>HM,MP3_VOL:()=>xM,bit_motor_control:()=>FM,display_rgb:()=>vM,display_rgb2:()=>XM,display_rgb_init:()=>YM,display_rgb_show:()=>bM,microbit_music_get_tempo:()=>CM,microbit_music_pitch:()=>OM,microbit_music_pitch_delay:()=>mM,microbit_music_play_built_in:()=>MM,microbit_music_play_built_in_easy:()=>hM,microbit_music_play_list_of_notes:()=>EM,microbit_music_play_list_of_notes_easy:()=>cM,microbit_music_reset:()=>RM,microbit_music_stop:()=>gM,servo_move:()=>PM,speech_pronounce_easy:()=>DM,speech_say:()=>LM,speech_say_easy:()=>SM,speech_sing_easy:()=>fM,speech_translate:()=>NM,tone_set_tempo:()=>AM});var Y={};t.r(Y),t.d(Y,{i2c_init:()=>ih,i2c_read:()=>nh,i2c_write:()=>sh,microbit_radio_config:()=>jM,microbit_radio_off:()=>qM,microbit_radio_on:()=>QM,microbit_radio_receive:()=>th,microbit_radio_reset:()=>zM,microbit_radio_send_string:()=>ZM,radio_ons:()=>JM,radio_receive_string:()=>eh,radio_send_string:()=>$M,spi_init:()=>oh,spi_write:()=>_h});var v={};t.r(v),t.d(v,{display_fill:()=>Xh,display_image_size:()=>vh,group_lcd_init:()=>Nh,group_lcd_power:()=>Fh,group_lcd_print:()=>Dh,group_lcd_print2:()=>Ph,image_arithmetic:()=>fh,image_shift:()=>Sh,lp2i_u8g_draw_4strings:()=>Yh,microbit_display_clear:()=>ph,microbit_display_is_on:()=>Rh,microbit_display_off:()=>ch,microbit_display_on:()=>Eh,microbit_display_scroll:()=>Oh,microbit_display_scroll_string_animation:()=>mh,microbit_display_show_animation:()=>hh,microbit_display_show_default_image:()=>Mh,microbit_display_show_image:()=>Th,microbit_image_builtins:()=>gh,microbit_image_copy:()=>Ch,microbit_image_create:()=>Lh,microbit_image_invert:()=>Ah,monitor_bright_point:()=>ah,monitor_get_pixel:()=>rh,monitor_scroll_string:()=>Ih,monitor_scroll_string_with_delay:()=>dh,monitor_show_image_or_string:()=>lh});var X={};t.r(X),t.d(X,{factory_block:()=>Wh,factory_block_return:()=>Kh,factory_block_return_with_textarea:()=>Qh,factory_block_with_textarea:()=>Jh,factory_callMethod_noreturn:()=>xh,factory_callMethod_return:()=>Hh,factory_create_with_container:()=>Gh,factory_create_with_item:()=>Uh,factory_declare:()=>kh,factory_from_import:()=>yh,factory_function_noreturn:()=>Bh,factory_function_return:()=>wh,factory_import:()=>Vh});var b={};t.r(b),t.d(b,{inout_analog_read:()=>tm,inout_analog_write:()=>Zh,inout_analog_write_set:()=>$h,inout_digital_read:()=>zh,inout_digital_write:()=>im,inout_highlow:()=>jh,sensor_pin_pressed:()=>em});var y={};t.r(y),t.d(y,{pins_analog:()=>om,pins_axis:()=>Im,pins_brightness:()=>dm,pins_builtinimg:()=>am,pins_button:()=>_m,pins_digital:()=>sm,pins_imglist:()=>lm,pins_interrupt:()=>pm,pins_pwm:()=>um,pins_radio_datarate:()=>hm,pins_radio_power:()=>Mm,pins_serial:()=>rm,pins_tone_notes:()=>Tm});var V={};t.r(V),t.d(V,{DS1307_init:()=>Um,NTC_TEMP:()=>jm,RTC_get_time:()=>km,RTC_set_date:()=>Hm,RTC_set_time:()=>xm,TCS34725_Get_RGB:()=>qm,controls_GestureLists:()=>Am,controls_attachGestureInterrupt:()=>Cm,controls_attachGestureInterrupt2:()=>Lm,sensor_button_get_presses:()=>cm,sensor_button_is_pressed:()=>Om,sensor_button_was_pressed:()=>Em,sensor_calibrate_compass:()=>Fm,sensor_compass_heading:()=>vm,sensor_compass_reset:()=>Wm,sensor_current_gesture:()=>Nm,sensor_current_gesture1:()=>Rm,sensor_current_gesture2:()=>gm,sensor_distance_hrsc04:()=>Bm,sensor_distance_hrsc04_:()=>Gm,sensor_field_strength:()=>bm,sensor_get_acceleration:()=>Sm,sensor_get_gestures:()=>Dm,sensor_hrsc04_init:()=>Jm,sensor_is_compass_calibrated:()=>Ym,sensor_light:()=>Km,sensor_light_level:()=>Pm,sensor_magnetic:()=>Vm,sensor_rotation:()=>ym,sensor_set_acceleration:()=>fm,sensor_temperature:()=>Xm});var B={};t.r(B),t.d(B,{IO_input:()=>pO,IO_print:()=>rO,IO_print_inline:()=>aO,serial_any:()=>nO,serial_begin:()=>uO,serial_print:()=>Zm,serial_print_hex:()=>tO,serial_println:()=>$m,serial_readline:()=>sO,serial_readstr:()=>iO,serial_readstr_until:()=>oO,serial_receive_data_event:()=>eO,serial_softserial:()=>_O});var G={};t.r(G),t.d(G,{Panic_with_status_code:()=>TO,base_delay:()=>IO,controls_millis:()=>dO,controls_uname:()=>hO,reset:()=>MO});var U={};t.r(U),t.d(U,{MP3_CONTROL:()=>BO,MP3_EQ_MODE:()=>UO,MP3_INIT:()=>VO,MP3_LOOP_MODE:()=>GO,MP3_PLAY_FOLDER:()=>xO,MP3_PLAY_NUM:()=>kO,MP3_VOL:()=>wO,bit_motor_control:()=>YO,display_rgb:()=>XO,display_rgb2:()=>bO,display_rgb_init:()=>vO,display_rgb_show:()=>yO,microbit_music_get_tempo:()=>AO,microbit_music_pitch:()=>cO,microbit_music_pitch_delay:()=>EO,microbit_music_play_built_in:()=>mO,microbit_music_play_built_in_easy:()=>OO,microbit_music_play_list_of_notes:()=>RO,microbit_music_reset:()=>gO,microbit_music_stop:()=>CO,servo_move:()=>FO,speech_pronounce_easy:()=>PO,speech_say:()=>fO,speech_say_easy:()=>DO,speech_sing_easy:()=>NO,speech_translate:()=>SO,tone_set_tempo:()=>LO});var w={};t.r(w),t.d(w,{i2c_init:()=>ZO,i2c_read:()=>$O,i2c_write:()=>tE,microbit_radio_config:()=>JO,microbit_radio_off:()=>KO,microbit_radio_on:()=>WO,microbit_radio_receive:()=>zO,microbit_radio_reset:()=>QO,radio_ons:()=>HO,radio_receive_string:()=>jO,radio_send_string:()=>qO,spi_init:()=>eE,spi_write:()=>iE});var k={};t.r(k),t.d(k,{display_fill:()=>NE,display_image_size:()=>DE,group_lcd_init:()=>AE,group_lcd_power:()=>SE,group_lcd_print:()=>CE,group_lcd_print2:()=>LE,image_arithmetic:()=>RE,image_shift:()=>cE,lp2i_u8g_draw_4strings:()=>fE,microbit_display_clear:()=>nE,microbit_display_is_on:()=>ME,microbit_display_on:()=>TE,microbit_display_scroll:()=>dE,microbit_display_scroll_string_animation:()=>gE,microbit_display_set_pixel:()=>oE,microbit_display_show_animation:()=>IE,microbit_display_show_default_image:()=>lE,microbit_display_show_image:()=>aE,microbit_image_builtins:()=>hE,microbit_image_copy:()=>mE,microbit_image_create:()=>EE,microbit_image_invert:()=>OE,monitor_bright_point:()=>_E,monitor_get_pixel:()=>sE,monitor_scroll_string:()=>pE,monitor_scroll_string_with_delay:()=>rE,monitor_show_image_or_string:()=>uE});var x={};t.r(x),t.d(x,{factory_block:()=>VE,factory_block_return:()=>BE,factory_block_return_with_textarea:()=>UE,factory_block_with_textarea:()=>GE,factory_callMethod_noreturn:()=>bE,factory_callMethod_return:()=>yE,factory_declare:()=>XE,factory_from_import:()=>PE,factory_function_noreturn:()=>YE,factory_function_return:()=>vE,factory_import:()=>FE});var H={};t.r(H),t.d(H,{inout_analog_read:()=>KE,inout_analog_write:()=>HE,inout_analog_write_set:()=>WE,inout_digital_read:()=>xE,inout_digital_write:()=>kE,inout_highlow:()=>wE,sensor_pin_pressed:()=>JE});var W={};t.r(W),t.d(W,{pins_analog:()=>qE,pins_axis:()=>ic,pins_brightness:()=>nc,pins_builtinimg:()=>tc,pins_button:()=>jE,pins_digital:()=>QE,pins_imglist:()=>ec,pins_interrupt:()=>ZE,pins_pwm:()=>zE,pins_radio_datarate:()=>_c,pins_radio_power:()=>oc,pins_serial:()=>$E,pins_tone_notes:()=>sc});var K={};t.r(K),t.d(K,{DS1307_init:()=>Nc,NTC_TEMP:()=>Vc,RTC_get_time:()=>Pc,RTC_set_date:()=>Yc,RTC_set_time:()=>Fc,TCS34725_Get_RGB:()=>yc,controls_GestureLists:()=>ac,controls_attachGestureInterrupt:()=>lc,controls_attachGestureInterrupt2:()=>Tc,sensor_button_get_presses:()=>rc,sensor_button_is_pressed:()=>uc,sensor_button_was_pressed:()=>pc,sensor_calibrate_compass:()=>cc,sensor_compass_heading:()=>gc,sensor_compass_reset:()=>vc,sensor_current_gesture:()=>hc,sensor_current_gesture1:()=>Ic,sensor_current_gesture2:()=>dc,sensor_distance_hrsc04:()=>fc,sensor_distance_hrsc04_:()=>Dc,sensor_field_strength:()=>Ac,sensor_get_acceleration:()=>mc,sensor_get_gestures:()=>Mc,sensor_hrsc04_init:()=>bc,sensor_is_compass_calibrated:()=>Rc,sensor_light:()=>Xc,sensor_light_level:()=>Ec,sensor_magnetic:()=>Sc,sensor_rotation:()=>Lc,sensor_set_acceleration:()=>Oc,sensor_temperature:()=>Cc});var J={};t.r(J),t.d(J,{IO_input:()=>Qc,IO_print:()=>qc,IO_print_inline:()=>jc,serial_any:()=>kc,serial_begin:()=>Jc,serial_print:()=>Bc,serial_print_hex:()=>Uc,serial_println:()=>Gc,serial_readline:()=>Hc,serial_readstr:()=>xc,serial_readstr_until:()=>Wc,serial_receive_data_event:()=>wc,serial_softserial:()=>Kc});var Q={};t.r(Q),t.d(Q,{Panic_with_status_code:()=>rR,base_delay:()=>pR,controls_end_program:()=>lR,controls_millis:()=>aR,controls_uname:()=>dR,reset:()=>IR,system_device_name:()=>_R,system_device_serial_number:()=>uR,system_event_bus_source:()=>sR,system_event_bus_value:()=>oR,system_on_event:()=>eR,system_raise_event:()=>tR,system_reset:()=>Zc,system_run_in_background:()=>zc,system_timestamp:()=>iR,system_value:()=>nR,system_wait:()=>$c});const q=Blockly,j=Mixly,z={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}},Z=z; /** * @license * Visual Blocks Editor * * Copyright 2012 Google Inc. * https://developers.google.com/blockly/ * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ class ${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(q.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(q.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(q.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(q.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(q.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(q.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")}},Ot={init:function(){this.setColour(It),this.appendValueInput("FROM").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.PYTHON_RANGE).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Et={init:function(){this.setColour(It),this.appendValueInput("LIST").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(q.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return q.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ct={init:function(){this.setColour(It),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(q.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new q.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(q.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:q.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:q.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Rt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(q.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new q.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(q.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(q.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(q.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(q.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(q.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(It);var t=new q.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:q.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:q.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(q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},Ct={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new q.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return q.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},At={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new q.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return q.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};ct.OPERATORS=[[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],gt.OPERATORS=[[q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Lt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(q.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},St={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},ft={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(q.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},Dt={init:function(){this.setColour(It),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Nt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(q.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},Pt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(q.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},Ft={init:function(){this.jsonInit({message0:q.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:It,tooltip:q.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:q.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},Yt={init:function(){this.setColour(It),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(q.Msg.MIXLY_STAT),this.setOutput(!0)}},vt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Xt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(q.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},bt={init:function(){this.appendDummyInput().appendField(q.Msg.CONTROLS_REPEAT_TITLE_REPEAT+q.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(q.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new q.FieldDropdown([[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(It),this.setTooltip("do-while loop"),this.setHelpUrl("")}},yt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Vt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},Bt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},Gt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_GET+q.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(q.Msg.PROCEDURES_DEFRETURN_RETURN+q.Msg.MIXLY_GET_UNIQUE_IDEN)}},Ut={init:function(){this.setColour(It),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_RTC_TIMESTAMP),this.appendDummyInput().appendField(q.Msg.MIXLY_TIMESTAMP_TO_DATA),this.setInputsInline(!0),this.setOutput(!0,Number)}},wt={init:function(){this.setColour(It),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_UNIQUE_IDEN),this.setOutput(!0)}},kt=230;q.FieldTextInput.math_number_validator=function(t){return String(t)},q.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 xt={init:function(){this.setColour(kt),this.appendDummyInput().appendField(new q.FieldTextInput("0",q.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(q.Msg.MATH_NUMBER_TOOLTIP)}},Ht={init:function(){this.setColour(kt);this.appendDummyInput("").appendField(q.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new q.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:q.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:q.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},Wt={init:function(){this.setColour(kt);this.appendDummyInput("").appendField(q.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new q.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:q.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:q.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},Kt={init:function(){this.setColour(kt),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new q.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:q.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:q.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:q.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:q.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:q.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:q.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:q.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},Jt={init:function(){this.setColour(kt),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new q.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:q.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:q.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:q.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:q.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:q.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:q.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:q.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},Qt={init:function(){this.setColour(kt),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new q.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},qt={init:function(){this.setColour(kt),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new q.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:q.Msg.MATH_TRIG_TOOLTIP_SIN,COS:q.Msg.MATH_TRIG_TOOLTIP_COS,TAN:q.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:q.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:q.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:q.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:q.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},jt={init:function(){var t=[[q.Msg.MATH_BIN,"bin"],[q.Msg.MATH_OCT,"oct"],[q.Msg.MATH_HEX,"hex"]];this.setColour(kt),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new q.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:q.Msg.MATH_DEC_TOOLTIP_BIN,oct:q.Msg.MATH_DEC_TOOLTIP_OCT,hex:q.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},zt={init:function(){var t=[[q.Msg.LANG_MATH_TO_ROUND,"round"],[q.Msg.LANG_MATH_TO_CEIL,"ceil"],[q.Msg.LANG_MATH_TO_FLOOR,"floor"],[q.Msg.MATH_ABS,"fabs"],[q.Msg.MATH_SQRT,"sqrt"]];this.setColour(kt),this.appendValueInput("A").setCheck(Number).appendField(new q.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:q.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:q.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:q.Msg.MATH_SINGLE_TOOLTIP_SQ,round:q.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:q.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:q.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},Zt={init:function(){var t=[[q.Msg.MIXLY_MAX,"max"],[q.Msg.MIXLY_MIN,"min"]];this.setColour(kt),this.appendValueInput("A").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(new q.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(q.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:q.Msg.MIXLY_TOOLTIP_MATH_MAX,min:q.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},$t={init:function(){var t=[[q.Msg.MATH_TWO,"two"],[q.Msg.MATH_EIGHT,"eight"],[q.Msg.MATH_TEN,"ten"],[q.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(kt),this.appendDummyInput("").appendField(q.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new q.FieldDropdown(t),"OP").appendField(q.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.MATH_ZHW).appendField(new q.FieldDropdown(t),"OP2").appendField(q.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:q.Msg.MATH_Before_two,eight:q.Msg.MATH_Before_eight,ten:q.Msg.MATH_Before_ten,sixteen:q.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:q.Msg.MATH_Behind_two,eight:q.Msg.MATH_Behind_eight,ten:q.Msg.MATH_Behind_ten,sixteen:q.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},te={init:function(){var t=[[q.Msg.LANG_MATH_INT,"int"],[q.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(kt),this.setOutput(!0,Number),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_RANDOM).appendField(new q.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(q.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:q.Msg.LANG_MATH_INT,float:q.Msg.LANG_MATH_FLOAT_RANDOM};return q.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},ee={init:function(){this.setColour(kt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(q.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(q.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(q.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(q.Msg.MATH_CONSTRAIN_TOOLTIP)}},ie={init:function(){this.setColour(kt),this.appendValueInput("NUM",Number).appendField(q.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(q.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(q.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_MATH_MAP)}},ne={init:function(){this.setColour(kt),this.appendDummyInput().appendField(new q.FieldTextInput("0",q.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(q.Msg.MATH_NUMBER_TOOLTIP)}},se={init:function(){this.setColour(kt),this.appendValueInput("NUM").setCheck(Number).appendField(q.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},oe={init:function(){this.setColour(kt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(q.Msg.MATH_ROUND).appendField(q.Msg.TEXT_KEEP),this.appendDummyInput().appendField(q.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(q.Msg.MATH_ROUND_NEW_TOOLTIP)}},_e={init:function(){var t=[[q.Msg.MIXLY_TO_INT,"int"],[q.Msg.MIXLY_TO_FLOAT,"float"],[q.Msg.MIXLY_TO_BITES,"b"],[q.Msg.LANG_MATH_BYTE+q.Msg.MIXLY_TO_INT,"bti"]];this.setColour(kt),this.appendValueInput("VAR").appendField(new q.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:q.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:q.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:q.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},ue={init:function(){var t=[[q.Msg.MIXLY_TO_INT,"int"],[q.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(kt),this.appendValueInput("VAR").appendField(new q.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:q.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:q.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},pe=ie,re={init:function(){this.setColour(kt),this.appendValueInput("VAR").appendField(q.Msg.LANG_MATH_BYTE+q.Msg.MIXLY_TO_HEX),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_PYTHON_TOOLTIP_TOHEX)}},ae={init:function(){this.setColour(kt),this.itemCount_=1,this.setMutator(new q.icons.MutatorIcon(["lists_create_with_item"],this)),this.appendDummyInput("DUMMY").appendField(q.Msg.MIXLY_PRODUCT+q.Msg.MIXLY_GENERATE_CARTESIAN_PRODUCT),this.appendValueInput("REPEAT").appendField(q.Msg.MIXLY_EVERY_PER_ELEPER_ELEMENT),this.appendDummyInput().appendField(q.Msg.CONTROLS_REPEAT_TITLE_TIMES),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0),this.setTooltip(q.Msg.LISTS_CREATE_WITH_PYTHON_TOOLTIP),this.updateShape_()},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("lists_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n1&&"\\"===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 he={init:function(){this.setColour(de),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new q.FieldTextInput("",q.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(q.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new q.FieldImage(e,7,12,'"')}},me={init:function(){this.setColour(de),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(q.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},Oe={init:function(){this.setColour(de),this.appendValueInput("VAR").setCheck(Number).appendField(q.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},Ee={init:function(){this.setColour(de),this.appendValueInput("VAR").setCheck(String).appendField(q.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},ce={init:function(){this.setColour(de),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},Re={init:function(){this.setColour(de),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},ge={init:function(){this.WHERE_OPTIONS=[[q.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[q.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[q.Msg.TEXT_GET_INDEX_RANDOM+1+q.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(q.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(q.Msg.LISTS_GET_INDEX_GET,"MODE"),q.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(q.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=q.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=q.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=q.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=q.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+q.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",q.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:q.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:q.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:q.Msg.TEXT_GET_INDEX_RANDOM};return q.Msg.PROCEDURES_DEFRETURN_RETURN+q.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+q.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==q.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),q.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(q.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new q.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"),q.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},Ce={init:function(){this.setHelpUrl(q.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(q.Msg.LISTS_GET_INDEX_GET+" "+q.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(q.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(q.Msg.PROCEDURES_DEFRETURN_RETURN+q.Msg.MIXLY_MICROBIT_TYPE_STRING+q.Msg.LISTS_GET_INDEX_FROM_START+"n"+q.Msg.TEXT_CHARAT2)}},Ae={init:function(){this.setHelpUrl(q.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(q.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(q.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Le={init:function(){this.WHERE_OPTIONS_1=[[q.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[q.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[q.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[q.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[q.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[q.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(q.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(q.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(q.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==q.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==q.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),q.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(q.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new q.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"))}},Se={init:function(){this.setHelpUrl(q.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(q.Msg.LISTS_GET_INDEX_GET+" "+q.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(q.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(q.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(q.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},fe={init:function(){var t=[[q.Msg.MIXLY_EQUALS,"==="],[q.Msg.MIXLY_STARTSWITH,"startswith"],[q.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(de),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new q.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},De={init:function(){this.setColour(de),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(q.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_COMPARETO_HELP)}},Ne={init:function(){var t=[[q.Msg.TEXT_UPPER,"upper"],[q.Msg.TEXT_TITLE,"title"],[q.Msg.TEXT_CAPITALIZE,"capitalize"],[q.Msg.TEXT_SWAPCASE,"swapcase"],[q.Msg.TEXT_LOWER,"lower"]];this.setColour(de),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:q.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:q.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:q.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:q.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:q.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},Pe={init:function(){var t=[[q.Msg.TEXT_LJUST,"ljust"],[q.Msg.TEXT_CENTER,"center"],[q.Msg.TEXT_RJUST,"rjust"]];this.setColour(de),this.appendValueInput("VAR").appendField(new q.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(q.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(q.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},Fe={init:function(){this.setColour(de),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(q.Msg.MIXLY_MID+q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(q.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},Ye={init:function(){this.setColour(de),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(q.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(q.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},ve={init:function(){this.setColour(de),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(q.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(q.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Xe={init:function(){this.setColour(de),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(q.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(q.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(q.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},be={init:function(){var t=[[q.Msg.TEXT_TRIM_BOTH,"strip"],[q.Msg.TEXT_TRIM_LEFT,"lstrip"],[q.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(de),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(q.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new q.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(q.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:q.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:q.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:q.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},ye={init:function(){this.setColour(de),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new q.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new q.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(q.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){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Yi={init:function(){this.setColour(Pi),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(q.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},vi={init:function(){this.setColour(Pi),this.appendDummyInput().appendField(q.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Xi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.DICT_KEYS),this.setTooltip(q.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},bi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(q.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(q.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(q.Msg.DICTS_GET_TOOLTIP)}},yi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(q.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(q.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(q.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(q.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Vi={init:function(){this.setColour(Pi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(q.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(q.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},Bi={init:function(){this.setColour(Pi),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(q.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(q.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.DICTS_DELETE_TOOLTIP)}},Gi={init:function(){this.setColour(Pi),this.appendValueInput("DICT2").setCheck("Dict").appendField(q.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(q.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(q.Msg.MIXLY_MID),this.setTooltip(q.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ui={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.DICT_CLEAR),this.setTooltip(q.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},wi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.DICT_ITEMS),this.setTooltip(q.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},ki={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.DICT_VALUES),this.setTooltip(q.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},xi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.MIXLY_LENGTH),this.setTooltip(q.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},Hi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.DICT_DELDICT),this.setTooltip(q.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Wi={init:function(){this.MODE=[[q.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[q.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(q.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(q.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=q.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=q.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==q.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 q.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")}},Ki={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(q.Msg.DICTS_ADD_VALUE),this.setTooltip(q.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},Ji={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(q.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(q.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.DICTS_SETDEFAULT_TOOLTIP)}},Qi={init:function(){this.setColour(Pi),this.appendDummyInput("").appendField(new q.FieldLabel(q.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 q.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(q.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){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},qi={init:function(){this.setColour(Pi),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},ji={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(q.Msg.MIXLY_TO_JSON),this.setTooltip(q.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0)}},zi={init:function(){this.setColour(Pi),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(q.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(q.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0)}},Zi={init:function(){this.setColour(Pi),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("VAR1").appendField("key1"),this.appendValueInput("VAR2").appendField("index"),this.appendValueInput("VAR3").appendField("key2"),this.appendValueInput("VAR4").appendField("key3"),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0)}},$i={init:function(){this.setColour(Pi),this.appendValueInput("DICT"),this.appendDummyInput("").appendField(q.Msg.MIXLY_TO_JSON),this.setTooltip(q.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0)}},tn=210,en={init:function(){var t=q.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(tn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new q.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:q.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:q.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:q.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:q.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:q.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:q.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},nn={init:function(){var t=q.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=q.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(tn),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new q.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new q.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},sn={init:function(){var t=[[q.Msg.LOGIC_OPERATION_AND,"AND"],[q.Msg.LOGIC_OPERATION_OR,"OR"],[q.Msg.LOGIC_OPERATION_NOR,"NOR"],[q.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(tn),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new q.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:q.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:q.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:q.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:q.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},on={init:function(){this.setColour(tn),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(q.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(q.Msg.LOGIC_NEGATE_TOOLTIP)}},_n={init:function(){var t=[[q.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[q.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(tn),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new q.FieldDropdown(t),"BOOL"),this.setTooltip(q.Msg.LOGIC_BOOLEAN_TOOLTIP)}},un={init:function(){this.setColour(tn),this.setOutput(!0),this.appendDummyInput().appendField(q.Msg.LOGIC_NULL),this.setTooltip(q.Msg.LOGIC_NULL_TOOLTIP)}},pn={init:function(){this.setColour(tn),this.appendValueInput("A"),this.appendValueInput("B").appendField(q.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(q.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},rn={init:function(){var t=[[q.Msg.TEXT_APPEND_TO,"in"],[q.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(tn),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new q.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(q.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.IN)}},an={init:function(){var t=[[q.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[q.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(tn),this.appendValueInput("A"),this.appendValueInput("B").appendField(new q.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},ln={init:function(){this.setColour(tn),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(q.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},In={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(q.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},dn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendValueInput("FILE").appendField(q.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=q.Msg.MIXLY_USE,n=q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=q.Msg.MIXLY_BELONG;return i+{r:q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Tn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[q.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=q.Msg.MIXLY_USE,n=q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=q.Msg.MIXLY_BELONG,_=q.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},Mn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(q.Msg.MIXPY_TEXT_ENCODE).appendField(new q.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=q.Msg.MIXLY_USE,n=q.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=q.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=q.Msg.MIXLY_BELONG,_=q.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:q.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:q.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:q.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},hn={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+q.Msg.MIXLY_MICROBIT_TYPE_STRING+q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},mn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},On={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(q.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=q.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:q.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:q.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:q.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},En={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(q.Msg.MICROBIT_PYTHON_TYPE)}},cn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(q.Msg.HTML_FILE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},Rn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},gn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},Cn={init:function(){this.setColour(0),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};q.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const An={init:function(){this.setColour(0),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[q.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(q.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+q.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Sn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(q.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=q.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+q.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:q.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Dn={init:function(){this.setColour(0),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},Nn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[q.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 q.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+q.Msg.MIXLY_ESP32_SET+{mkdir:q.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Pn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(q.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},Fn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(q.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Yn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.HTML_FILE,"isfile"],[q.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 q.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+q.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:q.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},vn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(q.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_SETUP+q.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(q.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Xn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(q.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},bn={init:function(){var t=q.Procedures.findLegalName("",this),e=new q.FieldTextInput(t,q.Procedures.rename);e.setSpellcheck(!1),this.appendDummyInput().appendField(e,"NAME").appendField("","PARAMS"),this.setMutator(new q.icons.MutatorIcon(["procedures_mutatorarg"],this)),(this.workspace.options.comments||this.workspace.options.parentWorkspace&&this.workspace.options.parentWorkspace.options.comments)&&q.Msg.PROCEDURES_DEFNORETURN_COMMENT&&this.setCommentText(q.Msg.PROCEDURES_DEFNORETURN_COMMENT),this.setStyle("procedure_blocks"),this.setTooltip(q.Msg.PROCEDURES_DEFNORETURN_TOOLTIP),this.setHelpUrl(q.Msg.PROCEDURES_DEFNORETURN_HELPURL),this.arguments_=[],this.argumentVarModels_=[],this.setStatements_(!0),this.statementConnection_=null},setStatements_:function(t){this.hasStatements_!==t&&(t?(this.appendStatementInput("STACK").appendField(q.Msg.PROCEDURES_DEFNORETURN_DO),this.getInput("RETURN")&&this.moveInputBefore("STACK","RETURN")):this.removeInput("STACK",!0),this.hasStatements_=t)},updateParams_:function(){var t="";this.arguments_.length&&(t=q.Msg.PROCEDURES_BEFORE_PARAMS+" "+this.arguments_.join(", ")),q.Events.disable();try{this.setFieldValue(t,"PARAMS")}finally{q.Events.enable()}},mutationToDom:function(t){var e=q.utils.xml.createElement("mutation");t&&e.setAttribute("name",this.getFieldValue("NAME"));for(var i=0;i"),this.appendValueInput("style").appendField(q.Msg.MIXLY_AIP_ATTR).setAlign(q.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ns={init:function(){this.setColour(Cs),this.appendDummyInput().appendField(q.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},Ps={init:function(){this.setColour(Cs),this.appendDummyInput().appendField(q.Msg.HTML_FORM_CONTENT).appendField(new q.FieldDropdown([[q.Msg.HTML_TEXT,"text"],[q.Msg.HTML_EMAIL,"email"],[q.Msg.HTML_NUMBER,"number"],[q.Msg.HTML_PASSWORD,"password"],[q.Msg.HTML_CHECKBOX,"checkbox"],[q.Msg.HTML_RADIOBUTTON,"radiobutton"],[q.Msg.HTML_BUTTON,"button"],[q.Msg.HTML_COLOUR,"colour"],[q.Msg.HTML_DATE,"date"],[q.Msg.HTML_LOCALTIME,"local time"],[q.Msg.HTML_FILE,"file"],[q.Msg.HTML_HIDDEN,"hidden"],[q.Msg.HTML_IMAGE,"image"],[q.Msg.HTML_MONTH,"month"],[q.Msg.HTML_RANGE,"range"],[q.Msg.HTML_RESET,"reset"],[q.Msg.HTML_SEARCH,"search"],[q.Msg.HTML_SUBMIT,"submit"],[q.Msg.HTML_TELEPHONENUMBER,"telephone number"],[q.Msg.HTML_TIME,"time"],[q.Msg.HTML_URL,"url"],[q.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(q.Msg.HTML_NAME).appendField(new q.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(q.Msg.HTML_VALUE).appendField(new q.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(q.Msg.MIXLY_AIP_ATTR).setAlign(q.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Fs={init:function(){this.setColour(Cs),this.appendDummyInput().appendField(new q.FieldTextInput("property"),"KEY").appendField(":").appendField(new q.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ys={init:function(){this.setColour(Cs),this.appendDummyInput().appendField(new q.FieldTextInput("property"),"KEY").appendField(":").appendField(new q.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vs={init:function(){this.setColour(Cs),this.appendDummyInput().appendField(q.Msg.HTML_TEXT).appendField(new q.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Xs=160,bs={init:function(){this.setColour(Xs),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new q.FieldTable(""),"TEXT")}},ys={init:function(){this.setColour(Xs),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new q.FieldMultilineInput(""),"TEXT")}},Vs={init:function(){this.setColour(Xs),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new q.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},Bs={init:function(){this.setColour(Xs),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Gs={init:function(){this.setColour(Xs),this.appendDummyInput().appendTitle("Comment:").appendTitle(new q.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},Us={init:function(){this.setColour(Xs),this.appendValueInput("VALUE").appendField(q.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},ws={init:function(){this.setColour(Xs),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new q.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(q.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=q.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 "+r()+"("+t+", "+e+", "+i+")"},q.isNumber(n)&&q.isNumber(s)&&q.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 yu=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]},Vu=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},Bu=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Gu=function(t,e){return["None",e.ORDER_ATOMIC]},Uu=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]},wu=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]},ku=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]},xu=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Hu=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Wu=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},Ku=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Ju=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},Qu=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},qu=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},ju=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]},zu=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Zu=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},$u=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"},up=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"},rp=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"},ap=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"},Ip=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"},dp=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),q.Procedures.NAME_TYPE),n=(this.getInput("STACK")&&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]},Qp=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},jp=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"},Zp=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},$p=function(t,e){return'"},tr=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},er=function(){return this.getFieldValue("TEXT")+"\n"},ir=function(t){return t.getFieldValue("TEXT")+"\n"},nr=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},sr=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},or=function(){return""},_r=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},ur=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o0?e.join("\n")+i.join("\n")+n.join("\n")+_.join("\n")+u.join("")+t+"while True:\n"+p.join("")+r.join("\n"):e.join("\n")+i.join("\n")+n.join("\n")+_.join("\n")+u.join("")+t+r.join("\n")},lr.scrubNakedValue=function(t){return t+"\n"},lr.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},lr.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},lr.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=q.utils.string.wrap(o,lr.COMMENT_WRAP-3),n+=lr.prefixLines(o+"\n","# "));for(var s=0;s0?"int("+u+" + "+s+")":s<0?"int("+u+" - "+-s+")":"int("+u+")",n&&(u="-"+u)),u};const Ir=120,dr={init:function(){this.setColour(Ir),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(q.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT).appendField(new q.FieldDropdown(dr.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:q.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:q.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))},OPERATORS:[[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[q.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]]},Tr={init:function(){this.setColour(Ir);var t=new q.FieldDropdown(Tr.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:q.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:q.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(q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}},OPERATORS:[[q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[q.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]]},Mr="5BA5A5",hr={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(Mr),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET2).appendField(new q.FieldDropdown(hr.OPERATORS),"OP"),this.appendValueInput("val").appendField(q.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP"),i=q.Msg.DISPLAY_IMAGE_LET,n=q.Msg.DISPLAY_IMAGE_LET2,s=q.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:q.Msg.MIXLY_UP,down:q.Msg.MIXLY_DOWN,left:q.Msg.MIXLY_LEFT,right:q.Msg.MIXLY_RIGHT}[e]+s}))},OPERATORS:[[q.Msg.MIXLY_UP,"shift_up"],[q.Msg.MIXLY_DOWN,"shift_down"],[q.Msg.MIXLY_LEFT,"shift_left"],[q.Msg.MIXLY_RIGHT,"shift_right"]]},mr={init:function(){this.appendValueInput("SUB").setCheck("var"),this.setColour(Mr),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(q.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new q.FieldDropdown(mr.OPERATORS),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{"+":q.Msg.MIXLY_MICROBIT_image_add,"-":q.Msg.MIXLY_MICROBIT_image_reduce}[e]}))},OPERATORS:[[q.Msg.MICROBIT_DISPLAY_UNION,"add"],[q.Msg.MICROBIT_DISPLAY_MINUS,"sub"]]},Or={init:function(){this.setColour(Mr),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new q.FieldDropdown(Or.OPERATORS),"OP"),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE+{height:q.Msg.MIXLY_HEIGHT,width:q.Msg.MIXLY_WIDTH}[e]}))},OPERATORS:[[q.Msg.MIXLY_HEIGHT,"height"],[q.Msg.MIXLY_WIDTH,"width"]]},Er={init:function(){this.setColour(Mr),this.appendValueInput("VAR").appendField(q.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_RECT).appendField(new q.FieldDropdown(Er.STATUS),"OP"),this.jsonInit({message0:q.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(q.Msg.MIXLY_OLED_RECT)},STATUS:[[q.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[q.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]]},cr={init:function(){this.setColour(Mr),this.appendValueInput("VAR").appendField(q.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new q.FieldDropdown(cr.STATUS),"OP"),this.jsonInit({message0:q.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(q.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)},STATUS:[[q.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[q.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]]},Rr={init:function(){this.setColour(Mr),this.appendValueInput("SUB").setCheck("var").appendField(q.Msg.MSG.catOLED),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET2).appendField(new q.FieldDropdown(Rr.OPERATORS),"OP"),this.appendValueInput("val").appendField(q.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP"),i=q.Msg.DISPLAY_IMAGE_LET,n=q.Msg.DISPLAY_IMAGE_LET2,s=q.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:q.Msg.MIXLY_UP,down:q.Msg.MIXLY_DOWN,left:q.Msg.MIXLY_LEFT,right:q.Msg.MIXLY_RIGHT}[e]+s}))},OPERATORS:[[q.Msg.MIXLY_UP,"shift_up"],[q.Msg.MIXLY_DOWN,"shift_down"],[q.Msg.MIXLY_LEFT,"shift_left"],[q.Msg.MIXLY_RIGHT,"shift_right"]]},gr="#569A98",Cr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(Cr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:12},(()=>new Array(32).fill(0)))},Ar={init:function(){this.setColour(gr),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(q.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new q.FieldDropdown(Ar.OPERATORS),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{"+":q.Msg.MIXLY_MICROBIT_image_add,"-":q.Msg.MIXLY_MICROBIT_image_reduce}[e]}))},OPERATORS:[[q.Msg.MICROBIT_DISPLAY_UNION,"add"],[q.Msg.MICROBIT_DISPLAY_MINUS,"sub"]]},Lr={init:function(){this.setColour(gr),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET2).appendField(new q.FieldDropdown(Lr.OPERATORS),"OP"),this.appendValueInput("val").appendField(q.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP"),i=q.Msg.DISPLAY_IMAGE_LET,n=q.Msg.DISPLAY_IMAGE_LET2,s=q.Msg.DISPLAY_IMAGE_LET3;return i+n+{shift_up:q.Msg.MIXLY_UP,shift_down:q.Msg.MIXLY_DOWN,shift_left:q.Msg.MIXLY_LEFT,shift_right:q.Msg.MIXLY_RIGHT}[e]+s}))},OPERATORS:[[q.Msg.MIXLY_UP,"shift_up"],[q.Msg.MIXLY_DOWN,"shift_down"],[q.Msg.MIXLY_LEFT,"shift_left"],[q.Msg.MIXLY_RIGHT,"shift_right"]]},Sr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(Sr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:5},(()=>new Array(8).fill(0)))},fr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(fr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:8},(()=>new Array(12).fill(0)))},Dr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(Dr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:8},(()=>new Array(16).fill(0)))},Nr={init:function(){this.setColour(gr),this.appendDummyInput().appendField(q.Msg.OLED_SET_FONT).appendField(new q.FieldDropdown(Nr.OPERATORS),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)},OPERATORS:[["4x5"+q.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'4x5'"],["5x5"+q.Msg.MIXGO_ME_DISPLAY_HORIZONTAL,"'5x5'"],["5x8"+q.Msg.MIXGO_ME_DISPLAY_VERTICAL,"'5x8'"]]},Pr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(Pr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:5},(()=>new Array(5).fill(0)))},Fr={init:function(){this.setColour(gr),this.appendDummyInput().appendField(q.Msg.MIXLY_MIXBOT_SCREEN_ROTATE).appendField(new q.FieldDropdown(Fr.OPERATORS),"OP"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)},OPERATORS:[[q.Msg.mixpy_PL_PIE_SHADOW_N,"0"],[q.Msg.CLOCKWISE+"90"+q.Msg.blockpy_setheading_degree,"1"],[q.Msg.CLOCKWISE+"180"+q.Msg.blockpy_setheading_degree,"2"],[q.Msg.CLOCKWISE+"270"+q.Msg.blockpy_setheading_degree,"3"]]},Yr={init:function(){this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_CREATE_IMAGE),this.appendDummyInput("").setAlign(q.inputs.Align.CENTRE).appendField(new q.FieldBitmap(Yr.BITMAP,null,{filledColor:"#000",emptyColor:"#5ba5a5",bgColor:"#e5e7f1"}),"BITMAP"),this.setOutput(!0),this.setColour(gr),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)},BITMAP:Array.from({length:12},(()=>new Array(12).fill(0)))},vr=180,Xr={init:function(){this.setColour(vr),this.setOutput(!0),this.setInputsInline(!0),this.appendValueInput("img").appendField(q.Msg.DISPLAY_IMAGE_LET).setCheck(["esp32_image","List",String]),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET2).appendField(new q.FieldDropdown(Xr.OPERATORS),"OP"),this.appendValueInput("val").appendField(q.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_UNIT);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP"),i=q.Msg.DISPLAY_IMAGE_LET,n=q.Msg.DISPLAY_IMAGE_LET2,s=q.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:q.Msg.MIXLY_UP,down:q.Msg.MIXLY_DOWN,left:q.Msg.MIXLY_LEFT,right:q.Msg.MIXLY_RIGHT}[e]+s}))},OPERATORS:[[q.Msg.MIXLY_UP,"up"],[q.Msg.MIXLY_DOWN,"down"],[q.Msg.MIXLY_LEFT,"left"],[q.Msg.MIXLY_RIGHT,"right"]]},br={init:function(){this.setColour(vr),this.setOutput(!0,"esp32_image"),this.appendValueInput("A").appendField(q.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new q.FieldDropdown(br.OPERATORS),"OP"),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{"+":q.Msg.MIXLY_MICROBIT_image_add,"-":q.Msg.MIXLY_MICROBIT_image_reduce}[e]}))},OPERATORS:[[q.Msg.MICROBIT_DISPLAY_UNION,"+"],[q.Msg.MICROBIT_DISPLAY_MINUS,"-"]]},yr={init:function(){this.setColour(vr),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("esp32_image"),this.appendDummyInput("").appendField(new q.FieldDropdown(yr.OPERATORS),"OP"),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE+{height:q.Msg.MIXLY_HEIGHT,width:q.Msg.MIXLY_WIDTH}[e]}))},OPERATORS:[[q.Msg.MIXLY_HEIGHT,"height"],[q.Msg.MIXLY_WIDTH,"width"]]},Vr={init:function(){this.setColour(vr),this.appendValueInput("VAR").appendField(q.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_RECT).appendField(new q.FieldDropdown(Vr.STATUS),"OP"),this.jsonInit({message0:q.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(q.Msg.MIXLY_OLED_RECT)},STATUS:[[q.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[q.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]]},Br={init:function(){this.setColour(vr),this.appendValueInput("VAR").appendField(q.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(new q.FieldDropdown(Br.STATUS),"OP"),this.jsonInit({message0:q.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(q.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE)},STATUS:[[q.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[q.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]]},Gr={init:function(){this.setColour(vr),this.appendValueInput("VAR").appendField(q.Msg.OLED).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_DISPLAY_DRAW+q.Msg.MIXLY_HANBIT_DRAW_TRIANGLE).appendField(new q.FieldDropdown(Gr.STATUS),"OP"),this.jsonInit({message0:q.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(q.Msg.MIXLY_DISPLAY_DRAW+q.Msg.MIXLY_HANBIT_DRAW_TRIANGLE)},STATUS:[[q.Msg.MIXLY_4DIGITDISPLAY_ON,"1"],[q.Msg.MIXLY_4DIGITDISPLAY_OFF,"0"]]},Ur=225,wr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_NETWORK_INIT),this.appendDummyInput().appendField(q.Msg.MIXLY_NETWORK_MODE).appendField(new q.FieldDropdown([["STA","STA"],["AP","AP"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_INIT_TOOLTIP)}},kr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_NETWORK_WIFI_OPEN,"True"],[q.Msg.MIXLY_NETWORK_WIFI_CLOSE,"False"]]),"op"),this.appendDummyInput("").appendField(q.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=q.Msg.MIXLY_ESP32_NETWORK_OPEN_TOOLTIP;return{True:q.Msg.MIXLY_NETWORK_WIFI_OPEN,False:q.Msg.MIXLY_NETWORK_WIFI_CLOSE}[e]+i}))}},xr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_NETWORK_WIFI_IS_ACTIVE)}},Hr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_NETWORK_WIFI_SCAN),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip((function(){return q.Msg.MIXLY_ESP32_NETWORK_SCAN_TOOLTIP+{0:"ssid",1:"bssid",2:"channel",3:"RSSI",4:"authmode",5:"hidden",all:q.Msg.MIXLY_NETWORK_WIFI_SCAN_ATTRIBUTE}.all}))}},Wr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_CONNECT),this.appendValueInput("id").setCheck(String).appendField(q.Msg.HTML_NAME),this.appendValueInput("password").setCheck(String).appendField(q.Msg.HTML_PASSWORD),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_CONNECT_TOOLTIP)}},Kr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_NETWORK_WIFI_CONNECT+q.Msg.MIXLY_SYMBOL_QUESTION),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_WIFI_CONNECT_TOOLTIP)}},Jr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput("").appendField(new q.FieldDropdown([[q.Msg.MIXLY_ESP32_NETWORK_IP,"0"],[q.Msg.MIXLY_ESP32_NETWORK_MASK,"1"],[q.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 q.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP+{0:q.Msg.MIXLY_ESP32_NETWORK_IP,1:q.Msg.MIXLY_ESP32_NETWORK_MASK,2:q.Msg.MIXLY_ESP32_NETWORK_GATEWAY,3:"DNS"}[e]}))}},Qr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_STOP_CONNECT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_STOP_TOOLTIP)}},qr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_GET_WIFI),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_NETWORK_WIFI_ESSID,"essid"],[q.Msg.MIXLY_NETWORK_WIFI_CHANNEL,"channel"]]),"op"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_GET_WIFI_TOOLTIP)}},jr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.LISTS_SET_INDEX_SET),this.appendValueInput("essid").setCheck(String).appendField(q.Msg.MIXLY_NETWORK_WIFI_ESSID),this.appendValueInput("channel").setCheck(Number).appendField(q.Msg.MIXLY_NETWORK_WIFI_CHANNEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_AP_CONNECT_TOOLTIP)}},zr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_SERVER1),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_NETWORK_SERVER2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},Zr={init:function(){this.setColour(Ur),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_INIT).setCheck("var"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_TYPE).appendField(new q.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 q.Msg.MIXLY_ESP32_NETWORK_SOCKET_INIT_TOOLTIP+{TCP:"TCP",UDP:"UDP"}[e]}))}},$r={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_BIND_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_BIND_TOOLTIP)}},ta={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_LET_SOCKET),this.appendValueInput("address").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_CONNECT_TO_ADDRESS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_CONNECT_TOOLTIP)}},ea={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendValueInput("queue").setCheck(Number).appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_LISTEN).appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_QUEUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_LISTEN_TOOLTIP)}},ia={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_ACCEPT),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_ACCEPT_TOOLTIP)}},na={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("size").setCheck(Number).appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_TOOLTIP)}},sa={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField("TCP"),this.appendValueInput("content").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TOOLTIP)}},oa={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("size").setCheck(Number).appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_RECEIVE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_RECEIVE_FROM_TOOLTIP)}},_a={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var").appendField("UDP"),this.appendValueInput("content").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_SEND),this.appendValueInput("address").appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_TO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_SEND_TO_TOOLTIP)}},ua={init:function(){this.setColour(Ur),this.appendValueInput("VAR").setCheck("var"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROPYTHON_SOCKET_CLOSE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_NETWORK_SOCKET_CLOSE_TOOLTIP)}},pa={init:function(){this.setColour(Ur),this.appendValueInput("DOMAIN").appendField(q.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(q.Msg.blockpy_REQUESTS_GET).appendField(new q.FieldTextInput("response"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.blockpy_REQUESTS_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){q.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ra={init:function(){this.appendValueInput("VAL"),this.setColour(Ur),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_GET).appendField(new q.FieldDropdown(ra.ATTR),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String);var t=this;this.setTooltip((function(){var e=t.getFieldValue("DIR");return{clear:q.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:q.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:q.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[e]}))},ATTR:[[q.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[q.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[q.Msg.blockpy_REQUESTS_GET_ATTR_COOKIES,"cookies"],[q.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"]]},aa={init:function(){this.appendValueInput("VAR").appendField(q.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.setColour(Ur),this.appendDummyInput("").appendField(q.Msg.blockpy_CONDUCT).appendField(new q.FieldDropdown(aa.METHOD),"DIR"),this.appendDummyInput("").appendField(q.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:q.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:q.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[e]}))},METHOD:[["post","post"],["put","put"],["delete","delete"],["head","head"],["option","option"]]},la={init:function(){this.setColour(Ur),this.appendDummyInput("").appendField(q.Msg.MIXLY_GET_NTP+"(NTP)"),this.appendValueInput("data").appendField(q.Msg.blynk_SERVER_ADD),this.setOutput(!0,"Tuple"),this.setInputsInline(!0)}},Ia={init:function(){this.setColour(Ur),this.appendDummyInput("").appendField(new q.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)}},da="#3288dd",Ta={init:function(){this.setColour(da),this.appendValueInput("URL").appendField(q.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(q.Msg.blockpy_CONDUCT).appendField(new q.FieldDropdown([["get","get"],["head","head"],["delete","delete"]]),"TYPE").appendField(q.Msg.blockpy_REQUESTS).appendField(q.Msg.MIXPY_REQUESTS_GET_RESULT),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip("")}},Ma={init:function(){this.setColour(da),this.appendValueInput("URL").appendField(q.Msg.DISPLAY_IMAGE_LET2).setCheck(String),this.appendDummyInput("").appendField(q.Msg.blockpy_CONDUCT).appendField(new q.FieldDropdown([["post","post"],["put","put"],["patch","patch"]]),"TYPE").appendField(q.Msg.blockpy_REQUESTS),this.appendValueInput("data").appendField(q.Msg.blockpy_REQUESTS+q.Msg.OLED_STRING),this.appendDummyInput("").appendField(q.Msg.MIXPY_REQUESTS_GET_RESULT),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip("")}},ha={init:function(){this.appendValueInput("VAL"),this.setColour(da),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_GET).appendField(new q.FieldDropdown(ha.ATTR),"ATTR"),this.setInputsInline(!0),this.setOutput(!0,String)},ATTR:[[q.Msg.blockpy_REQUESTS_GET_ATTR_TEXT,"text"],[q.Msg.blockpy_REQUESTS_GET_ATTR_JSON,"json()"],[q.Msg.blockpy_REQUESTS_GET_ATTR_STATUS_CODE,"status_code"],[q.Msg.blockpy_REQUESTS_GET_ATTR_CONTENT,"content"],[q.Msg.MIXPY_TEXT_ENCODE,"encoding"]]},ma={init:function(){this.setColour(da),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_IOT_CONNECT_WIFI),this.appendValueInput("WIFINAME").setCheck(String).appendField(q.Msg.HTML_NAME),this.appendValueInput("PASSWORD").setCheck(String).appendField(q.Msg.HTML_PASSWORD),this.appendValueInput("TIMEOUT").setCheck(Number).appendField(q.Msg.MIXLY_IR_TIMEOUT),this.appendDummyInput().appendField(q.Msg.MIXLY_MILLIS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_ESP32_IOT_WIFI_CONNECT_TOOLTIP)}},Oa={init:function(){this.setColour(da),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_IOT_EMQX_CONNECT_TOOLTIP),this.appendValueInput("SERVER").setCheck(String).appendField(q.Msg.MIXLY_EMQX_SERVER).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("PORT").setCheck(Number).appendField(q.Msg.MIXLY_EMQX_PORT).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("CLIENT_ID").setCheck(String).appendField(q.Msg.MIXLY_EMQX_CLIENT_ID).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("USERNAME").setCheck(String).appendField(q.Msg.MIXLY_WIFI_USERNAME).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("PASSWORD").setCheck(String).appendField(q.Msg.MIXLY_IOT_PASSWORD).setAlign(q.inputs.Align.RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ea={init:function(){this.setColour(da),this.appendValueInput("TOPIC").appendField(q.Msg.MIXLY_EMQX_SUBSCRIBE+q.Msg.MIXLY_MICROBIT_MSG).appendField(q.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MESSAGE").appendField(q.Msg.blockpy_set_of),this.setInputsInline(!0),this.setOutput(!0)}},ca={init:function(){this.setColour(da),this.appendDummyInput().appendField("mqtt"),this.appendValueInput("TOPIC").appendField(q.Msg.MIXLY_EMQX_SUBSCRIBE+q.Msg.MIXLY_MICROBIT_MSG).appendField(q.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("METHOD").appendField(q.Msg.MIXLY_EMQX_SET_METHOD),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ra={init:function(){this.setColour(da),this.appendDummyInput().appendField("mqtt"),this.appendValueInput("TOPIC").appendField(q.Msg.MIXLY_EMQX_PUBLISH_NEW).appendField(q.Msg.MIXLY_EMQX_PUBLISH_TOPIC),this.appendValueInput("MSG").appendField(q.Msg.HTML_BODY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ga={init:function(){this.setColour(da),this.appendDummyInput().appendField("mqtt"+q.Msg.MIXLY_EMQX_IS_CONNECT),this.setInputsInline(!0),this.setOutput(!0)}},Ca="#A58C5B",Aa={init:function(){this.setColour(Ca),this.appendValueInput("PIN",Number).appendField(new q.FieldDropdown([["DHT11","DHT11"],["DHT22","DHT22"]]),"TYPE").appendField(q.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new q.FieldDropdown(Aa.METHOD),"WHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("WHAT");return{temperature:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[e]}))},METHOD:[[q.Msg.MIXLY_GETTEMPERATUE,"temperature"],[q.Msg.MIXLY_GETHUMIDITY,"humidity"]]},La={init:function(){this.setColour(Ca),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_NINE_AXIS_SENSOR+" MPU9250").setCheck("var"),this.appendDummyInput().appendField(q.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_GETTEMPERATUE)}},Sa={init:function(){this.setColour(Ca),this.appendValueInput("SUB").appendField("MPU9250").setCheck("var"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[q.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 q.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:q.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},fa=(q.Msg.PS2_TRIANGLE,q.Msg.PS2_CIRCLE,q.Msg.PS2_CROSS,q.Msg.PS2_SQUARE,q.Msg.PS2_L1,q.Msg.PS2_L2,q.Msg.PS2_R1,q.Msg.PS2_R2,q.Msg.PS2_UP,q.Msg.PS2_RIGHT,q.Msg.PS2_DOWN,q.Msg.PS2_LEFT,q.Msg.PS2_SELECT,q.Msg.PS2_START,{init:function(){this.setColour(Ca),this.appendDummyInput("").appendField(q.Msg.PS2_stick).appendField(new q.FieldDropdown(fa.PSSTK),"psstk"),this.setOutput(!0,Number),this.setTooltip("")},PSSTK:[[q.Msg.PS2_RX,"0"],[q.Msg.PS2_RY,"1"],[q.Msg.PS2_LX,"2"],[q.Msg.PS2_LY,"3"]]}),Da={init:function(){this.setColour(Ca),this.appendValueInput("SUB").appendField(q.Msg.PS2),this.appendDummyInput("").appendField(q.Msg.MIXLY_JOYSTICK).appendField(new q.FieldDropdown(Da.PSSTK),"psstk"),this.setOutput(!0,Number),this.setTooltip("")},PSSTK:[[q.Msg.PS2_RX,"RX"],[q.Msg.PS2_RY,"RY"],[q.Msg.PS2_LX,"LX"],[q.Msg.PS2_LY,"LY"]]},Na="#947C54",Pa={init:function(){this.setColour(Na),this.appendValueInput("btn").appendField(q.Msg.MIXLY_BUTTON).setCheck(Number),this.appendDummyInput().appendField(q.Msg.MIXLY_IS_PRESSED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SENOR_IS_PRESSED)}},Fa={init:function(){this.setColour(Na),this.appendValueInput("btn").appendField(q.Msg.MIXLY_BUTTON).setCheck(Number),this.appendDummyInput().appendField(q.Msg.MIXLY_WAS_PRESSED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SENOR_WAS_PRESSED)}},Ya={init:function(){this.setColour(Na),this.appendValueInput("btn").appendField(q.Msg.MIXLY_BUTTON).setCheck(Number),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(q.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.PROCEDURES_DEFRETURN_RETURN+q.Msg.MIXLY_BUTTON+q.Msg.MIXLY_GET_PRESSES)}},va={init:function(){this.setColour(Na),this.appendValueInput("btn").appendField(q.Msg.MIXLY_ESP32_INTERRUPT).appendField(q.Msg.MIXLY_BUTTON).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.MIXLY_MODE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[q.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[q.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},Xa={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_BUTTON),this.appendDummyInput().appendField(q.Msg.MIXLY_IS_PRESSED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SENOR_IS_PRESSED)}},ba={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_BUTTON),this.appendDummyInput().appendField(q.Msg.MIXLY_WAS_PRESSED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SENOR_WAS_PRESSED)}},ya={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_BUTTON),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_PRESSES),this.appendValueInput("VAR").setCheck(Number).appendField(q.Msg.MIXLY_GET_PRESSES_TIME),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.PROCEDURES_DEFRETURN_RETURN+q.Msg.MIXLY_BUTTON+q.Msg.MIXLY_GET_PRESSES)}},Va={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_INTERRUPT).appendField(q.Msg.MIXLY_BUTTON),this.appendDummyInput("").appendField(q.Msg.MIXLY_MODE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_RISING,"machine.Pin.IRQ_RISING"],[q.Msg.MIXLY_FALLING,"machine.Pin.IRQ_FALLING"],[q.Msg.MIXLY_CHANGE,"(machine.Pin.IRQ_RISING | machine.Pin.IRQ_FALLING)"]]),"mode"),this.appendValueInput("DO").appendField(q.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_ATTACHINTERRUPT)}},Ba={init:function(){this.setColour(Na),this.appendValueInput("button").appendField(q.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(q.Msg.MIXLY_IS_TOUCHED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_sensor_pin_pressed)}},Ga={init:function(){this.setColour(Na),this.appendValueInput("button").appendField(q.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(q.Msg.MIXLY_IS_TOUCHED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_sensor_pin_pressed)}},Ua={init:function(){this.setColour(Na),this.appendValueInput("button").appendField(q.Msg.MIXLY_ESP32_TOUCH_SENSOR),this.appendDummyInput().appendField(q.Msg.MIXLY_IS_TOUCHED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_sensor_pin_pressed)}},wa={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_TOUCH_SLIDE),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOUCH_SLIDE_TOOLTIP)}},ka={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_CHAOSHENGBO),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_CHAOSHENGBO)}},xa={init:function(){this.setColour(Na),this.appendDummyInput("").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RTCSETTIME).appendField("myRTC"),this.appendValueInput("hour").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_HOUR),this.appendValueInput("minute").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_MINUTE),this.appendValueInput("second").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!1),this.setTooltip(q.Msg.MIXLY_RTCSETTIME+q.Msg.MIXLY_MIX2)}},Ha={init:function(){this.setColour(Na),this.appendDummyInput("").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RTCSETDATE).appendField("myRTC"),this.appendValueInput("year").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_YEAR),this.appendValueInput("month").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_MONTH),this.appendValueInput("day").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(" "+q.Msg.MIXLY_DAY),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(q.Msg.MIXLY_RTCSETDATE+q.Msg.MIXLY_MIX1)}},Wa={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_CHAOSHENGBO),this.appendValueInput("PIN1",Number).appendField("Trig #").setCheck(Number),this.appendValueInput("PIN2",Number).appendField("Echo #").setCheck(Number),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_CHAOSHENGBO)}},Ka={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_LIGHT),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},Ja={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["1","touch1"],["2","touch2"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},Qa={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["0","0"],["1","1"],["2","2"],["3","3"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},qa={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([[q.Msg.MIXLY_UP,"12"],[q.Msg.MIXLY_DOWN,"14"],[q.Msg.MIXLY_LEFT,"13"],[q.Msg.MIXLY_RIGHT,"15"],["A","32"],["B","33"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},ja={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},za={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["0","0"],["1","1"],["2","2"],["3","3"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},Za={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["3","3"],["4","4"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},$a={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown([["0","0"],["1","1"]]),"op"),this.setOutput(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_INOUT_HIGHLOW)}},tl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_EXTERN_NEAR),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_EXTERN_VALUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+q.Msg.MIXLY_ESP32_NEAR)}},el={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.TEXT_TRIM_LEFT,"left"],[q.Msg.TEXT_TRIM_RIGHT,"right"]]),"direction").appendField(q.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=q.Msg.MIXLY_ESP32_NEAR;return i+{left:q.Msg.TEXT_TRIM_LEFT,right:q.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},il={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0)}},nl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.TEXT_TRIM_LEFT,"l"],[q.Msg.TEXT_TRIM_RIGHT,"r"]]),"direction").appendField(q.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=q.Msg.MIXLY_ESP32_NEAR;return i+{l:q.Msg.TEXT_TRIM_LEFT,r:q.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},sl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.TEXT_TRIM_LEFT,"l"],[q.Msg.TEXT_TRIM_RIGHT,"r"]]),"direction").appendField(q.Msg.MIXLY_ESP32_EXTERN_LIGHT+q.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=q.Msg.MIXLY_ESP32_EXTERN_LIGHT;return i+{l:q.Msg.TEXT_TRIM_LEFT,r:q.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},ol={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_ESP32_EXTERN_LIGHT+q.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0)}},_l={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_COLOR_SENSOR+q.Msg.MIXLY_DATA),this.setOutput(!0,Number),this.setInputsInline(!0)}},ul={init:function(){this.setColour(Na),this.appendDummyInput().appendField("RTC"),this.appendDummyInput().setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RTCGETTIME),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_ESP32_RTC_GET_TIME_TOOLTIP+" (year, month, mday, hour, minute, second, weekday, yearday)")}},pl={init:function(){this.setColour(Na),this.appendValueInput("LIST").appendField(q.Msg.MIXLY_RTCGETTIMESTAMP),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_ESP32_RTC_GET_TIMESTAMP_TOOLTIP)}},rl={init:function(){this.setColour(Na),this.appendValueInput("VAR").appendField(q.Msg.MIXLY_RTC_TIMESTAMP),this.appendDummyInput().appendField(q.Msg.LISTS_TO_TUPLE),this.setInputsInline(!0),this.setOutput(!0,Number)}},al={init:function(){this.setColour(Na),this.appendDummyInput().appendField("RTC"),this.appendValueInput("CONTENT").appendField(q.Msg.MIXLY_USE_STRING_TUPLE),this.appendDummyInput().appendField(q.Msg.MIXLY_RTCSETTIME),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},ll={init:function(){this.setColour(Na),this.appendDummyInput().appendField("RTC"),this.appendValueInput("year").setCheck(Number).appendField(" "+q.Msg.MIXLY_YEAR),this.appendValueInput("month").setCheck(Number).appendField(" "+q.Msg.MIXLY_MONTH),this.appendValueInput("day").setCheck(Number).appendField(" "+q.Msg.MIXLY_DAY),this.appendValueInput("hour").setCheck(Number).appendField(" "+q.Msg.MIXLY_HOUR),this.appendValueInput("minute").setCheck(Number).appendField(" "+q.Msg.MIXLY_MINUTE),this.appendValueInput("second").setCheck(Number).appendField(" "+q.Msg.MIXLY_SECOND),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_ESP32_RTC_SET_DATATIME_TOOLTIP)}},Il={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("RTC"),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_SETUP).setCheck("var"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(q.Msg.MIXLY_ESP32_SENSOR_RTC_INT_TOOLTIP)}},dl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_RTC_GET_TIME_STR),this.setOutput(!0,String),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_ESP32_RTC_GET_TIME_TOOLTIP)}},Tl={init:function(){this.setColour(Na),this.appendValueInput("CONTENT").appendField(q.Msg.MIXLY_GPS_TIME+q.Msg.MIXLY_MICROBIT_TYPE_TUPLE).setCheck(),this.appendDummyInput().appendField(q.Msg.A_TO_B+q.Msg.MIXLY_GPS_TIME+q.Msg.LANG_MATH_STRING),this.setOutput(!0,String),this.setInputsInline(!0)}},Ml={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_LIGHT),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.ESP32_SENSOR_NIXGO_LIGHT_TOOLTIP)}},hl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_SOUND),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.ESP32_SENSOR_NIXGO_SOUND_TOOLTIP)}},ml={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_TEM_HUM+" "),this.appendDummyInput("").appendField(new q.FieldDropdown([[q.Msg.MIXLY_GETTEMPERATUE,"temperature"],[q.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:q.Msg.MIXLY_MICROBIT_SENSOR_SHT_temperature_TOOLTIP,humidity:q.Msg.MIXLY_ESP32C3_SENSOR_AHT_HUM_TOOLTIP}[e]}))}},Ol={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0)}},El={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_Altitude+q.Msg.MSG.catSensor+" "),this.appendDummyInput("").appendField(new q.FieldDropdown([[q.Msg.MIXLY_GETPRESSURE,"pressure()"],[q.Msg.MIXLY_GETTEMPERATUE,"temperature()"],[q.Msg.MIXLY_GET_ALTITUDE,"altitude()"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},cl={init:function(){this.setColour(Na),this.appendDummyInput().appendField("RFID"+q.Msg.MIXLY_RFID_READ_CARD),this.appendDummyInput("").appendField(q.Msg.MIXLY_RFID_READ_CARD_UID),this.setOutput(!0,Number),this.setInputsInline(!0)}},Rl={init:function(){this.setColour(Na),this.appendDummyInput().appendField("RFID"+q.Msg.MIXLY_RFID_READ_CARD),this.appendValueInput("SECTOR").appendField(q.Msg.MIXLY_LIST_INDEX),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL),this.setOutput(!0,Number),this.setInputsInline(!0)}},gl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(q.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(q.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Cl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_COMMUNICATION_RFID_WRITE),this.appendValueInput("SECTOR").appendField(q.Msg.MIXLY_LIST_INDEX),this.appendValueInput("CONTENT").appendField(q.Msg.MIXLY_COMMUNICATION_WRITE_NUM),this.appendDummyInput().appendField(q.Msg.RETURN_SUCCESS_OR_NOT),this.setInputsInline(!0),this.setOutput(!0,Boolean)}},Al={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("RFID").appendField(new q.FieldDropdown([[q.Msg.MIXLY_RFID_SCAN_OK,"True"],[q.Msg.MIXLY_RFID_SCAN_NOTAGERR,"None"],[q.Msg.MIXLY_RFID_SCAN_ERROR,"False"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ll={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new q.FieldDropdown([["x","[0]"],["y","[1]"],["z","[2]"],["(x,y,z)",""],[q.Msg.MIXLY_STRENGTH,"strength"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{"[0]":"x","[1]":"y","[2]":"z","":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},Sl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_GET_GESTURE_ALL).appendField(new q.FieldDropdown([[q.Msg.ME_GO_PITCH,"[0]"],[q.Msg.ME_GO_ROLL,"[1]"],[q.Msg.ME_GO_PITCH+", "+q.Msg.ME_GO_ROLL,""]]),"angle"),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},fl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_shake,"shake"],[q.Msg.MIXLY_UP,"up"],[q.Msg.MIXLY_DOWN,"down"],[q.Msg.MIXLY_LEFT,"left"],[q.Msg.MIXLY_RIGHT,"right"],[q.Msg.MIXLY_MICROBIT_face_up,"face up"],[q.Msg.MIXLY_MICROBIT_face_down,"face down"]]),"gesture"),this.setOutput(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("gesture"),i=q.Msg.MIXLY_MICROBIT_JS_CURRENT,n=q.Msg.MSG.catSensor,s=q.Msg.MIXLY_MICROBIT_JS_STATE,o=q.Msg.MIXLY_MICROBIT_PERFORMANCE;return i+n+s+{shake:q.Msg.MIXLY_MICROBIT_shake,up:q.Msg.MIXLY_UP,down:q.Msg.MIXLY_DOWN,left:q.Msg.MIXLY_LEFT,right:q.Msg.MIXLY_RIGHT,"face up":q.Msg.MIXLY_MICROBIT_face_up,"face down":q.Msg.MIXLY_MICROBIT_face_down}[e]+o}))}},Dl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_ACCELERATION).appendField(new q.FieldDropdown([["x","x"],["y","y"],["z","z"],["(x,y,z)","values"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_ACCELERATION);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_MICROBIT_JS_ACCELERATION1;return i+{x:"x",y:"y",z:"z","(x,y,z)":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},Nl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_GET+q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new q.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=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{x:"x",y:"y",z:"z","(x,y,z)":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},Pl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new q.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=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{x:"x",y:"y",z:"z","(x,y,z)":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},Fl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},Yl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_GETTEMPERATUE)}},vl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_GET_COMPASS).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,"strength"],[q.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 q.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+{strength:q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH,heading:q.Msg.MIXLY_MICROBIT_JS_BY_ANGLE}[e]}))}},Xl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField("MPU9250"),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_Reset_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_Reset_COMPASS)}},bl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_GET+q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH).appendField(new q.FieldDropdown([["x","[0]"],["y","[1]"],["z","[2]"],["(x,y,z)",""],[q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH_ALL,"all"]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_MICROBIT_JS_FIELD_STRENGTH;return i+{"[0]":"x","[1]":"y","[2]":"z","":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},yl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_GET_COMPASS+q.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setOutput(!0,Number),this.setInputsInline(!0)}},Vl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_CALIBRATE_COMPASS)}},Bl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_GETTEMPERATUE),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Gl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_GETTEMPERATUE),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Ul={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new q.FieldDropdown([["x","[0]"],["y","[1]"],["z","[2]"],["(x,y,z)",""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{"[0]":"x","[1]":"y","[2]":"z","":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},wl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_GETTEMPERATUE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_GETTEMPERATUE)}},kl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.TEXT_TRIM_LEFT,"1"],[q.Msg.TEXT_TRIM_RIGHT,"2"]]),"direction").appendField(q.Msg.MIXLY_ESP32_NEAR),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("direction"),i=q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP,n=q.Msg.MIXLY_ESP32_NEAR;return i+{left:q.Msg.TEXT_TRIM_LEFT,right:q.Msg.TEXT_TRIM_RIGHT}[e]+n}))}},xl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0),this.setInputsInline(!0)}},Hl={init:function(){this.setColour(Na),this.appendDummyInput().appendField("acc"+q.Msg.MIXLY_MICROBIT_JS_GET).appendField(new q.FieldDropdown([[q.Msg.MIXLY_ADXL345_XA,"[0]"],[q.Msg.MIXLY_ADXL345_YA,"[1]"],[q.Msg.MIXLY_ACC_SHAKE,"[2]"],[q.Msg.MIXLY_ADXL345_XA+","+q.Msg.MIXLY_ADXL345_YA+","+q.Msg.MIXLY_ACC_SHAKE,""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_ACCELERATION)}},Wl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.TEXT_TRIM_LEFT,"[0]"],[q.Msg.MIXGO_LEFT_MID,"[1]"],[q.Msg.MIXGO_RIGHT_MID,"[2]"],[q.Msg.TEXT_TRIM_RIGHT,"[3]"],[q.Msg.MIXLY_ALL,""]]),"key").appendField(q.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+q.Msg.MIXLY_ESP32_NEAR}))}},Kl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.MIXGO_LEFT_FRONT,"[0]"],[q.Msg.MIXGO_RIGHT_FRONT,"[1]"],[q.Msg.MIXGO_LEFT_BACK,"[3]"],[q.Msg.MIXGO_RIGHT_BACK,"[2]"],[q.Msg.MIXLY_ALL,""]]),"key").appendField(q.Msg.MIXGO_PROXIMITY_SENSOR),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+q.Msg.MIXLY_ESP32_NEAR}))}},Jl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_CHANGE).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MIXGO_CAR_SENSOR_ONBOARD_AUTO_CHANGE,"AS"],[q.Msg.MIXLY_MIXGO_CAR_USE_LINE_ONLY,"LP"],[q.Msg.MIXLY_MIXGO_CAR_USE_PROXIMITY_ONLY,"OA"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Ql={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MIXGO_CAR_BATTERY_LEFT),this.setOutput(!0),this.setInputsInline(!0)}},ql={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXGO_LINE_SENSOR).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MIXBOT_LINE_SENSOR_CALIBRATE_WHITE,"WHITE"],[q.Msg.MIXLY_MIXBOT_LINE_SENSOR_CALIBRATE_BLACK,"BLACK"],[q.Msg.MIXLY_MIXBOT_LINE_SENSOR_CALIBRATE_RESET,"RESET_TO_FAB"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},jl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new q.FieldDropdown([[q.Msg.MIXGO_LEFT_FRONT,"[0]"],[q.Msg.MIXGO_RIGHT_FRONT,"[1]"],[q.Msg.MIXGO_LEFT_BACK,"[3]"],[q.Msg.MIXGO_RIGHT_BACK,"[2]"],[q.Msg.MIXLY_ALL,""]]),"key").appendField(q.Msg.MIXGO_LINE_SENSOR_VAL),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip((function(){return q.Msg.MIXLY_ESP32_SENSOR_MIXGO_PIN_NEAR_TOOLTIP+q.Msg.MIXLY_ESP32_NEAR}))}},zl={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_MICROBIT_JS_GET+q.Msg.MIXLY_MICROBIT_Board_temperature),this.appendDummyInput(""),this.setOutput(!0,Number),this.setInputsInline(!0)}},Zl={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_ESP32_SENOR_GYRO).appendField(new q.FieldDropdown([["x","[0]"],["y","[1]"],["z","[2]"],["(x,y,z)",""]]),"key"),this.setOutput(!0,Number),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i=q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET,n=q.Msg.MIXLY_MICROBIT_Direction,s=q.Msg.MIXLY_ESP32_SENOR_GYRO;return i+{"[0]":"x","[1]":"y","[2]":"z","":q.Msg.MIXLY_MICROBIT_Shiliang_Direction}[e]+n+s}))}},$l={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.ANALOG+q.Msg.MIXLY_ESP32_EXTERN_LIGHT),this.appendValueInput("mode").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.LCD_NUMBERING),this.appendDummyInput().appendField(q.Msg.MIXLY_GET_LIGHT_INTENSITY+"(%)"),this.setOutput(!0,Number),this.setInputsInline(!0)}},tI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(new q.FieldDropdown(j.Profile.default.als_num),"PIN"),this.setOutput(!0,Number)}},eI=Pa,iI=Fa,nI=Ya,sI=Ba,oI=il,_I=Ka,uI=Aa,pI=Sa,rI=La,aI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_ESP32_EXTERN_SOUND),this.setInputsInline(!0),this.setOutput(!0)}},lI={init:function(){this.setColour(Na),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_GET).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.blockpy_set_of+q.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.setInputsInline(!0),this.setOutput(!0)}},II={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_LIGHT_SENSOR),this.setInputsInline(!0),this.setOutput(!0)}},dI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_GYROSCOPE_SENSOR),this.setInputsInline(!0),this.setOutput(!0)}},TI={init:function(){this.setColour(Na),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_GET).setCheck("var"),this.appendDummyInput("").appendField(new q.FieldDropdown([[q.Msg.MIXLY_Horizontal_inclination,"X"],["y","[1]"],["z","[2]"]]),"key"),this.setInputsInline(!0),this.setOutput(!0)}},MI={init:function(){this.setColour(Na),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_GET).setCheck("var"),this.appendDummyInput("").appendField(q.Msg.MIXLY_BE_SHAKED),this.setInputsInline(!0),this.setOutput(!0)}},hI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_BUTTON).appendField(new q.FieldDropdown([["a","a"],["b","b"],["c","c"]]),"btn"),this.setOutput(!0),this.setInputsInline(!0)}},mI={init:function(){this.setColour(Na),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_BUTTON),this.appendDummyInput().appendField(q.Msg.MIXLY_WAS_PRESSED),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SENOR_WAS_PRESSED)}},OI={init:function(){this.setColour(Na),this.appendValueInput("PIN").appendField(q.Msg.MIXLY_COMMUNICATION_RFID_INITIAL),this.setOutput(!0),this.setInputsInline(!0)}},EI={init:function(){this.setColour(Na),this.appendValueInput("SUB"),this.appendDummyInput("").appendField(q.Msg.MIXLY_COMMUNICATION_RFID_READ),this.setOutput(!0),this.setInputsInline(!0)}},cI={init:function(){this.setColour(Na),this.appendValueInput("SUB").appendField(q.Msg.MIXLY_COMMUNICATION_RFID_READ+q.Msg.MIXLY_COMMUNICATION_DATA_FROM),this.appendDummyInput("").appendField(q.Msg.MIXLY_GET).appendField(new q.FieldDropdown([[q.Msg.MIXLY_SERIAL_NUMBER,"serial_number"]]),"key"),this.setOutput(!0),this.setInputsInline(!0)}},RI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_AipSpeech_asr+q.Msg.MIXLY_IDENTIFY_ONCE_AND_SAVE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},gI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_AipSpeech_asr+q.Msg.MIXLY_GET).appendField(new q.FieldDropdown([[q.Msg.MIXLY_HELLO_XIAOZHI,"1"],[q.Msg.MIXLY_XIAOZHIXIAOZHI,"2"],[q.Msg.MIXLY_THE_FIRST,"3"],[q.Msg.MIXLY_THE_SECOND,"4"],[q.Msg.MIXLY_THE_THIRD,"5"],[q.Msg.MIXLY_THE_FOURTH,"6"],[q.Msg.MIXLY_THE_FIFTH,"7"],[q.Msg.MIXLY_THE_SIXTH,"8"],[q.Msg.MIXLY_THE_SEVENTH,"9"],[q.Msg.MIXLY_THE_EIGHTH,"10"],[q.Msg.MIXLY_THE_NINTH,"11"],[q.Msg.MIXLY_THE_TENTH,"12"],[q.Msg.MIXLY_THE_ELEVENTH,"13"],[q.Msg.MIXLY_THE_TWELFTH,"14"],[q.Msg.MIXLY_THE_13TH,"15"],[q.Msg.MIXLY_THE_14TH,"16"],[q.Msg.MIXLY_THE_15TH,"17"],[q.Msg.MIXLY_THE_16TH,"18"],[q.Msg.MIXLY_THE_17TH,"19"],[q.Msg.MIXLY_THE_18TH,"20"],[q.Msg.MIXLY_THE_19TH,"21"],[q.Msg.MIXLY_THE_20TH,"22"],[q.Msg.MIXLY_Turn_on_the_lights,"23"],[q.Msg.MIXLY_Turn_off_the_lights,"24"],[q.Msg.MIXLY_Turn_up_the_brightness,"25"],[q.Msg.MIXLY_Turn_down_the_brightness,"26"],[q.Msg.MIXLY_Set_it_to_red,"27"],[q.Msg.MIXLY_Set_it_to_orange,"28"],[q.Msg.MIXLY_Set_it_to_yellow,"29"],[q.Msg.MIXLY_Set_it_to_green,"30"],[q.Msg.MIXLY_Set_it_to_cyan,"31"],[q.Msg.MIXLY_Set_it_to_blue,"32"],[q.Msg.MIXLY_Set_it_to_purple,"33"],[q.Msg.MIXLY_Set_it_to_white,"34"],[q.Msg.MIXLY_Turn_on_the_fan,"35"],[q.Msg.MIXLY_Turn_off_the_fan,"36"],[q.Msg.MIXLY_First_gear,"37"],[q.Msg.MIXLY_Wind_speed_second,"38"],[q.Msg.MIXLY_Third_gear,"39"],[q.Msg.MIXLY_Previous,"40"],[q.Msg.MIXLY_Next_page,"41"],[q.Msg.MIXLY_Show_smiley_face,"42"],[q.Msg.MIXLY_Show_crying_face,"43"],[q.Msg.MIXLY_Show_love,"44"],[q.Msg.MIXLY_Close_display,"45"],[q.Msg.MIXLY_Start_execution,"46"],[q.Msg.MIXLY_FORWARD,"47"],[q.Msg.MIXLY_BACKWARD,"48"],[q.Msg.MIXLY_TURNLEFT,"49"],[q.Msg.MIXLY_TURNRIGHT,"50"],[q.Msg.MIXLY_STOP,"51"],[q.Msg.MIXLY_Accelerate,"52"],[q.Msg.MIXLY_retard,"53"],[q.Msg.ROTATION_FORWARD,"54"],[q.Msg.ROTATION_BACKWARD,"55"],[q.Msg.MIXLY_Query_temperature,"56"],[q.Msg.MIXLY_Query_humidity,"57"],[q.Msg.MIXLY_Query_brightness,"58"],[q.Msg.MIXLY_Query_sound,"59"],[q.Msg.MIXLY_Query_time,"60"],[q.Msg.MIXLY_Query_distance,"61"],[q.Msg.MIXLY_Query_pressure,"62"],[q.Msg.MIXLY_Query_key,"63"],[q.Msg.MIXLY_Query_touch,"64"],[q.Msg.MIXLY_Query_color,"65"]]),"cmd").appendField(q.Msg.MIXLY_WHETHER+q.Msg.MIXLY_BE_IDENTIFIED),this.setOutput(!0),this.setInputsInline(!0)}},CI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_AipSpeech_asr+q.Msg.MIXLY_GET).appendField(new q.FieldDropdown([[q.Msg.MIXLY_RECOGNIZED_STATE,"status1"],[q.Msg.MIXLY_WHETHER_BROADCAST,"status2"],[q.Msg.MIXLY_THE_RECOGNIZED_CMD,"result"]]),"key"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_CI130X_GET_THE_RECOGNIZED_STATE_TOOLTIP)}},AI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_AipSpeech_asr+q.Msg.MIXLY_MP3_PLAY).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,"None"],[q.Msg.MIXLY_WIND_SPEED,"154"],[q.Msg.MIXLY_HYETAL,"155"],[q.Msg.MIXLY_TEMPERATURE,"156"],[q.Msg.MIXLY_Humidity,"157"],[q.Msg.MIXLY_Altitude,"158"],[q.Msg.MIXLY_SOUND,"159"],[q.Msg.MIXLY_BRIGHTNESS,"160"],[q.Msg.ME_GO_HALL_SENSOR_DISTANCE,"161"],[q.Msg.MIXLY_SERVO,"162"],[q.Msg.MIXLY_MICROBIT_JS_BY_ANGLE,"163"],[q.Msg.MIXLY_BUTTON2,"164"],[q.Msg.MIXLY_ESP32_TOUCH,"165"],[q.Msg.MIXLY_PAY,"166"],[q.Msg.MIXLY_CARSH_CHANGE,"167"],[q.Msg.MIXLY_COUNTDOWN,"168"],[q.Msg.MIXLY_TIMING,"169"],[q.Msg.MIXLY_AT_THE_MOMENT,"170"],[q.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE,"171"],[q.Msg.MIXLY_FORWARD,"172"],[q.Msg.MIXLY_BACKWARD,"173"],[q.Msg.MIXLY_TURNLEFT,"174"],[q.Msg.MIXLY_TURNRIGHT,"175"],[q.Msg.MIXLY_STOP,"176"],[q.Msg.MIXLY_Accelerate,"177"],[q.Msg.MIXLY_retard,"178"],[q.Msg.ROTATION_FORWARD,"179"],[q.Msg.ROTATION_BACKWARD,"180"],[q.Msg.TUPLE_JOIN,"181"],[q.Msg.MIXLY_SHOW,"182"],[q.Msg.MIXLY_LAMPLIGHT,"183"],[q.Msg.MIXLY_ACCELERATION,"184"]]),"star"),this.appendValueInput("NUM").appendField(q.Msg.MIXLY_NUMBER),this.appendDummyInput("").appendField(q.Msg.MIXLY_UNIT).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,"None"],[q.Msg.MIXLY_YEAR,"117"],[q.Msg.MIXLY_MONTH,"118"],[q.Msg.MIXLY_DAY,"119"],[q.Msg.MIXLY_HOUR,"120"],[q.Msg.MIXLY_MINUTE,"121"],[q.Msg.MIXLY_SECOND,"122"],[q.Msg.MIXLY_WEEK2,"123"],[q.Msg.MIXLY_RMB_UNIT,"124"],[q.Msg.blockpy_setheading_degree,"125"],[q.Msg.MIXLY_GEAR,"126"],[q.Msg.MIXLY_LAYER,"127"],[q.Msg.MIXLY_GRAM,"128"],[q.Msg.MIXLY_METER,"129"],[q.Msg.MIXLY_CENTIMETER,"130"],[q.Msg.MIXLY_MILLIMETER,"131"],[q.Msg.MIXLY_LUMEN,"132"],[q.Msg.MIXLY_DECIBEL,"133"],[q.Msg.MIXLY_hectopascal,"134"],[q.Msg.MIXLY_PERCENT,"135"],[q.Msg.MIXLY_CELSIUS,"136"],[q.Msg.MIXLY_METER_PER_SEC,"137"],[q.Msg.MIXLY_MICROBIT_Turn_on_display,"138"],[q.Msg.MIXLY_MICROBIT_Turn_off_display,"139"],[q.Msg.MIXLY_SUCCESS,"140"],[q.Msg.MIXLY_FAILED,"141"],[q.Msg.MIXLY_WRONG,"142"],[q.Msg.MIXLY_GOOD,"143"],[q.Msg.MIXLY_blockpy_set_add,"144"],[q.Msg.MIXLY_DECREASE,"145"],[q.Msg.COLOUR_RGB_RED,"146"],[q.Msg.COLOUR_RGB_ORANGE,"147"],[q.Msg.COLOUR_YELLOW,"148"],[q.Msg.COLOUR_RGB_GREEN,"149"],[q.Msg.COLOUR_CYAN,"150"],[q.Msg.COLOUR_RGB_BLUE,"151"],[q.Msg.COLOUR_RGB_PURPLE,"152"],[q.Msg.COLOUR_RGB_WHITE,"153"]]),"end"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},LI={init:function(){this.setColour(Na),this.appendDummyInput("").appendField(q.Msg.MIXLY_AipSpeech_asr+q.Msg.LISTS_SET_INDEX_SET+q.Msg.MIXLY_SYSTEM+q.Msg.MIXLY_CMD).appendField(new q.FieldDropdown([[q.Msg.MILXY_ENTER_WAKE_UP,"1"],[q.Msg.MIXLY_INCREASE_VOLUME,"202"],[q.Msg.MIXLY_REDUCE_VOLUME,"203"],[q.Msg.MIXLY_MAX_VOLUME,"204"],[q.Msg.MIXLY_MINIMUM,"205"],[q.Msg.MIXLY_OPEN_RESPONSE,"206"],[q.Msg.MIXLY_CLOSE_RESPONSE,"207"],[q.Msg.MIXLY_QUIT_WAKE_UP,"208"]]),"cmd"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},SI={init:function(){this.setColour(Na),this.appendDummyInput().appendField(q.Msg.MIXLY_GET+q.Msg.MIXLY_THE_COPROCESSOR_VERSION),this.setOutput(!0),this.setInputsInline(!0)}},fI=40,DI={init:function(){this.setColour(fI),this.appendValueInput("PIN",Number).appendField(new q.FieldDropdown([["DHT11","dht11"],["DHT22","dht22"]]),"TYPE").appendField(q.Msg.MIXLY_PIN).setCheck(Number),this.appendDummyInput("").appendField(new q.FieldDropdown(DI.METHOD),"WHAT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("WHAT");return{temperature:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM,relative_humidity:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_HUM,tempandhum:q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_GET_TEM_HUM}[e]}))},METHOD:[[q.Msg.MIXLY_GETTEMPERATUE,"temperature"],[q.Msg.MIXLY_GETHUMIDITY,"relative_humidity"],[q.Msg.MIXLY_DHT11_T_H,"tempandhum"]]};const NI=function(t,e){return e.definitions_.import_network="import network",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+" = network.WLAN(network."+this.getFieldValue("mode")+"_IF);\n"},PI=function(t,e){return e.definitions_.import_network="import network",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".connect("+e.valueToCode(this,"id",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"password",e.ORDER_ATOMIC)+")\n"},FI=function(t,e){return e.definitions_.import_network="import network",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".isconnected()",e.ORDER_ATOMIC]},YI=function(t,e){return e.definitions_.import_network="import network",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".ifconfig()["+this.getFieldValue("mode")+"]",e.ORDER_ATOMIC]},vI=function(t,e){return e.definitions_.import_network="import network",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".disconnect()\n"},XI=function(t,e){return e.definitions_.import_network="import network",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".active("+this.getFieldValue("op")+")\n"},bI=function(t,e){return e.definitions_.import_network="import network",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".active()",e.ORDER_ATOMIC]},yI=function(t,e){return e.definitions_.import_network="import network",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".config('"+this.getFieldValue("op")+"')",e.ORDER_ATOMIC]},VI=function(t,e){return e.definitions_.import_network="import network",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".config(essid = "+e.valueToCode(this,"essid",e.ORDER_ATOMIC)+", channel="+e.valueToCode(this,"channel",e.ORDER_ATOMIC)+")\n"},BI=function(t,e){return e.definitions_.import_network="import network",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".scan()",e.ORDER_ATOMIC]},GI=function(t,e){e.definitions_["import_server_*"]="from server import *";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);return"if not "+i+".isconnected():\n connectWifi(SSID, PASSWORD)\nip="+i+".ifconfig()[0]\nprint(ip)\ntime.sleep(1)\nDATA=listenData()\n"},UI=function(t,e){e.definitions_.import_network="import network",e.definitions_.import_socket="import socket";var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=this.getFieldValue("mode");return"UDP"==n?n="socket.SOCK_DGRAM":"TCP"==n&&(n="socket.SOCK_STREAM"),i+" = socket.socket(socket.AF_INET, "+n+")\n"},wI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".bind("+e.valueToCode(this,"address",e.ORDER_ATOMIC)+")\n"},kI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".connect(socket.getaddrinfo"+e.valueToCode(this,"address",e.ORDER_ATOMIC)+"[0][-1])\n"},xI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".listen("+e.valueToCode(this,"queue",e.ORDER_ATOMIC)+")\n"},HI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".accept()",e.ORDER_ASSIGNMENT]},WI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".recv("+e.valueToCode(this,"size",e.ORDER_ATOMIC)+")",e.ORDER_ASSIGNMENT]},KI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".send("+e.valueToCode(this,"content",e.ORDER_ATOMIC)+")\n"},JI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".recvfrom("+e.valueToCode(this,"size",e.ORDER_ATOMIC)+")",e.ORDER_ASSIGNMENT]},QI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".sendto("+e.valueToCode(this,"content",e.ORDER_ATOMIC)+", "+e.valueToCode(this,"address",e.ORDER_ATOMIC)+")\n"},qI=function(t,e){return e.definitions_.import_network="import network",e.definitions_.import_socket="import socket",e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".close()\n"},jI=function(t,e){return e.definitions_.import_requests="import requests",e.variableDB_.getName(this.getFieldValue("VAR"),q.Variables.NAME_TYPE)+"= requests.get("+e.valueToCode(this,"DOMAIN",e.ORDER_ATOMIC)+")\n"},zI=function(t,e){return e.definitions_.import_requests="import requests",[(e.valueToCode(this,"VAL",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("ATTR"),e.ORDER_ATOMIC]},ZI=function(t,e){return e.definitions_.import_requests="import requests","requests."+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},$I=function(t,e){return e.definitions_.import_ntptime="import ntptime",["ntptime.time(host="+e.valueToCode(this,"data",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},td=function(t,e){return["'"+this.getFieldValue("op")+"'",e.ORDER_ATOMIC]},ed=function(t,e){return e.definitions_.import_urequests="import urequests",["urequests."+this.getFieldValue("TYPE")+"("+e.valueToCode(this,"URL",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},id=function(t,e){return e.definitions_.import_urequests="import urequests",[(e.valueToCode(this,"VAL",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("ATTR"),e.ORDER_ATOMIC]},nd=function(t,e){return e.definitions_.import_urequests="import urequests",["urequests."+this.getFieldValue("TYPE")+"("+e.valueToCode(this,"URL",e.ORDER_ATOMIC)+", data="+e.valueToCode(this,"data",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sd=function(t,e){return e.definitions_.import_educore_wifi="from educore import wifi","wifi.connect(ssid="+e.valueToCode(this,"WIFINAME",e.ORDER_ATOMIC)+", psd="+e.valueToCode(this,"PASSWORD",e.ORDER_ATOMIC)+", timeout="+e.valueToCode(this,"TIMEOUT",e.ORDER_ATOMIC)+")\n"},od=function(t,e){return e.definitions_.import_educore_mqttclient="from educore import mqttclient","mqttclient.connect(server="+e.valueToCode(this,"SERVER",e.ORDER_ATOMIC)+", port="+e.valueToCode(this,"PORT",e.ORDER_ATOMIC)+", client_id="+e.valueToCode(this,"CLIENT_ID",e.ORDER_ATOMIC)+", user="+e.valueToCode(this,"USERNAME",e.ORDER_ATOMIC)+", psd="+e.valueToCode(this,"PASSWORD",e.ORDER_ATOMIC)+")\n"},_d=function(t,e){e.definitions_.import_educore_mqttclient="from educore import mqttclient";var i=e.valueToCode(this,"TOPIC",e.ORDER_ATOMIC);return["mqttclient."+e.valueToCode(this,"MESSAGE",e.ORDER_ATOMIC)+"("+i+")",e.ORDER_ATOMIC]},ud=function(t,e){var i=e.valueToCode(this,"TOPIC",e.ORDER_ATOMIC),n=e.valueToCode(this,"METHOD",e.ORDER_ATOMIC);return e.definitions_.import_educore_mqttclient="from educore import mqttclient","mqttclient.received(topic="+i+", callback="+n+")\n"},pd=function(t,e){return e.definitions_.import_educore_mqttclient="from educore import mqttclient","mqtt_client.publish(topic="+e.valueToCode(this,"TOPIC",e.ORDER_ATOMIC)+", content="+e.valueToCode(this,"MSG",e.ORDER_ATOMIC)+")\n"},rd=function(t,e){e.definitions_.import_educore_mqttclient="from educore import mqttclient";return["mqtt_client.connescted()",e.ORDER_ATOMIC]},ad=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+"."+e.valueToCode(this,"btn",e.ORDER_ATOMIC)+".is_pressed()",e.ORDER_ATOMIC]},ld=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+"."+e.valueToCode(this,"btn",e.ORDER_ATOMIC)+".was_pressed()",e.ORDER_ATOMIC]},Id=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+"."+e.valueToCode(this,"btn",e.ORDER_ATOMIC)+".get_presses("+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},dd=function(t,e){e.definitions_.import_machine="import machine";var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i]="import "+i;var n=e.valueToCode(this,"btn",e.ORDER_ATOMIC),s=this.getFieldValue("mode");return i+"."+n+".irq(handler="+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger="+s+")\n"},Td=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+".button.is_pressed()",e.ORDER_ATOMIC]},Md=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+".button.was_pressed()",e.ORDER_ATOMIC]},hd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+".button.get_presses("+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},md=function(t,e){e.definitions_.import_machine="import machine";var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i]="import "+i;var n=this.getFieldValue("mode");return i+".button.irq(handler="+e.valueToCode(this,"DO",e.ORDER_ATOMIC)+", trigger="+n+")\n"},Od=function(t,e){return e.definitions_.import_sonar="import sonar",["sonar.Sonar("+e.valueToCode(this,"PIN1",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"PIN2",e.ORDER_ASSIGNMENT)+").checkdist()",e.ORDER_ATOMIC]},Ed=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},cd=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},Rd=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},gd=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},Cd=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},Ad=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},Ld=function(t,e){return[this.getFieldValue("op"),e.ORDER_ATOMIC]},Sd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_als"]="from "+i+" import onboard_als";return["onboard_als.ps_nl()",e.ORDER_ATOMIC]},fd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+".infrared_"+this.getFieldValue("direction")+"()",e.ORDER_ATOMIC]},Dd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_als"]="from "+i+" import onboard_als";return["onboard_als.ps()",e.ORDER_ATOMIC]},Nd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("direction");return e.definitions_["import_"+i+"_"+n]="from "+i+" import onboard_als_"+n,["onboard_als_"+n+".ps_nl()",e.ORDER_ATOMIC]},Pd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_als"]="from "+i+" import onboard_als";return["onboard_als.als()",e.ORDER_ATOMIC]},Fd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_als"]="from "+i+" import onboard_als";return["onboard_als.color()",e.ORDER_ATOMIC]},Yd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("direction");return e.definitions_["import_"+i+"_"+n]="from "+i+" import onboard_als_"+n,["onboard_als_"+n+".als_vis()",e.ORDER_ATOMIC]},vd=function(t,e){return e.definitions_.import_ds18x20x="import ds18x20x",["ds18x20x.get_ds18x20_temperature("+e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Xd=function(t,e){return e.definitions_.import_lm35="import lm35",["lm35.get_LM35_temperature("+e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},bd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mixgo"==i)return e.definitions_.import_mixgo="import mixgo",["mixgo.get_brightness()",e.ORDER_ATOMIC];if("mixgo_ce"==i)return e.definitions_.import_mixgo_ce="import mixgo_ce",["mixgo_ce.get_brightness()",e.ORDER_ATOMIC];if("mpython"==i)return e.definitions_.import_mpython_onboard_light="from mpython import onboard_light",["onboard_light.brightness()",e.ORDER_ATOMIC];e.definitions_["import_"+i+"_onboard_als"]="from "+i+" import onboard_als";return["onboard_als.als_vis()",e.ORDER_ATOMIC]},yd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mixbot"==i){e.definitions_["import_"+i+"_sound"]="from "+i+" import sound";var n="sound.loudness()"}else if("mixgo_zero"==i){e.definitions_.import_mixgo_zero_voice_sound_level="from mixgo_zero_voice import sound_level";n="sound_level()"}else if("mixgo_nova"==i){e.definitions_.import_mixgo_nova_voice_sound_level="from mixgo_nova_voice import sound_level";n="sound_level()"}else{if("mixgo"==i)return e.definitions_.import_mixgo="import mixgo",["mixgo.get_soundlevel()",e.ORDER_ATOMIC];if("mpython"==i)return e.definitions_.import_mpython_onboard_sound="from mpython import onboard_sound",["onboard_sound.soundlevel()",e.ORDER_ATOMIC];if("mixgo_mini"==i){e.definitions_["import_"+i+"_onboard_bot"]="from "+i+" import onboard_bot";n="onboard_bot.soundlevel()"}else{e.definitions_["import_"+i+"_onboard_sound"]="from "+i+" import onboard_sound";n="onboard_sound.read()"}}return[n,e.ORDER_ATOMIC]},Vd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key");return"mixgo_mini"==i?(e.definitions_.import_mixgo_mini_onboard_i2c="from mixgo_mini import onboard_i2c",e.definitions_.import_spl06_001="import spl06_001",e.definitions_.import_onboard_bps="onboard_bps = spl06_001.SPL06(onboard_i2c)"):e.definitions_["import_"+i+"_onboard_bps"]="from "+i+" import onboard_bps",["onboard_bps."+n,e.ORDER_ATOMIC]},Bd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key");return"mixgo_nova"==i||"mixgo_zero"==i?e.definitions_["import_"+i+"_onboard_ths"]="from "+i+" import onboard_ths":"mixgo_mini"==i?(e.definitions_.import_mixgo_mini_onboard_i2c="from mixgo_mini import onboard_i2c",e.definitions_.import_shtc3="import shtc3",e.definitions_.import_onboard_ths="onboard_ths = shtc3.SHTC3(onboard_i2c)"):e.definitions_["import_"+i+"_onboard_ths"]="from "+i+" import onboard_ths",["onboard_ths."+n+"()",e.ORDER_ATOMIC]},Gd=function(t,e){return e.definitions_.import_feiyi_onboard_acc="from feiyi import onboard_acc",["onboard_acc.temperature()",e.ORDER_ATOMIC]},Ud=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=i,s="onboard_rfid";return"mixgo_mini"===i?(n="mini_gx",s="ext_rfid"):"mixgo_me"===i&&(n="me_g1",s="ext_rc522"),e.definitions_[`import_${n}_${s}`]=`from ${n} import ${s}`,[`${s}.read_card(0, x="id")`,e.ORDER_ATOMIC]},wd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=i,o="onboard_rfid";return"mixgo_mini"===i?(s="mini_gx",o="ext_rfid"):"mixgo_me"===i&&(s="me_g1",o="ext_rc522"),e.definitions_[`import_${s}_${o}`]=`from ${s} import ${o}`,[`${o}.read_card(${n}, x="content")`,e.ORDER_ATOMIC]},kd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC),o=i,_="onboard_rfid";return"mixgo_mini"===i?(o="mini_gx",_="ext_rfid"):"mixgo_me"===i&&(o="me_g1",_="ext_rc522"),e.definitions_[`import_${o}_${_}`]=`from ${o} import ${_}`,`${_}.write_card(${s}, ${n})\n`},xd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"SECTOR",e.ORDER_ATOMIC),s=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC),o=i,_="onboard_rfid";return"mixgo_mini"===i?(o="mini_gx",_="ext_rfid"):"mixgo_me"===i&&(o="me_g1",_="ext_rc522"),e.definitions_[`import_${o}_${_}`]=`from ${o} import ${_}`,[`${_}.write_card(${s}, ${n})`,e.ORDER_ATOMIC]},Hd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key"),s=i,o="onboard_rfid";return"mixgo_mini"===i?(s="mini_gx",o="ext_rfid"):"mixgo_me"===i&&(s="me_g1",o="ext_rc522"),e.definitions_[`import_${s}_${o}`]=`from ${s} import ${o}`,[`${o}.scan_card() == ${n}`,e.ORDER_ATOMIC]},Wd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("key");if("strength"==n){if("mixbot"==i){e.definitions_["import_"+i+"_acc_gyr"]="from "+i+" import acc_gyr";var s="acc_gyr.strength()"}else{e.definitions_["import_"+i+"_onboard_acc"]="from "+i+" import onboard_acc";s="onboard_acc.strength()"}return[s,e.ORDER_ATOMIC]}if("mixbot"==i){e.definitions_["import_"+i+"_acc_gyr"]="from "+i+" import acc_gyr";s="acc_gyr.accelerometer()"+n}else if("mpython"==i){e.definitions_.import_mpython_motion="from mpython import motion";s="motion.accelerometer()"+n}else{e.definitions_["import_"+i+"_onboard_acc"]="from "+i+" import onboard_acc";s="onboard_acc.acceleration()"+n}return[s,e.ORDER_ATOMIC]},Kd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_onboard_acc"]="from "+i+" import onboard_acc",["onboard_acc.eulerangles()"+this.getFieldValue("angle"),e.ORDER_ATOMIC]},Jd=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=this.getFieldValue("gesture"),n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"mpu"==n&&(e.definitions_.import_mixgo_mpu="from mixgo import mpu"),[n+'.mpu9250_is_gesture("'+i+'")',e.ORDER_ATOMIC]},Qd=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=this.getFieldValue("key"),n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"mpu"==n&&(e.definitions_.import_mixgo_mpu="from mixgo import mpu"),[n+".mpu9250_get_"+i+"()",e.ORDER_ATOMIC]},qd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"button",e.ORDER_ATOMIC);if("mixgo_mini"===i||"mixgo_sant"===i){e.definitions_["import_"+i+"_onboard_bot"]="from "+i+" import onboard_bot";var s="onboard_bot.touched("+n+")"}else{e.definitions_["import_"+i]="import "+i;s=i+".touched("+n+")"}return[s,e.ORDER_ATOMIC]},jd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mixgo_mini"===i||"mixgo_sant"===i){e.definitions_["import_"+i+"_onboard_bot"]="from "+i+" import onboard_bot";var n="onboard_bot.touch_slide()"}else{e.definitions_["import_"+i]="import "+i;n=i+".touch_slide(3, 4)"}return[n,e.ORDER_ATOMIC]},zd=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i]="import "+i,[i+"."+e.valueToCode(this,"button",e.ORDER_ATOMIC)+".is_touched()",e.ORDER_ATOMIC]},Zd=function(t,e){return e.definitions_.import_mpython="import mpython",["mpython.touch_"+e.valueToCode(this,"button",e.ORDER_ATOMIC)+".is_touched()",e.ORDER_ATOMIC]},$d=function(t,e){e.definitions_.import_adxl345="import adxl345";var i,n=this.getFieldValue("key"),s=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"x"==n?i=s+".readX()":"y"==n?i=s+".readY()":"z"==n?i=s+".readZ()":"values"==n&&(i=s+".readXYZ()"),[i,e.ORDER_ATOMIC]},tT=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=this.getFieldValue("key"),n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"mpu"==n&&(e.definitions_.import_mixgo_mpu="from mixgo import mpu"),[n+".mpu9250_magnetic_"+i+"()",e.ORDER_ATOMIC]},eT=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=this.getFieldValue("key"),n=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"mpu"==n&&(e.definitions_.import_mixgo_mpu="from mixgo import mpu"),[n+".mpu9250_gyro_"+i+"()",e.ORDER_ATOMIC]},iT=function(t,e){return e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_compass="from mixgo import compass",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".calibrate()\n"},nT=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);return"mpu"==i&&(e.definitions_.import_mixgo_mpu="from mixgo import mpu"),[i+".mpu9250_get_temperature()",e.ORDER_ATOMIC]},sT=function(t,e){e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine";var i=e.valueToCode(this,"SUB",e.ORDER_ATOMIC);"compass"==i&&(e.definitions_.import_mixgo_compass="from mixgo import compass");var n,s=this.getFieldValue("compass");return"strength"==s?n=i+".get_field_strength()":"heading"==s&&(n=i+".heading()"),[n,e.ORDER_ATOMIC]},oT=function(t,e){return e.definitions_.import_mpu9250="import mpu9250",e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_compass="from mixgo import compass",e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".reset_calibrate()\n"},_T=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("gesture");return e.definitions_.import_mixgo_onboard_mpu="from mixgo import onboard_mpu",['onboard_mpu.mpu9250_is_gesture("'+i+'")',e.ORDER_ATOMIC]},uT=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("key");return e.definitions_.import_mixgo_onboard_mpu="from mixgo import onboard_mpu",["onboard_mpu.mpu9250_get_"+i+"()",e.ORDER_ATOMIC]},pT=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("key");return e.definitions_.import_mixgo_onboard_mpu="from mixgo import onboard_mpu",["onboard_mpu.mpu9250_magnetic_"+i+"()",e.ORDER_ATOMIC]},rT=function(t,e){e.definitions_.import_machine="import machine";var i=this.getFieldValue("key");return e.definitions_.import_mixgo_onboard_mpu="from mixgo import onboard_mpu",["onboard_mpu.mpu9250_gyro_"+i+"()",e.ORDER_ATOMIC]},aT=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_onboard_compass="from mixgo import onboard_compass","onboard_compass.calibrate()\n"},lT=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_onboard_mpu="from mixgo import onboard_mpu",["onboard_mpu.mpu9250_get_temperature()",e.ORDER_ATOMIC]},IT=function(t,e){e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_onboard_compass="from mixgo import onboard_compass";var i,n=this.getFieldValue("compass");return"strength"==n?i="onboard_compass.get_field_strength()":"heading"==n&&(i="onboard_compass.heading()"),[i,e.ORDER_ATOMIC]},dT=function(t,e){return e.definitions_.import_machine="import machine",e.definitions_.import_mixgo_onboard_compass="from mixgo import onboard_compass","onboard_compass.reset_calibrate()\n"},TT=function(t,e){return e.definitions_.import_rtctime="import rtctime","rtctime.settime(("+e.valueToCode(this,"year",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"month",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"day",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"hour",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"minute",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"second",e.ORDER_ASSIGNMENT)+", 0, 0))\n"},MT=function(t,e){var i=e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC);return e.definitions_.import_rtctime="import rtctime","rtctime.settime("+i+")\n"},hT=function(t,e){e.definitions_.import_time="import time";return["time.localtime()",e.ORDER_ATOMIC]},mT=function(t,e){return e.definitions_.import_time="import time",["time.mktime("+e.valueToCode(this,"LIST",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},OT=function(t,e){return e.definitions_.import_time="import time",["time.localtime("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ET=function(t,e){e.definitions_.import_rtctime="import rtctime";return["rtctime.strtime()",e.ORDER_ATOMIC]},cT=function(t,e){return e.definitions_.import_rtctime="import rtctime",["rtctime.strtime("+e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},RT=function(t,e){var i=this.getFieldValue("key"),n=j.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==n)if(e.definitions_.import_mpython_magnetic="from mpython import magnetic","all"==i)var s="magnetic.getstrength()";else s="magnetic.getdata()"+i;else if("mixgo_mini"==n)if(e.definitions_.import_mixgo_mini_onboard_i2c="from mixgo_mini import onboard_i2c",e.definitions_.import_mmc5603="import mmc5603",e.definitions_.import_onboard_mgs="onboard_mgs = mmc5603.MMC5603(onboard_i2c)","all"==i)s="onboard_mgs.getstrength()";else s="onboard_mgs.getdata()"+i;else if(e.definitions_["import_"+n+"_onboard_mgs"]="from "+n+" import onboard_mgs","all"==i)s="onboard_mgs.getstrength()";else s="onboard_mgs.getdata()"+i;return[s,e.ORDER_ATOMIC]},gT=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mpython"==i){e.definitions_.import_mpython_magnetic="from mpython import magnetic"}else"mixgo_mini"==i?(e.definitions_.import_mixgo_mini_onboard_i2c="from mixgo_mini import onboard_i2c",e.definitions_.import_mmc5603="import mmc5603",e.definitions_.import_onboard_mgs="onboard_mgs = mmc5603.MMC5603(onboard_i2c)"):e.definitions_["import_"+i+"_onboard_mgs"]="from "+i+" import onboard_mgs";return["onboard_mgs.getangle()",e.ORDER_ATOMIC]},CT=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];"mixgo_mini"==i?(e.definitions_.import_mixgo_mini_onboard_i2c="from mixgo_mini import onboard_i2c",e.definitions_.import_mmc5603="import mmc5603",e.definitions_.import_onboard_mgs="onboard_mgs = mmc5603.MMC5603(onboard_i2c)"):e.definitions_["import_"+i+"_onboard_mgs"]="from "+i+" import onboard_mgs";return"onboard_mgs.calibrate()\n"},AT=function(t,e){if("mixgo_mini"==j.Boards.getSelectedBoardKey().split(":")[2]){e.definitions_.import_mixgo_mini_onboard_temperature="from mixgo_mini import onboard_temperature";var i="onboard_temperature()"}else{e.definitions_.import_mixgo_me_onboard_acc="from mixgo_me import onboard_acc";i="onboard_acc.temperature()"}return[i,e.ORDER_ATOMIC]},LT=function(t,e){e.definitions_.import_mixgo_ce="import mixgo_ce";return["mixgo_ce.get_temperature()",e.ORDER_ATOMIC]},ST=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mpython_motion="from mpython import motion",["motion.gyroscope()"+i,e.ORDER_ATOMIC]},fT=function(t,e){return e.definitions_.import_mpython_motion="from mpython import motion",["motion.temperature()",e.ORDER_ATOMIC]},DT=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2],n=this.getFieldValue("direction");return e.definitions_["import_"+i+"_adc"+n]="from "+i+" import adc"+n,["adc"+n+".read()",e.ORDER_ATOMIC]},NT=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return"feiyi"==i?(e.definitions_.import_feiyi_onboard_bot51="from feiyi import onboard_bot51",["onboard_bot51.read_bat()",e.ORDER_ATOMIC]):(e.definitions_["import_"+i+"_battery"]="from "+i+" import battery",["battery.voltage()",e.ORDER_ATOMIC])},PT=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_rm_e1_gyro="from rm_e1 import gyro",["gyro.acceleration()"+i,e.ORDER_ATOMIC]},FT=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mixgocar_c3_onboard_info="from mixgocar_c3 import onboard_info",["onboard_info.patrol()"+i,e.ORDER_ATOMIC]},YT=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mixgocar_c3_onboard_info="from mixgocar_c3 import onboard_info",["onboard_info.obstacle()"+i,e.ORDER_ATOMIC]},vT=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mixgocar_c3_onboard_info="from mixgocar_c3 import onboard_info","onboard_info.ir_mode(onboard_info."+i+")\n"},XT=function(t,e){e.definitions_.import_mixgocar_c3_onboard_info="from mixgocar_c3 import onboard_info";return["onboard_info.read_bat()",e.ORDER_ATOMIC]},bT=function(t,e){var i=this.getFieldValue("key"),n=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+n+"_patrol"]="from "+n+" import patrol","patrol.correct(patrol.CORRECTING_"+i+")\n"},yT=function(t,e){var i=this.getFieldValue("key"),n=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+n+"_patrol"]="from "+n+" import patrol",["patrol.getdata()"+i,e.ORDER_ATOMIC]},VT=function(t,e){e.definitions_.import_mixbot_acc_gyr="from mixbot import acc_gyr";return["acc_gyr.temperature()",e.ORDER_ATOMIC]},BT=function(t,e){var i=this.getFieldValue("key");return e.definitions_.import_mixbot_acc_gyr="from mixbot import acc_gyr",["acc_gyr.gyroscope()"+i,e.ORDER_ATOMIC]},GT=function(t,e){return e.definitions_.import_feiyi_onboard_bot51="from feiyi import onboard_bot51",["onboard_bot51.read_als("+e.valueToCode(this,"mode",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},UT=function(t,e){return[this.getFieldValue("PIN"),e.ORDER_ATOMIC]},wT=ad,kT=ld,xT=Id,HT=zd,WT=Dd,KT=bd,JT=KT,QT=function(t,e){return e.definitions_.import_dhtx="import dhtx",["dhtx."+this.getFieldValue("TYPE")+"("+e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+")."+this.getFieldValue("WHAT")+"()",e.ORDER_ATOMIC]},qT=function(t,e){e.definitions_.import_educore_sound="from educore import sound";return["sound()",e.ORDER_ATOMIC]},jT=function(t,e){return[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".read()",e.ORDER_ATOMIC]},zT=function(t,e){e.definitions_.import_educore_light="from educore import light";return["light()",e.ORDER_ATOMIC]},ZT=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_accelerometer"]="from "+i+" import accelerometer";return["accelerometer()",e.ORDER_ATOMIC]},$T=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_accelerometer"]="from "+i+" import accelerometer",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+this.getFieldValue("key")+"()",e.ORDER_ATOMIC]},tM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_accelerometer"]="from "+i+" import accelerometer",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".shake()",e.ORDER_ATOMIC]},eM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_button"]="from "+i+" import button",["button(button."+this.getFieldValue("btn")+")",e.ORDER_ATOMIC]},iM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_button"]="from "+i+" import button",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".status()",e.ORDER_ATOMIC]},nM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_rfid"]="from "+i+" import rfid",["rfid("+e.valueToCode(this,"PIN",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},sM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_rfid"]="from "+i+" import rfid",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+".scanning()",e.ORDER_ATOMIC]},oM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];return e.definitions_["import_"+i+"_rfid"]="from "+i+" import rfid",[e.valueToCode(this,"SUB",e.ORDER_ATOMIC)+"."+this.getFieldValue("key")+"()",e.ORDER_ATOMIC]},_M=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mini_sant"==i){e.definitions_["import_"+i+"_onboard_asr"]="from "+i+" import onboard_asr";var n="onboard_asr.cmd_id()\n"}else if("mixgo_mini"==i){e.definitions_.import_mini_gx_ext_asr="from mini_gx import ext_asr";n="ext_asr.cmd_id()\n"}return n},uM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mini_sant"==i){e.definitions_["import_"+i+"_onboard_asr"]="from "+i+" import onboard_asr";var n="onboard_asr.result("+this.getFieldValue("cmd")+")"}else if("mixgo_mini"==i){e.definitions_.import_mini_gx_ext_asr="from mini_gx import ext_asr";n="ext_asr.result("+this.getFieldValue("cmd")+")"}return[n,e.ORDER_ATOMIC]},pM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mini_sant"==i)if(e.definitions_["import_"+i+"_onboard_asr"]="from "+i+" import onboard_asr","status1"==(s=this.getFieldValue("key")))var n="onboard_asr.status()[0]";else if("status2"==s)n="onboard_asr.status()[1]";else n="onboard_asr."+s+"()";else if("mixgo_mini"==i){var s;if(e.definitions_.import_mini_gx_ext_asr="from mini_gx import ext_asr","status1"==(s=this.getFieldValue("key")))n="ext_asr.status()[0]";else if("status2"==s)n="ext_asr.status()[1]";else n="ext_asr."+s+"()"}return[n,e.ORDER_ATOMIC]},rM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mini_sant"==i){e.definitions_["import_"+i+"_onboard_asr"]="from "+i+" import onboard_asr";var n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC),s="onboard_asr.play("+this.getFieldValue("star")+", "+n+", "+this.getFieldValue("end")+")\n"}else if("mixgo_mini"==i){e.definitions_.import_mini_gx_ext_asr="from mini_gx import ext_asr";n=e.valueToCode(this,"NUM",e.ORDER_ATOMIC),s="ext_asr.play("+this.getFieldValue("star")+", "+n+", "+this.getFieldValue("end")+")\n"}return s},aM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];if("mini_sant"==i){e.definitions_["import_"+i+"_onboard_asr"]="from "+i+" import onboard_asr";var n="onboard_asr.sys_cmd("+this.getFieldValue("cmd")+")\n"}else if("mixgo_mini"==i){e.definitions_.import_mini_gx_ext_asr="from mini_gx import ext_asr";n="ext_asr.sys_cmd("+this.getFieldValue("cmd")+")\n"}return n},lM=function(t,e){var i=j.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"_onboard_bot"]="from "+i+" import onboard_bot";return["onboard_bot.version()",e.ORDER_ATOMIC]},IM={microbit:{description:"microbit_python",digital:[["P0","0"],["P1","1"],["P2","2"],["P3","3"],["P4","4"],["P5","5"],["P6","6"],["P7","7"],["P8","8"],["P9","9"],["P10","10"],["P11","11"],["P12","12"],["P13","13"],["P14","14"],["P15","15"],["P16","16"],["P19","19"],["P20","20"]],pwm:[["P0","0"],["P1","1"],["P2","2"],["P3","3"],["P4","4"],["P5","5"],["P6","6"],["P7","7"],["P8","8"],["P9","9"],["P10","10"],["P11","11"],["P12","12"],["P13","13"],["P14","14"],["P15","15"],["P16","16"],["P19","19"],["P20","20"]],analog:[["P0","0"],["P1","1"],["P2","2"],["P3","3"],["P4","4"],["P10","10"]],interrupt:[["P0","0"],["P1","1"],["P2","2"]],button:[["A","button_a"],["B","button_b"]],axis:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"]],brightness:[["0","0"],["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"],["7","7"],["8","8"],["9","9"]],builtinimg:[["HEART","Image.HEART"],["HEART_SMALL","Image.HEART_SMALL"],["HAPPY","Image.HAPPY"],["SMILE","Image.SMILE"],["SAD","Image.SAD"],["CONFUSED","Image.CONFUSED"],["ANGRY","Image.ANGRY"],["ASLEEP","Image.ASLEEP"],["SURPRISED","Image.SURPRISED"],["SILLY","Image.SILLY"],["FABULOUS","Image.FABULOUS"],["MEH","Image.MEH"],["YES","Image.YES"],["NO","Image.NO"],["CLOCK12","Image.CLOCK12"],["CLOCK11","Image.CLOCK11"],["CLOCK10","Image.CLOCK10"],["CLOCK9","Image.CLOCK9"],["CLOCK8","Image.CLOCK8"],["CLOCK7","Image.CLOCK7"],["CLOCK6","Image.CLOCK6"],["CLOCK5","Image.CLOCK5"],["CLOCK4","Image.CLOCK4"],["CLOCK3","Image.CLOCK3"],["CLOCK2","Image.CLOCK2"],["CLOCK1","Image.CLOCK1"],["ARROW_N","Image.ARROW_N"],["ARROW_NE","Image.ARROW_NE"],["ARROW_E","Image.ARROW_E"],["ARROW_SE","Image.ARROW_SE"],["ARROW_S","Image.ARROW_S"],["ARROW_SW","Image.ARROW_SW"],["ARROW_W","Image.ARROW_W"],["ARROW_NW","Image.ARROW_NW"],["TRIANGLE","Image.TRIANGLE"],["TRIANGLE_LEFT","Image.TRIANGLE_LEFT"],["CHESSBOARD","Image.CHESSBOARD"],["DIAMOND","Image.DIAMOND"],["DIAMOND_SMALL","Image.DIAMOND_SMALL"],["SQUARE","Image.SQUARE"],["SQUARE_SMALL","Image.SQUARE_SMALL"],["RABBIT","Image.RABBIT"],["COW","Image.COW"],["MUSIC_CROTCHET","Image.MUSIC_CROTCHET"],["MUSIC_QUAVER","Image.MUSIC_QUAVER"],["MUSIC_QUAVERS","Image.MUSIC_QUAVERS"],["PITCHFORK","Image.PITCHFORK"],["XMAS","Image.XMAS"],["PACMAN","Image.PACMAN"],["TARGET","Image.TARGET"],["TSHIRT","Image.TSHIRT"],["ROLLERSKATE","Image.ROLLERSKATE"],["DUCK","Image.DUCK"],["HOUSE","Image.HOUSE"],["TORTOISE","Image.TORTOISE"],["BUTTERFLY","Image.BUTTERFLY"],["STICKFIGURE","Image.STICKFIGURE"],["GHOST","Image.GHOST"],["SWORD","Image.SWORD"],["GIRAFFE","Image.GIRAFFE"],["SKULL","Image.SKULL"],["UMBRELLA","Image.UMBRELLA"],["SNAKE","Image.SNAKE"],["ALL_CLOCKS","Image.ALL_CLOCKS"],["ALL_ARROWS","Image.ALL_ARROWS"]],imglist:[["ALL_CLOCKS","Image.ALL_CLOCKS"],["ALL_ARROWS","Image.ALL_ARROWS"]],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:[["P0","0"],["P1","1"],["P2","2"],["P8","8"],["P12","12"],["P13","13"],["P14","14"],["P15","15"],["P16","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"]]}};IM["BBC micro:bit"]=IM.microbit;const dM=IM,TM=100,MM={init:function(){this.jsonInit({colour:TM,nextStatement:null,previousStatement:null,inputsInline:!0,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",message0:q.Msg.MIXLY_MICROBIT_Play_built_in_melody,args0:[{name:"melody",options:[["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"]],type:"field_dropdown"},{type:"input_value",name:"PIN"},{type:"input_dummy"},{checked:!0,type:"field_checkbox",name:"wait"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"loop"}]}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Play_built_in_melody1)}},hM={init:function(){this.jsonInit({colour:TM,nextStatement:null,previousStatement:null,inputsInline:!0,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#built-in-melodies",tooltip:"Play one of the built-in melodies. Indicate if you need to wait before continuing or continuously loop the melody.",message0:q.Msg.MIXLY_MICROBIT_Play_built_in_melody_easy,args0:[{name:"melody",options:[["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"]],type:"field_dropdown"},{type:"input_value",name:"PIN"},{type:"input_dummy"}]})}},mM={init:function(){this.setColour(TM),this.appendValueInput("PIN",Number).appendField(q.Msg.MIXLY_TONE).appendField(q.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("pitch").setCheck(Number).appendField(q.Msg.MIXLY_FREQUENCY),this.appendValueInput("duration").setCheck(Number).appendField(q.Msg.MIXLY_DURATION),this.appendDummyInput("").appendField(q.Msg.MIXLY_MILLIS).appendField(q.Msg.MIXLY_MICROBIT_WAIT),this.appendDummyInput("").appendField(new q.FieldCheckbox(!0),"wait"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE2)}},OM={init:function(){this.setColour(TM),this.appendValueInput("PIN",Number).appendField(q.Msg.MIXLY_TONE).appendField(q.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("pitch").setCheck(Number).appendField(q.Msg.MIXLY_FREQUENCY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_TONE)}},EM={init:function(){this.jsonInit({colour:TM,nextStatement:null,previousStatement:null,inputsInline:!0,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#musical-notation",message0:q.Msg.MIXLY_MICROBIT_Play_notes,args0:[{check:"List",type:"input_value",name:"notes"},{type:"input_value",name:"PIN"},{checked:!0,type:"field_checkbox",name:"wait"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"loop"}]}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Play_notes1)}},cM={init:function(){this.jsonInit({colour:TM,nextStatement:null,previousStatement:null,inputsInline:!0,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#musical-notation",tooltip:"Play a list of notes expressed in the special music language. Indicate if you need to wait before continuing or continuously loop the melody.",message0:q.Msg.MIXLY_MICROBIT_Play_notes,args0:[{check:"List",type:"input_value",name:"notes"},{type:"input_value",name:"PIN"},{type:"input_dummy"},{type:"input_dummy"},{type:"input_dummy"}]})}},RM={init:function(){this.jsonInit({colour:TM,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.reset",message0:q.Msg.MIXLY_MICROBIT_Reset_music}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Reset_music)}},gM={init:function(){this.setColour(TM),this.appendValueInput("PIN").appendField(q.Msg.MIXLY_NOTONE).appendField(q.Msg.MIXLY_PIN),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_NOTONE)}},CM={init:function(){this.jsonInit({colour:TM,output:"Array",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/music.html#music.get_tempo",message0:q.Msg.MIXLY_MICROBIT_Get_current_tempo}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Get_current_tempo)}},AM={init:function(){this.setColour(TM),this.appendValueInput("TICKS").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_SET_TEMPO).appendField(q.Msg.MICROBIT_ACTUATOR_ticks),this.appendValueInput("BPM").setCheck(Number).appendField(q.Msg.MIXLY_SPEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_SET_TEMPO1)}},LM={init:function(){this.setColour(TM),this.appendValueInput("VAR").setCheck(String).appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SAY,"say"],[q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SING,"sing"],[q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_PRENOUNCE,"pronounce"]]),"MODE"),this.appendValueInput("pitch").setCheck(Number).appendField(q.Msg.MICROBIT_SPEECH_pitch),this.appendValueInput("speed").setCheck(Number).appendField(q.Msg.MIXLY_SPEED),this.appendValueInput("mouth").setCheck(Number).appendField(q.Msg.MICROBIT_SPEECH_mouth),this.appendValueInput("throat").setCheck(Number).appendField(q.Msg.MICROBIT_SPEECH_throat),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE"),i=q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH,n=q.Msg.MIXLY_MICROBIT_TYPE_STRING;return i+{say:q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SAY,sing:q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SING,pronounce:q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_PRENOUNCE}[e]+n}))}},SM={init:function(){this.setColour(TM),this.appendValueInput("VAR").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SAY),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},fM={init:function(){this.setColour(TM),this.appendValueInput("VAR").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_SING),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},DM={init:function(){this.setColour(TM),this.appendValueInput("VAR").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_PY_ACTUATOR_SPEECH_PRENOUNCE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},NM={init:function(){this.setColour(TM),this.appendValueInput("VAR").setCheck(String).appendField(q.Msg.MICROBIT_SPEECH_translation),this.setOutput(!0,String),this.setTooltip(q.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+q.Msg.MIXLY_MICROBIT_TYPE_STRING+q.Msg.MICROBIT_SPEECH_translation)}},PM={init:function(){this.setColour(TM),this.appendValueInput("PIN",Number).appendField(q.Msg.MIXLY_SERVO).appendField(q.Msg.MIXLY_PIN).setCheck(Number),this.appendValueInput("DEGREE",Number).setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_DEGREE_0_180),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_TOOLTIP_BLOCKGROUP_SERVO_MOVE)}},FM={init:function(){this.appendValueInput("speed").setCheck(null).appendField(q.Msg.MIXLY_MOTOR).appendField(new q.FieldDropdown([["M1","1"],["M2","2"],["M3","3"],["M4","4"]]),"Motor").appendField(q.Msg.MIXLY_SPEED),this.appendDummyInput().appendField(new q.FieldDropdown([["Forward","1*"],["Reverse","-1*"]]),"mode"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(TM),this.setTooltip(""),this.setHelpUrl("")}},YM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.MIXLY_RGB),this.appendValueInput("PIN",Number).setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_PIN),this.appendValueInput("LEDCOUNT").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_COUNT),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(q.Msg.MIXLY_RGB_PIN_COUNT)}},vM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_NUM),this.appendValueInput("RVALUE").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_R),this.appendValueInput("GVALUE").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_G),this.appendValueInput("BVALUE").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_B),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(q.Msg.MIXLY_RGB_NUM_R_G_B)}},XM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.MIXLY_RGB),this.appendValueInput("_LED_").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_RGB_NUM),this.appendDummyInput("").setAlign(q.inputs.Align.RIGHT).appendField(new q.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},bM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.MIXLY_RGB),this.appendDummyInput().appendField(q.Msg.MIXLY_ESP32_RGB_WRITE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(""),this.setTooltip(q.Msg.MIXLY_ESP32_MUSIC_WRI)}},yM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.MIXLY_SETUP+" "+q.Msg.QJ00X_MP3),this.appendValueInput("RX").setAlign(q.inputs.Align.RIGHT).appendField("TX#"),this.appendValueInput("TX").setAlign(q.inputs.Align.RIGHT).appendField("RX#"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}};var VM=[[q.Msg.MIXLY_MP3_PLAY,"play"],[q.Msg.MIXLY_MP3_PAUSE,"pause"],[q.Msg.MIXLY_MP3_NEXT,"next_track"],[q.Msg.MIXLY_MP3_PREV,"prev_track"],[q.Msg.MIXLY_MP3_VOL_UP,"inc_vol"],[q.Msg.MIXLY_MP3_VOL_DOWN,"dec_vol"]];const BM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendDummyInput("").appendField(q.Msg.MIXLY_STAT).appendField(new q.FieldDropdown(VM),"CONTROL_TYPE"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}};var GM=[[q.Msg.MIXLY_MP3_LOOP_ALL,"0"],[q.Msg.MIXLY_MP3_LOOP_FOLDER,"1"],[q.Msg.MIXLY_MP3_LOOP_ONE,"2"],[q.Msg.MIXLY_MP3_LOOP_RAM,"3"]];const UM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendDummyInput("").appendField(q.Msg.MIXLY_MP3_LOOP_MODE).appendField(q.Msg.MIXLY_STAT).appendField(new q.FieldDropdown(GM),"LOOP_MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}};var wM=[[q.Msg.MIXLY_MP3_EQ_NORMAL,"0"],[q.Msg.MIXLY_MP3_EQ_POP,"1"],[q.Msg.MIXLY_MP3_EQ_ROCK,"2"],[q.Msg.MIXLY_MP3_EQ_JAZZ,"3"],[q.Msg.MIXLY_MP3_EQ_CLASSIC,"4"],[q.Msg.MIXLY_MP3_EQ_BASS,"5"]];const kM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendDummyInput("").appendField(q.Msg.MIXLY_MP3_EQ_MODE).appendField(q.Msg.MIXLY_STAT).appendField(new q.FieldDropdown(wM),"EQ_MODE"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}},xM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendDummyInput("").appendField(q.Msg.MIXLY_MP3_VOL),this.appendValueInput("vol",Number).appendField(q.Msg.MIXLY_STAT).setCheck(Number),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}},HM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendValueInput("NUM",Number).appendField(q.Msg.MIXLY_MP3_PLAY_NUM).setCheck(Number),this.appendDummyInput("").appendField("首"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}},WM={init:function(){this.setColour(TM),this.appendDummyInput("").appendField(q.Msg.QJ00X_MP3),this.appendValueInput("FOLDER",Number).appendField(q.Msg.DFPLAYER_MINI_FOLDER).setCheck(Number),this.appendValueInput("NUM",Number).appendField(q.Msg.MIXLY_MP3_PLAY_NUM).setCheck(Number),this.appendDummyInput("").appendField("首"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(),this.setHelpUrl()}},KM=140,JM={init:function(){this.setColour(225),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,"on"],[q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,"off"],[q.Msg.HTML_RESET,"reset"]]),"type").appendField(q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_WIFI),this.setInputsInline(!0),this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("type"),i=q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_WIFI;return{on:q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_ON,off:q.Msg.MIXLY_MICROBIT_PY_COMMUNICATE_OFF,reset:q.Blockly.Msg.HTML_RESET}[e]+i}))}},QM={init:function(){this.jsonInit({colour:225,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.on",tooltip:"Turn on the radio. This needs to be explicitly called since the radio draws power and takes up memory that you may otherwise need.",message0:q.Msg.MIXLY_MICROBIT_Switch_on_radio})}},qM={init:function(){this.jsonInit({colour:225,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.off",tooltip:"Turn off the radio, thus saving power and memory.",message0:q.Msg.MIXLY_MICROBIT_Switch_off_radio})}},jM={init:function(){this.jsonInit({colour:225,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.config",tooltip:q.Msg.MIXLY_MICROBIT_Configure_radio1,message0:q.Msg.MIXLY_MICROBIT_Configure_radio,args0:[{min:4,value:32,type:"input_value",max:251,name:"length"},{type:"input_dummy"},{min:1,value:3,type:"input_value",max:32,name:"queue"},{type:"input_dummy"},{min:0,value:7,type:"input_value",max:100,name:"channel"},{type:"input_dummy"},{name:"power",type:"input_value"},{type:"input_dummy"},{name:"address",type:"input_value"},{type:"input_dummy"},{name:"group",type:"input_value"},{type:"input_dummy"},{name:"data_rate",type:"input_value"}]})}},zM={init:function(){this.jsonInit({colour:225,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.reset",tooltip:"Reset the radio to default settings.",message0:q.Msg.MIXLY_MICROBIT_Reset_radio})}},ZM={init:function(){this.jsonInit({colour:225,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.send",tooltip:"Broadcast a text message.",message0:q.Msg.MIXLY_MICROBIT_Send_message,args0:[{check:"String",type:"input_value",name:"message"}]})}},$M={init:function(){this.setColour(225),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_RADIO_SEND),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_MSG,"send"],[q.Msg.MIXLY_MICROBIT_MSG_BYTE,"send_bytes"]]),"type"),this.appendValueInput("data"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_Send_message1)}},th={init:function(){this.jsonInit({colour:225,output:"String",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/radio.html#radio.receive",tooltip:q.Msg.MIXLY_MICROBIT_Receive_message,message0:q.Msg.MIXLY_MICROBIT_Receive_message})}},eh={init:function(){this.setColour(225),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_Receive_message),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_MSG,"receive"],[q.Msg.MIXLY_MICROBIT_MSG_BYTE,"receive_bytes"],[q.Msg.MIXLY_MICROBIT_MSG_FULL,"receive_full"]]),"type"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_Receive_message)}},ih={init:function(){this.setColour(KM),this.appendValueInput("RX",Number).appendField(q.Msg.MIXLY_MICROBIT_JS_I2C_SETUP).appendField("sda").setCheck(Number).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("TX",Number).appendField("scl").setCheck(Number).setAlign(q.inputs.Align.RIGHT),this.appendValueInput("freq").setCheck(Number).appendField("频率").setAlign(q.inputs.Align.RIGHT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},nh={init:function(){this.setColour(KM),this.appendValueInput("address").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_I2C_READ_ADDRESS),this.appendValueInput("data").setCheck(Number).appendField(q.Msg.LANG_MATH_BYTE),this.appendDummyInput().appendField(q.Msg.CONTROLS_REPEAT_TITLE_REPEAT).appendField(new q.FieldCheckbox(!1),"is_repeated"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_I2C_READ)}},sh={init:function(){this.setColour(KM),this.appendValueInput("address").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_I2C_WRITE_ADDRESS),this.appendValueInput("data").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.appendDummyInput().appendField(q.Msg.CONTROLS_REPEAT_TITLE_REPEAT).appendField(new q.FieldCheckbox(!1),"is_repeated"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_I2C_WRITE)}},oh={init:function(){this.jsonInit({colour:KM,nextStatement:null,previousStatement:null,message0:q.Msg.MIXLY_MICROBIT_SPI_INIT,args0:[{value:1e6,type:"field_number",name:"freq"},{type:"input_dummy"},{value:8,type:"field_number",name:"bits"},{type:"input_dummy"},{value:0,type:"field_number",name:"mode"},{type:"input_dummy"},{name:"mosi",options:j.Profile.default.digital,type:"field_dropdown"},{name:"miso",options:j.Profile.default.digital,type:"field_dropdown"},{name:"sck",options:j.Profile.default.digital,type:"field_dropdown"}]}),this.setFieldValue("15","mosi"),this.setFieldValue("14","miso"),this.setFieldValue("13","sck")}},_h={init:function(){this.setColour(KM),this.appendValueInput("data").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_SPI_WRITE),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_SPI_WRITE)}},uh=180,ph={init:function(){this.jsonInit({colour:uh,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.clear",message0:q.Msg.MIXLY_MICROBIT_Clear_display}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Clear_display)}},rh={init:function(){this.setColour(uh),this.appendValueInput("x").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_GET).appendField(q.Msg.MIXLY_BRIGHTNESS).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(q.Msg.MIXLY_BRIGHTNESS1)}},ah={init:function(){this.setColour(uh),this.appendValueInput("x").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SET_BRIGHTNESS).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_GET_POINT_X),this.appendValueInput("y").setCheck(Number).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_PLOT_POINT_Y),this.appendValueInput("brightness").setCheck(Number).appendField(q.Msg.MIXLY_BRIGHTNESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_BRIGHTNESS2)}},lh={init:function(){this.setColour(uh),this.appendValueInput("data").setCheck([String,"microbit_image"]).appendField(q.Msg.MIXLY_MICROBIT_SHOW_IMAGE_OR_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_SHOW_IMAGE_OR_STRING)}},Ih={init:function(){this.setColour(uh),this.appendValueInput("data").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},dh={init:function(){this.setColour(uh),this.appendValueInput("data").setCheck(String).appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.appendValueInput("delay").setCheck(null).appendField(q.Msg.MIXLY_DELAY),this.appendDummyInput().appendField(q.Msg.MIXLY_MILLIS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0)}},Th={init:function(){this.setColour(uh),this.appendValueInput("PIN",String).setCheck("microbit_image").appendField(q.Msg.OLED_BITMAP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.OLED_BITMAP)}},Mh={init:function(){this.jsonInit({colour:uh,InputsInline:!0,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.show",tooltip:"Show the referenced image on the display.",message0:q.Msg.OLED_BITMAP,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SMILE","SMILE"],["SAD","SAD"],["CONFUSED","CONFUSED"],["ANGRY","ANGRY"],["ASLEEP","ASLEEP"],["SURPRISED","SURPRISED"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["MEH","MEH"],["YES","YES"],["NO","NO"],["CLOCK12","CLOCK12"],["CLOCK11","CLOCK11"],["CLOCK10","CLOCK10"],["CLOCK9","CLOCK9"],["CLOCK8","CLOCK8"],["CLOCK7","CLOCK7"],["CLOCK6","CLOCK6"],["CLOCK5","CLOCK5"],["CLOCK4","CLOCK4"],["CLOCK3","CLOCK3"],["CLOCK2","CLOCK2"],["CLOCK1","CLOCK1"],["ARROW_N","ARROW_N"],["ARROW_NE","ARROW_NE"],["ARROW_E","ARROW_E"],["ARROW_SE","ARROW_SE"],["ARROW_S","ARROW_S"],["ARROW_SW","ARROW_SW"],["ARROW_W","ARROW_W"],["ARROW_NW","ARROW_NW"],["TRIANGLE","TRIANGLE"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["CHESSBOARD","CHESSBOARD"],["DIAMOND","DIAMOND"],["DIAMOND_SMALL","DIAMOND_SMALL"],["SQUARE","SQUARE"],["SQUARE_SMALL","SQUARE_SMALL"],["RABBIT","RABBIT"],["COW","COW"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["PITCHFORK","PITCHFORK"],["XMAS","XMAS"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["SWORD","SWORD"],["GIRAFFE","GIRAFFE"],["SKULL","SKULL"],["UMBRELLA","UMBRELLA"],["SNAKE","SNAKE"],["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]],type:"field_dropdown"}]})}},hh={init:function(){this.jsonInit({colour:uh,inputsInline:!0,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.show",message0:q.Msg.MIXLY_MICROBIT_Animate_images_or_string,args0:[{check:[String,"List"],type:"input_value",name:"images"},{type:"input_value",name:"delay"},{type:"input_dummy"},{checked:!0,type:"field_checkbox",name:"wait"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"loop"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"clear"}]}),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_delay+q.Msg.MIXLY_MICROBIT_Animate_images1)}},mh={init:function(){this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING),this.jsonInit({colour:uh,inputsInline:!0,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.show",tooltip:"Display the list of images as an animation with a certain delay between each frame. Indicate if you need to wait before continuing, continuously loop the animation and clear the display when finished.",message0:q.Msg.MIXLY_MICROBIT_SHOW_STRING,args0:[{check:String,type:"input_value",name:"images"},{type:"input_value",name:"delay"},{type:"input_dummy"},{checked:!0,type:"field_checkbox",name:"wait"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"loop"},{type:"input_dummy"},{checked:!1,type:"field_checkbox",name:"clear"}]}),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_STRING)}},Oh={init:function(){this.jsonInit({colour:uh,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.scroll",tooltip:"Scroll the referenced text across the display.",message0:q.Msg.MIXLY_MICROBIT_Scroll_message,args0:[{check:"String",type:"input_value",name:"message"}]})}},Eh={init:function(){this.setColour(uh),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_MICROBIT_Turn_on_display,"on"],[q.Msg.MIXLY_MICROBIT_Turn_off_display,"off"]]),"on_off").appendField(q.Msg.MIXLY_MICROBIT_monitor),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("on_off"),i=q.Msg.MIXLY_MICROBIT_monitor;return{on:q.Msg.MIXLY_MICROBIT_Turn_on_display,off:q.Msg.MIXLY_MICROBIT_Turn_off_display}[e]+i}))}},ch={init:function(){this.jsonInit({colour:uh,nextStatement:null,previousStatement:null,helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.off",tooltip:"Turn off the display.",message0:q.Msg.MIXLY_MICROBIT_Turn_off_display})}},Rh={init:function(){this.jsonInit({colour:uh,output:"Boolean",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/display.html#microbit.display.is_on",message0:q.Msg.MIXLY_MICROBIT_Display_is_on}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Display_is_on1)}},gh={init:function(){this.jsonInit({colour:uh,args0:[{name:"image",options:[["HEART","HEART"],["HEART_SMALL","HEART_SMALL"],["HAPPY","HAPPY"],["SMILE","SMILE"],["SAD","SAD"],["CONFUSED","CONFUSED"],["ANGRY","ANGRY"],["ASLEEP","ASLEEP"],["SURPRISED","SURPRISED"],["SILLY","SILLY"],["FABULOUS","FABULOUS"],["MEH","MEH"],["YES","YES"],["NO","NO"],["CLOCK12","CLOCK12"],["CLOCK11","CLOCK11"],["CLOCK10","CLOCK10"],["CLOCK9","CLOCK9"],["CLOCK8","CLOCK8"],["CLOCK7","CLOCK7"],["CLOCK6","CLOCK6"],["CLOCK5","CLOCK5"],["CLOCK4","CLOCK4"],["CLOCK3","CLOCK3"],["CLOCK2","CLOCK2"],["CLOCK1","CLOCK1"],["ARROW_N","ARROW_N"],["ARROW_NE","ARROW_NE"],["ARROW_E","ARROW_E"],["ARROW_SE","ARROW_SE"],["ARROW_S","ARROW_S"],["ARROW_SW","ARROW_SW"],["ARROW_W","ARROW_W"],["ARROW_NW","ARROW_NW"],["TRIANGLE","TRIANGLE"],["TRIANGLE_LEFT","TRIANGLE_LEFT"],["CHESSBOARD","CHESSBOARD"],["DIAMOND","DIAMOND"],["DIAMOND_SMALL","DIAMOND_SMALL"],["SQUARE","SQUARE"],["SQUARE_SMALL","SQUARE_SMALL"],["RABBIT","RABBIT"],["COW","COW"],["MUSIC_CROTCHET","MUSIC_CROTCHET"],["MUSIC_QUAVER","MUSIC_QUAVER"],["MUSIC_QUAVERS","MUSIC_QUAVERS"],["PITCHFORK","PITCHFORK"],["XMAS","XMAS"],["PACMAN","PACMAN"],["TARGET","TARGET"],["TSHIRT","TSHIRT"],["ROLLERSKATE","ROLLERSKATE"],["DUCK","DUCK"],["HOUSE","HOUSE"],["TORTOISE","TORTOISE"],["BUTTERFLY","BUTTERFLY"],["STICKFIGURE","STICKFIGURE"],["GHOST","GHOST"],["SWORD","SWORD"],["GIRAFFE","GIRAFFE"],["SKULL","SKULL"],["UMBRELLA","UMBRELLA"],["SNAKE","SNAKE"],["ALL_CLOCKS","ALL_CLOCKS"],["ALL_ARROWS","ALL_ARROWS"]],type:"field_dropdown"}],output:["microbit_image","List"],helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#attributes",tooltip:q.Msg.MIXLY_MICROBIT_Built_in_image1,message0:q.Msg.MIXLY_MICROBIT_Built_in_image})}},Ch={init:function(){this.jsonInit({colour:uh,args0:[{check:["microbit_image","List",String],type:"input_value",name:"image"}],output:"microbit_image",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#microbit.Image.copy",message0:q.Msg.MIXLY_MICROBIT_Copy_image}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Copy_image1)}},Ah={init:function(){this.jsonInit({colour:uh,args0:[{check:["microbit_image","List",String],type:"input_value",name:"image"}],output:"microbit_image",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#microbit.Image.invert",message0:q.Msg.MIXLY_MICROBIT_Invert_image}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Invert_image1)}},Lh={init:function(){this.jsonInit({colour:uh,args0:[{type:"input_dummy"},{colour:"#000000",type:"field_colour",name:"00"},{colour:"#000000",type:"field_colour",name:"01"},{colour:"#000000",type:"field_colour",name:"02"},{colour:"#000000",type:"field_colour",name:"03"},{colour:"#000000",type:"field_colour",name:"04"},{type:"input_dummy"},{colour:"#000000",type:"field_colour",name:"10"},{colour:"#000000",type:"field_colour",name:"11"},{colour:"#000000",type:"field_colour",name:"12"},{colour:"#000000",type:"field_colour",name:"13"},{colour:"#000000",type:"field_colour",name:"14"},{type:"input_dummy"},{colour:"#000000",type:"field_colour",name:"20"},{colour:"#000000",type:"field_colour",name:"21"},{colour:"#000000",type:"field_colour",name:"22"},{colour:"#000000",type:"field_colour",name:"23"},{colour:"#000000",type:"field_colour",name:"24"},{type:"input_dummy"},{colour:"#000000",type:"field_colour",name:"30"},{colour:"#000000",type:"field_colour",name:"31"},{colour:"#000000",type:"field_colour",name:"32"},{colour:"#000000",type:"field_colour",name:"33"},{colour:"#000000",type:"field_colour",name:"34"},{type:"input_dummy"},{colour:"#000000",type:"field_colour",name:"40"},{colour:"#000000",type:"field_colour",name:"41"},{colour:"#000000",type:"field_colour",name:"42"},{colour:"#000000",type:"field_colour",name:"43"},{colour:"#000000",type:"field_colour",name:"44"}],output:"microbit_image",helpUrl:"https://microbit-micropython.readthedocs.io/en/latest/image.html#microbit.Image",message0:q.Msg.MIXLY_MICROBIT_Create_image}),this.setTooltip(q.Msg.MIXLY_MICROBIT_Create_image1)}},Sh={init:function(){var t=[[q.Msg.MIXLY_UP,"up"],[q.Msg.MIXLY_DOWN,"down"],[q.Msg.MIXLY_LEFT,"left"],[q.Msg.MIXLY_RIGHT,"right"]];this.setColour(uh),this.setOutput(!0,"microbit_image"),this.setInputsInline(!0),this.appendValueInput("img").appendField(q.Msg.DISPLAY_IMAGE_LET).setCheck(["microbit_image","List",String]),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_LET2).appendField(new q.FieldDropdown(t),"OP"),this.appendValueInput("val").appendField(q.Msg.DISPLAY_IMAGE_SHIFT).setCheck(Number),this.appendDummyInput("").appendField(q.Msg.DISPLAY_IMAGE_UNIT);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP"),i=q.Msg.DISPLAY_IMAGE_LET,n=q.Msg.DISPLAY_IMAGE_LET2,s=q.Msg.DISPLAY_IMAGE_LET3;return i+n+{up:q.Msg.MIXLY_UP,down:q.Msg.MIXLY_DOWN,left:q.Msg.MIXLY_LEFT,right:q.Msg.MIXLY_RIGHT}[t]+s}))}},fh={init:function(){var t=[[q.Msg.MICROBIT_DISPLAY_UNION,"+"],[q.Msg.MICROBIT_DISPLAY_MINUS,"-"]];this.setColour(uh),this.setOutput(!0,"microbit_image"),this.appendValueInput("A").appendField(q.Msg.MICROBIT_DISPLAY_MERGE_SHAPE),this.appendValueInput("B").appendField(new q.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{"+":q.Msg.MIXLY_MICROBIT_image_add,"-":q.Msg.MIXLY_MICROBIT_image_reduce}[t]}))}},Dh={init:function(){this.setColour(uh),this.appendValueInput("TEXT",String).setCheck([String,Number]).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_DF_LCD).appendField("mylcd").appendField(q.Msg.MIXLY_LCD_PRINT1),this.appendValueInput("TEXT2",String).setCheck([String,Number]).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_LCD_PRINT2),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(q.Msg.MIXLY_LCD_PRINT4_TOOLTIP)}},Nh={init:function(){this.setColour(uh),this.appendValueInput("device").setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_SETUP).appendField(q.Msg.MIXLY_DF_LCD).appendField("1602").appendField("mylcd").appendField(q.Msg.MIXLY_LCD_ADDRESS),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(q.Msg.MIXLY_SETUP+q.Msg.MIXLY_DF_LCD+q.Msg.MIXLY_LCD_ADDRESS)}},Ph={init:function(){this.setColour(uh),this.appendValueInput("row",Number).setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_DF_LCD).appendField("mylcd").appendField(q.Msg.MIXLY_LCD_ROW),this.appendValueInput("column",Number).setCheck(Number).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_LCD_COLUMN),this.appendValueInput("TEXT",String).setCheck([String,Number]).setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.MIXLY_LCD_PRINT),this.setPreviousStatement(!0,null),this.setInputsInline(!0),this.setNextStatement(!0,null),this.setTooltip(q.Msg.MIXLY_LCD_PRINT3_TOOLTIP)}},Fh={init:function(){this.setColour(uh),this.appendDummyInput().appendField(q.Msg.MIXLY_DF_LCD).appendField("mylcd").appendField(new q.FieldDropdown([[q.Msg.MIXLY_ON,"on()"],[q.Msg.MIXLY_OFF,"off()"],[q.Msg.MIXLY_LCD_STAT_CLEAR,"clear()"],[q.Msg.MIXLY_LCD_NOBACKLIGHT,"backlight(False)"],[q.Msg.MIXLY_LCD_BACKLIGHT,"backlight(True)"]]),"STAT"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null);var t=this;this.setTooltip((function(){var e=t.getFieldValue("STAT");return q.Msg.LISTS_SET_INDEX_SET+q.Msg.MIXLY_DF_LCD+{"on()":q.Msg.MIXLY_ON,"off()":q.Msg.MIXLY_OFF,"clear()":q.Msg.MIXLY_LCD_STAT_CLEAR,"backlight(off)":q.Msg.MIXLY_LCD_NOBACKLIGHT,"backlight(on)":q.Msg.MIXLY_LCD_BACKLIGHT}[e]}))}},Yh={init:function(){this.appendDummyInput().appendField(q.Msg.MIXLY_DF_LCD+" OLED "+q.Msg.OLEDDISPLAY),this.appendValueInput("Text_line1","String").setAlign(q.inputs.Align.RIGHT).appendField("(128*64) "+q.Msg.line1),this.appendValueInput("Text_line2","String").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.line2),this.appendValueInput("Text_line3","String").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.line3),this.appendValueInput("Text_line4","String").setAlign(q.inputs.Align.RIGHT).appendField(q.Msg.line4),this.setInputsInline(!1),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(uh),this.setTooltip(q.Msg.MIXLY_DF_LCD+q.Msg.OLEDDISPLAY+q.Msg.MIXLY_MICROBIT_TYPE_STRING)}},vh={init:function(){var t=[[q.Msg.MIXLY_HEIGHT,"height"],[q.Msg.MIXLY_WIDTH,"width"]];this.setColour(uh),this.appendDummyInput().appendField(q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE),this.appendValueInput("VAR").setCheck("microbit_image"),this.appendDummyInput("").appendField(new q.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return q.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+q.Msg.MIXLY_MICROBIT_IMAGE+{height:q.Msg.MIXLY_HEIGHT,width:q.Msg.MIXLY_WIDTH}[t]}))}},Xh={init:function(){this.setColour(uh),this.appendValueInput("SUB"),this.appendDummyInput().appendField(new q.FieldDropdown([[q.Msg.MIXLY_LCD_STAT_CLEAR,"0"],[q.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL,"1"]]),"key"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("key"),i={0:q.Msg.MIXLY_LCD_STAT_CLEAR,1:q.Msg.MIXLY_HANDBIT_DISLPAY_OLED_FILL};return q.Msg.MIXLY_DF_LCD+i[e]}))}},bh="#777777",yh={init:function(){this.setColour(bh),this.appendDummyInput("").appendField("from ").appendField(new q.FieldTextInput("microbit"),"path").appendField(" import ").appendField(new q.FieldTextInput("*"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Vh={init:function(){this.setColour(bh),this.appendDummyInput("").appendField("import ").appendField(new q.FieldTextInput("module"),"module"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Bh={init:function(){this.setColour(bh),this.appendDummyInput("").appendField(new q.FieldTextInput("my_function"),"NAME"),this.itemCount_=1,this.arguments_=["x"],this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new q.icons.MutatorIcon(["factory_create_with_item"],this))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("items",this.itemCount_);for(var e=0;e 0:\n pre = bin(value).count("1")\n # find first non full high value afterwards\n try:\n k, value = next((ind, v)\n for ind, v in enumerate(resp[i:length - 2]) if resp[i + ind + 1] == 0)\n post = bin(value).count("1") if k else 0\n k = k + i\n except StopIteration:\n i = -1\n dist= -1 if i < 0 else round((pre + (k - i) * 8. + post) * 8 * 0.172)\n return dist\n\n def distance_cm(self):\n return self.distance_mm() / 10.0\n\nsonar=HCSR04()\n\n',["sonar.distance_cm()",e.ORDER_ATOMIC]},Nc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_RTC="from RTC import *"},Pc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_RTC="from RTC import *";var i=this.getFieldValue("TIME_TYPE");switch(i){case"Year":case"Month":case"Day":case"Hour":case"Minute":case"Second":case"Week":return["ds."+i+"()",e.ORDER_ASSIGNMENT];case"Mix1":return["ds.get_date()",e.ORDER_ASSIGNMENT];case"Mix2":return["ds.get_time()",e.ORDER_ASSIGNMENT]}},Fc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_RTC="from RTC import *","ds.set_time("+e.valueToCode(this,"hour",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"minute",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"second",e.ORDER_ASSIGNMENT)+")\n"},Yc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_RTC="from RTC import *","ds.set_date("+e.valueToCode(this,"year",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"month",e.ORDER_ASSIGNMENT)+", "+e.valueToCode(this,"day",e.ORDER_ASSIGNMENT)+")\n"},vc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","compass.clear_calibration()\n"},Xc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",["display.read_light_level()",e.ORDER_ATOMIC]},bc=function(t,e){var i=this.getFieldValue("Trig"),n=this.getFieldValue("Echo");return e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_ultrasonic="from ultrasonic import *","sonar = HCSR04(tpin=pin"+i+", epin=pin"+n+")\n"},yc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_TCS="from TCS import *",["tcs.getRawRGBData("+this.getFieldValue("TCS34725_COLOR")+")",e.ORDER_ATOMIC]},Vc=function(t,e){var i=this.getFieldValue("PIN"),n=e.valueToCode(this,"NominalResistance",e.ORDER_ATOMIC),s=e.valueToCode(this,"betaCoefficient",e.ORDER_ATOMIC),o=e.valueToCode(this,"seriesResistor",e.ORDER_ATOMIC);return e.definitions_["import_microbit_*"]="from microbit import *",e.definitions_.import_ntc="import ntc",["ntc.read(pin"+i+", "+n+", "+s+", "+o+")",e.ORDER_ATOMIC]},Bc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","uart.write(str("+(e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC)||'""')+"))\n"},Gc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","uart.write(str("+(e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC)||'""')+")+'\\r\\n')\n"},Uc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","uart.write(str(hex("+(e.valueToCode(this,"CONTENT",e.ORDER_ATOMIC)||"0")+")) + '\\r\\n')\n"},wc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";var i=e.valueToCode(this,"char_marker",e.ORDER_ATOMIC)||";",n=e.statementToCode(this,"DO");e.definitions_["func_serial_receive_data_event_"+i.charCodeAt(1)]="serial.onDataReceived("+i+", () => {\n"+n+"}\n"},kc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";return["uart.any()",e.ORDER_ATOMIC]},xc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";return["uart.read()",e.ORDER_ATOMIC]},Hc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";return["uart.readline()",e.ORDER_ATOMIC]},Wc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",["serial.readUntil("+this.getFieldValue("char_marker")+")",e.ORDER_ATOMIC]},Kc=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";var i=e.valueToCode(this,"RX",e.ORDER_ATOMIC),n=e.valueToCode(this,"TX",e.ORDER_ATOMIC);return isNaN(parseInt(i))||(i="pin"+i),isNaN(parseInt(n))||(n="pin"+n),"uart.init(rx="+i+", tx="+n+", baudrate="+this.getFieldValue("baudrate")+")\n"},Jc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","uart.init(baudrate="+this.getFieldValue("baudrate")+")\n"},Qc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *",["input("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+")",e.ORDER_ATOMIC]},qc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","print("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+")\n"},jc=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","print("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+',end ="")\n'},zc=function(t,e){return"control.inBackground(() => {\n"+e.statementToCode(this,"do")+"})\n"},Zc=function(){return"control.reset()\n"},$c=function(t,e){return"control.waitMicros("+(e.valueToCode(this,"data",e.ORDER_ATOMIC)||j.Profile.default.serial)+")\n"},tR=function(t,e){return"control.raiseEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||j.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||j.Profile.default.serial)+")\n"},eR=function(t,e){return"control.onEvent("+(e.valueToCode(this,"system_event_bus_source",e.ORDER_ATOMIC)||j.Profile.default.serial)+", "+(e.valueToCode(this,"system_event_bus_value",e.ORDER_ATOMIC)||j.Profile.default.serial)+", () => {\n"+e.statementToCode(this,"do")+")\n"},iR=function(t,e){return["control.eventTimestamp()",e.ORDER_ATOMIC]},nR=function(t,e){return["control.eventValue()",e.ORDER_ATOMIC]},sR=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},oR=function(t,e){return[this.getFieldValue("key"),e.ORDER_ATOMIC]},_R=function(t,e){return["control.deviceName()",e.ORDER_ATOMIC]},uR=function(t,e){return["control.deviceSerialNumber()",e.ORDER_ATOMIC]},pR=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","sleep("+(e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000")+")\n"},rR=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},aR=function(t,e){e.definitions_["import_microbit_*"]="from microbit import *";return["running_time()",e.ORDER_ATOMIC]},lR=function(){return"while True:\n pass\n"},IR=function(t,e){return e.definitions_["import_microbit_*"]="from microbit import *","reset()\n"},dR=function(t,e){return e.definitions_.import_os="import os",["os.uname()",e.ORDER_ATOMIC]};Object.assign(q.Variables,Z),Object.assign(q.Procedures,ar),q.Python=lr,q.generator=lr,j.Profile.default={},Object.assign(j.Profile,dM),Object.assign(j.Profile.default,dM.microbit),Object.assign(q.Blocks,e,i,n,s,o,_,u,p,r,a,l,I,d,f,D,F,Y,v,X,b,y,V,B,G),Object.assign(q.Python.forBlock,T,M,h,m,O,E,c,R,g,C,A,L,S,N,P,U,w,k,x,H,W,K,J,Q)})();