Files
mixly3/boards/default/python_skulpt_mixtoy/main.bundle.47e5a8f2.js

21 lines
304 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
(()=>{"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:()=>Z,controls_typeLists:()=>z,lists_zip:()=>$,lists_zip_container:()=>tt,lists_zip_item:()=>et,unpack_iterable_object:()=>it,variables_change:()=>Q,variables_get:()=>j,variables_global:()=>J,variables_set:()=>q});var i={};t.r(i),t.d(i,{base_setup:()=>ot,controls_delay:()=>_t,controls_end_program:()=>pt,controls_except:()=>Rt,controls_finally:()=>mt,controls_flow_statements:()=>dt,controls_for:()=>It,controls_forEach:()=>lt,controls_for_range:()=>ht,controls_if:()=>ut,controls_if_else:()=>Mt,controls_if_elseif:()=>Ot,controls_if_if:()=>Et,controls_lambda:()=>gt,controls_main:()=>st,controls_pass:()=>Lt,controls_range:()=>at,controls_repeat_ext:()=>At,controls_thread:()=>Ct,controls_try:()=>ct,controls_try_finally:()=>Tt,controls_whileUntil:()=>rt,datetime_fromtimestamp:()=>Ft,do_while:()=>St,garbage_collection:()=>Dt,gene_unique_identifier:()=>vt,get_mem_alloc:()=>Nt,get_mem_free:()=>Pt,get_unique_identifier:()=>ft});var n={};t.r(n),t.d(n,{base_map:()=>$t,generate_cartesian_product:()=>ee,math_arithmetic:()=>kt,math_bit:()=>Ut,math_constant:()=>yt,math_constant_mp:()=>bt,math_constrain:()=>Kt,math_dec:()=>Bt,math_degree_to_radian:()=>ne,math_indexer_number:()=>qt,math_map:()=>jt,math_max_min:()=>wt,math_number:()=>Yt,math_number_base_conversion:()=>Ht,math_radian_to_degree:()=>ie,math_random:()=>Wt,math_random_seed:()=>Qt,math_round:()=>Jt,math_selfcalcu:()=>Xt,math_to_int:()=>xt,math_trig:()=>Gt,text_to_number:()=>Zt,text_to_number_skulpt:()=>zt,turn_to_int:()=>te});var s={};t.r(s),t.d(s,{ascii_to_char:()=>le,char_to_ascii:()=>re,number_to_text:()=>Te,os_system:()=>ke,text:()=>oe,text_bytes:()=>pe,text_capital:()=>me,text_center:()=>Ae,text_char:()=>ue,text_char_at:()=>he,text_char_at2:()=>Ie,text_char_at3:()=>Ve,text_compareTo:()=>ve,text_compare_to:()=>Re,text_create_with_container:()=>Pe,text_create_with_item:()=>fe,text_encode:()=>ye,text_equals_starts_ends:()=>ce,text_eval:()=>be,text_find:()=>ge,text_format:()=>Ne,text_format_noreturn:()=>Ye,text_join:()=>ae,text_join_seq:()=>Le,text_length:()=>de,text_random_char:()=>Ee,text_replace:()=>Ce,text_split:()=>Se,text_strip:()=>De,text_substring:()=>Me,text_substring2:()=>Oe,text_substring3:()=>Fe,text_textarea:()=>_e});var o={};t.r(o),t.d(o,{ENUMERATE:()=>ci,content_in_lists:()=>mi,enumerate:()=>Ri,list_many_input:()=>_i,list_tolist:()=>li,list_tolist2:()=>Mi,list_trig:()=>ni,lists_2d_get_col_row_data:()=>xe,lists_2d_get_data_with_col_row:()=>Be,lists_append_extend:()=>qe,lists_change_to:()=>oi,lists_change_to_general:()=>ui,lists_clear:()=>$e,lists_create_with:()=>we,lists_create_with2:()=>ri,lists_create_with_container:()=>We,lists_create_with_item:()=>Ke,lists_create_with_noreturn:()=>pi,lists_create_with_text:()=>He,lists_create_with_text2:()=>Ti,lists_del_general:()=>ai,lists_find:()=>ii,lists_getIndex3:()=>di,lists_getSublist3:()=>Ii,lists_get_index:()=>Ue,lists_get_random_item:()=>Qe,lists_get_random_sublist:()=>Je,lists_get_sublist:()=>Ge,lists_insert_value:()=>Ze,lists_insert_value2:()=>Ei,lists_pop:()=>ei,lists_remove_at:()=>ti,lists_remove_at2:()=>Oi,lists_reverse:()=>ze,lists_setIndex3:()=>hi,lists_set_index:()=>je,lists_sort:()=>si});var _={};t.r(_),t.d(_,{dicts_add_change_del:()=>ki,dicts_add_or_change:()=>Pi,dicts_clear:()=>vi,dicts_create_with:()=>gi,dicts_create_with_container:()=>Li,dicts_create_with_item:()=>Ci,dicts_create_with_noreturn:()=>Gi,dicts_deldict:()=>bi,dicts_delete:()=>fi,dicts_get:()=>Di,dicts_get_default:()=>Ni,dicts_items:()=>Vi,dicts_keys:()=>Si,dicts_length:()=>yi,dicts_pop:()=>Xi,dicts_setdefault:()=>Ui,dicts_to_json:()=>xi,dicts_to_json2:()=>Wi,dicts_to_to:()=>Hi,dicts_todict:()=>Bi,dicts_update:()=>Fi,dicts_values:()=>Yi,json_to_dicts:()=>wi});var p={};t.r(p),t.d(p,{logic_boolean:()=>Zi,logic_compare:()=>ji,logic_compare_continous:()=>qi,logic_is:()=>en,logic_is_in:()=>tn,logic_negate:()=>Ji,logic_null:()=>zi,logic_operation:()=>Qi,logic_tobool:()=>nn,logic_true_or_false:()=>$i});var u={};t.r(u),t.d(u,{sdcard_mount:()=>Sn,sdcard_use_spi_init:()=>Cn,storage_can_write_ornot:()=>Tn,storage_change_dir:()=>gn,storage_close_file:()=>In,storage_delete_file:()=>En,storage_file_seek:()=>cn,storage_file_tell:()=>Mn,storage_file_write:()=>un,storage_fileopen:()=>on,storage_fileopen_new:()=>_n,storage_fileopen_new_encoding:()=>pn,storage_get_a_line:()=>rn,storage_get_contents:()=>ln,storage_get_contents_without_para:()=>an,storage_get_current_dir:()=>Rn,storage_get_file_size:()=>On,storage_get_filename:()=>dn,storage_is_file:()=>Ln,storage_list_all_files:()=>hn,storage_make_dir:()=>mn,storage_open_file_with_os:()=>sn,storage_rename:()=>An});var a={};t.r(a),t.d(a,{procedures_callnoreturn:()=>Fn,procedures_callreturn:()=>vn,procedures_defnoreturn:()=>Dn,procedures_defreturn:()=>Nn,procedures_ifreturn:()=>Vn,procedures_mutatorarg:()=>fn,procedures_mutatorcontainer:()=>Pn,procedures_return:()=>Yn});var l={};t.r(l),t.d(l,{tuple_change_to:()=>Kn,tuple_create_with:()=>bn,tuple_create_with_container:()=>kn,tuple_create_with_item:()=>Xn,tuple_create_with_noreturn:()=>Jn,tuple_create_with_text2:()=>Un,tuple_create_with_text_return:()=>Gn,tuple_del:()=>wn,tuple_find:()=>jn,tuple_getIndex:()=>Bn,tuple_getSublist:()=>Qn,tuple_get_random_item:()=>zn,tuple_get_sublist:()=>Zn,tuple_input:()=>ts,tuple_join:()=>Hn,tuple_length:()=>xn,tuple_max:()=>Wn,tuple_totuple:()=>$n,tuple_trig:()=>qn});var r={};t.r(r),t.d(r,{set_add_discard:()=>ls,set_clear:()=>ps,set_create_with:()=>is,set_create_with_container:()=>ns,set_create_with_item:()=>ss,set_create_with_text_return:()=>ds,set_length:()=>os,set_operate:()=>us,set_operate_update:()=>as,set_pop:()=>_s,set_sub:()=>rs,set_toset:()=>Is,set_update:()=>Ts});var T={};t.r(T),t.d(T,{html_content:()=>cs,html_content_more:()=>Rs,html_document:()=>Es,html_form:()=>As,html_head_body:()=>Ms,html_style:()=>ms,html_style_color:()=>Ls,html_style_content:()=>gs,html_text:()=>Cs,html_title:()=>Os});var d={};t.r(d),t.d(d,{attribute_access:()=>Us,function_call:()=>bs,function_call_container:()=>ks,function_call_item:()=>Xs,raw_block:()=>Ns,raw_empty:()=>fs,raw_expression:()=>Ps,raw_table:()=>Ds,text_comment:()=>Fs,text_print_multiple:()=>Vs,text_print_multiple_container:()=>Ys,text_print_multiple_item:()=>ys,type_check:()=>vs});var I={};t.r(I),t.d(I,{array_create:()=>io,array_toarray:()=>Oo,dataframe_create:()=>ws,dataframe_create_from_index:()=>Ws,dataframe_create_from_one_index:()=>Hs,dataframe_get:()=>Io,numpy_trig:()=>lo,pandas_readcsv:()=>To,pl_axes:()=>zs,pl_bar:()=>_o,pl_hist:()=>uo,pl_label:()=>eo,pl_legend:()=>$s,pl_pie:()=>po,pl_plot:()=>Js,pl_plot_bar:()=>no,pl_plot_easy:()=>Qs,pl_plot_scatter:()=>so,pl_plot_xy:()=>oo,pl_savefig:()=>ho,pl_show:()=>Zs,pl_subplot:()=>ro,pl_text:()=>Eo,pl_ticks:()=>ao,pl_title:()=>to,plot_axes:()=>mo,plot_bar:()=>No,plot_hist:()=>fo,plot_label:()=>Lo,plot_legend:()=>Ao,plot_pie:()=>Po,plot_plot:()=>co,plot_plot_bar:()=>Co,plot_plot_easy:()=>Mo,plot_plot_scatter:()=>So,plot_plot_xy:()=>Do,plot_savefig:()=>Vo,plot_show:()=>Ro,plot_subplot:()=>vo,plot_text:()=>Yo,plot_ticks:()=>Fo,plot_title:()=>go,series_create:()=>Bs,series_create_from_index:()=>xs,series_create_from_text:()=>Ks,series_get_num:()=>qs,series_index_value:()=>js});var h={};t.r(h),t.d(h,{inout_input:()=>bo,inout_print:()=>ko,inout_print_container:()=>xo,inout_print_end:()=>Uo,inout_print_inline:()=>Xo,inout_print_item:()=>wo,inout_print_many:()=>Bo,inout_type_input:()=>Go});var E={};t.r(E),t.d(E,{Panic_with_status_code:()=>qo,base_delay:()=>Wo,controls_millis:()=>Ko,controls_mstimer2:()=>Jo,controls_mstimer2_start:()=>Zo,controls_mstimer2_stop:()=>zo,reset:()=>Qo,time_localtime:()=>jo,time_sleep:()=>$o});var O={};t.r(O),t.d(O,{turtle_bgcolor:()=>R_,turtle_bgcolor_hex:()=>P_,turtle_bgcolor_hex_new:()=>L_,turtle_circle:()=>O_,turtle_circle_advanced:()=>M_,turtle_clear:()=>r_,turtle_clone:()=>g_,turtle_color:()=>D_,turtle_color_hex:()=>N_,turtle_color_seclet:()=>U_,turtle_create:()=>e_,turtle_done:()=>i_,turtle_exitonclick:()=>n_,turtle_fill:()=>d_,turtle_fillcolor:()=>A_,turtle_fillcolor_hex:()=>F_,turtle_fillcolor_hex_new:()=>S_,turtle_getscreen:()=>G_,turtle_goto:()=>u_,turtle_listen:()=>H_,turtle_move:()=>s_,turtle_numinput:()=>Y_,turtle_onclick:()=>x_,turtle_onkey:()=>B_,turtle_ontimer:()=>w_,turtle_pencolor:()=>m_,turtle_pencolor_hex:()=>f_,turtle_pencolor_hex_new:()=>C_,turtle_penup:()=>T_,turtle_pos_shape:()=>l_,turtle_rotate:()=>o_,turtle_screen_delay:()=>p_,turtle_screen_savefig:()=>W_,turtle_setheading:()=>__,turtle_setxy:()=>a_,turtle_shape:()=>v_,turtle_shapesize:()=>V_,turtle_size:()=>h_,turtle_size_speed:()=>I_,turtle_speed:()=>E_,turtle_textinput:()=>y_,turtle_visible:()=>c_,turtle_write:()=>b_,turtle_write_format:()=>k_,turtle_write_format_skulpt:()=>X_});var M={};t.r(M),t.d(M,{Turn:()=>Z_,addOil:()=>hp,checkMarker:()=>Op,find_books_by_dichotomy:()=>mp,find_books_by_sequence:()=>Ap,game_get_character_img:()=>pp,game_get_local_img:()=>np,game_get_path_img:()=>op,game_init:()=>q_,getMarkerNum:()=>Mp,get_actor_point:()=>ap,initSettedMap:()=>j_,initialize:()=>up,isBarrier:()=>lp,isCirculationRight:()=>Ep,isDone:()=>z_,isLightGreen:()=>Ip,isOilFull:()=>dp,isPath:()=>$_,is_Related_Barrier:()=>rp,is_Related_Path:()=>tp,move_direction_steps:()=>Q_,move_related_to_spirite:()=>J_,place_item:()=>_p,randomOil:()=>Tp,randomPlaceBarrier:()=>cp,set_map:()=>ip,set_map_bg:()=>ep,set_pathtype:()=>sp,settedSimpleMap:()=>Rp});var c={};t.r(c),t.d(c,{controls_type:()=>Dp,controls_typeLists:()=>Np,lists_zip:()=>Pp,unpack_iterable_object:()=>fp,variables_change:()=>Cp,variables_get:()=>gp,variables_global:()=>Sp,variables_set:()=>Lp});var R={};t.r(R),t.d(R,{Panic_with_status_code:()=>Gp,base_setup:()=>vp,controls_delay:()=>Up,controls_flow_statements:()=>Xp,controls_for:()=>yp,controls_forEach:()=>Wp,controls_for_range:()=>bp,controls_if:()=>Vp,controls_interrupts:()=>wp,controls_lambda:()=>jp,controls_main:()=>Fp,controls_millis:()=>Bp,controls_nointerrupts:()=>Hp,controls_pass:()=>Qp,controls_range:()=>Kp,controls_repeat:()=>nu,controls_repeat_ext:()=>zp,controls_thread:()=>Jp,controls_try_finally:()=>Yp,controls_whileUntil:()=>kp,datetime_fromtimestamp:()=>su,do_while:()=>Zp,garbage_collection:()=>$p,gene_unique_identifier:()=>ou,get_mem_alloc:()=>tu,get_mem_free:()=>eu,get_unique_identifier:()=>iu,reset:()=>xp,time_sleep:()=>qp});var m={};t.r(m),t.d(m,{base_map:()=>Su,generate_cartesian_product:()=>Nu,math_arithmetic:()=>lu,math_bit:()=>au,math_constant:()=>pu,math_constant_mp:()=>uu,math_constrain:()=>cu,math_dec:()=>Iu,math_degree_to_radian:()=>fu,math_indexer_number:()=>Au,math_map:()=>Mu,math_max_min:()=>Eu,math_number:()=>_u,math_number_base_conversion:()=>Ru,math_radian_to_degree:()=>Pu,math_random:()=>Ou,math_random_seed:()=>mu,math_round:()=>gu,math_selfcalcu:()=>ru,math_single:()=>Tu,math_to_int:()=>hu,math_trig:()=>du,text_to_number:()=>Lu,text_to_number_skulpt:()=>Cu,turn_to_int:()=>Du});var A={};t.r(A),t.d(A,{ascii_to_char:()=>bu,char_to_ascii:()=>ku,number_to_text:()=>Xu,os_system:()=>pa,text:()=>Fu,text_bytes:()=>Vu,text_capital:()=>ju,text_center:()=>qu,text_char:()=>Yu,text_char_at:()=>Bu,text_char_at2:()=>Gu,text_char_at3:()=>sa,text_compareTo:()=>na,text_compare_to:()=>Hu,text_encode:()=>oa,text_equals_starts_ends:()=>wu,text_eval:()=>_a,text_find:()=>Qu,text_format:()=>ta,text_format_noreturn:()=>ea,text_join:()=>yu,text_join_seq:()=>Ju,text_length:()=>Uu,text_random_char:()=>xu,text_replace:()=>Zu,text_split:()=>zu,text_strip:()=>$u,text_substring:()=>Ku,text_substring2:()=>Wu,text_substring3:()=>ia,text_textarea:()=>vu});var g={};t.r(g),t.d(g,{content_in_lists:()=>Ba,enumerate:()=>Ga,list_many_input:()=>Da,list_tolist:()=>Xa,list_tolist2:()=>Ua,list_trig:()=>La,lists_2d_get_col_row_data:()=>la,lists_2d_get_data_with_col_row:()=>aa,lists_append_extend:()=>ha,lists_change_to:()=>Sa,lists_change_to_general:()=>Pa,lists_clear:()=>Ra,lists_create_with:()=>ra,lists_create_with2:()=>Fa,lists_create_with_noreturn:()=>Na,lists_create_with_text:()=>Ta,lists_create_with_text2:()=>va,lists_del_general:()=>fa,lists_find:()=>ma,lists_getIndex3:()=>Va,lists_getSublist3:()=>Ya,lists_get_index:()=>da,lists_get_random_item:()=>Ea,lists_get_random_sublist:()=>Oa,lists_get_sublist:()=>ua,lists_insert_value:()=>Ma,lists_insert_value2:()=>ba,lists_pop:()=>ga,lists_remove_at:()=>Aa,lists_remove_at2:()=>ka,lists_reverse:()=>ca,lists_setIndex3:()=>ya,lists_set_index:()=>Ia,lists_sort:()=>Ca});var L={};t.r(L),t.d(L,{dicts_add_change_del:()=>tl,dicts_add_or_change:()=>Ka,dicts_clear:()=>Qa,dicts_create_with:()=>xa,dicts_create_with_noreturn:()=>nl,dicts_deldict:()=>$a,dicts_delete:()=>ja,dicts_get:()=>Ha,dicts_get_default:()=>Wa,dicts_items:()=>Ja,dicts_keys:()=>wa,dicts_length:()=>za,dicts_pop:()=>el,dicts_setdefault:()=>il,dicts_to_json:()=>ol,dicts_to_json2:()=>ul,dicts_to_to:()=>pl,dicts_todict:()=>sl,dicts_update:()=>qa,dicts_values:()=>Za,json_to_dicts:()=>_l});var C={};t.r(C),t.d(C,{logic_boolean:()=>dl,logic_compare:()=>al,logic_compare_continous:()=>ll,logic_is:()=>Ol,logic_is_in:()=>El,logic_negate:()=>Tl,logic_null:()=>Il,logic_operation:()=>rl,logic_tobool:()=>Ml,logic_true_or_false:()=>hl});var S={};t.r(S),t.d(S,{sdcard_mount:()=>Bl,sdcard_use_spi_init:()=>Gl,storage_can_write_ornot:()=>Dl,storage_change_dir:()=>yl,storage_close_file:()=>Pl,storage_delete_file:()=>Fl,storage_file_seek:()=>Yl,storage_file_tell:()=>Vl,storage_file_write:()=>gl,storage_fileopen:()=>Rl,storage_fileopen_new:()=>ml,storage_fileopen_new_encoding:()=>Al,storage_get_a_line:()=>Sl,storage_get_contents:()=>Cl,storage_get_contents_without_para:()=>Ll,storage_get_current_dir:()=>bl,storage_get_file_size:()=>vl,storage_get_filename:()=>Nl,storage_is_file:()=>Ul,storage_list_all_files:()=>fl,storage_make_dir:()=>kl,storage_open_file_with_os:()=>cl,storage_rename:()=>Xl});var D={};t.r(D),t.d(D,{procedures_callnoreturn:()=>Wl,procedures_callreturn:()=>Hl,procedures_defnoreturn:()=>wl,procedures_defreturn:()=>xl,procedures_ifreturn:()=>Kl,procedures_return:()=>jl});var N={};t.r(N),t.d(N,{tuple_change_to:()=>ir,tuple_create_with:()=>ql,tuple_create_with_noreturn:()=>_r,tuple_create_with_text2:()=>Ql,tuple_create_with_text_return:()=>Jl,tuple_del:()=>$l,tuple_find:()=>nr,tuple_getIndex:()=>Zl,tuple_getSublist:()=>or,tuple_get_random_item:()=>ur,tuple_get_sublist:()=>pr,tuple_input:()=>lr,tuple_join:()=>tr,tuple_length:()=>zl,tuple_max:()=>er,tuple_totuple:()=>ar,tuple_trig:()=>sr});var P={};t.r(P),t.d(P,{set_add_discard:()=>Or,set_clear:()=>Ir,set_create_with:()=>rr,set_create_with_text_return:()=>Rr,set_length:()=>Tr,set_operate:()=>hr,set_operate_update:()=>Er,set_pop:()=>dr,set_sub:()=>Mr,set_toset:()=>mr,set_update:()=>cr});var f={};t.r(f),t.d(f,{html_content:()=>Cr,html_content_more:()=>Sr,html_document:()=>Ar,html_form:()=>Nr,html_head_body:()=>Lr,html_style:()=>Dr,html_style_content:()=>Pr,html_text:()=>fr,html_title:()=>gr});var F={};t.r(F),t.d(F,{attribute_access:()=>kr,function_call:()=>br,raw_block:()=>Fr,raw_empty:()=>Vr,raw_expression:()=>vr,raw_table:()=>Yr,type_check:()=>yr});var v={};t.r(v),t.d(v,{array_create:()=>$r,array_toarray:()=>dT,dataframe_create:()=>Gr,dataframe_create_from_index:()=>Br,dataframe_create_from_one_index:()=>xr,dataframe_get:()=>lT,numpy_trig:()=>pT,pandas_readcsv:()=>aT,pl_axes:()=>jr,pl_bar:()=>nT,pl_hist:()=>oT,pl_label:()=>zr,pl_legend:()=>Jr,pl_pie:()=>sT,pl_plot:()=>Qr,pl_plot_bar:()=>tT,pl_plot_easy:()=>qr,pl_plot_scatter:()=>eT,pl_plot_xy:()=>iT,pl_savefig:()=>rT,pl_show:()=>Kr,pl_subplot:()=>uT,pl_text:()=>TT,pl_ticks:()=>_T,pl_title:()=>Zr,plot_axes:()=>hT,plot_bar:()=>LT,plot_hist:()=>ST,plot_label:()=>RT,plot_legend:()=>MT,plot_pie:()=>CT,plot_plot:()=>OT,plot_plot_bar:()=>mT,plot_plot_easy:()=>ET,plot_plot_scatter:()=>AT,plot_plot_xy:()=>gT,plot_savefig:()=>PT,plot_show:()=>IT,plot_subplot:()=>NT,plot_text:()=>fT,plot_ticks:()=>DT,plot_title:()=>cT,series_create:()=>Xr,series_create_from_index:()=>Ur,series_create_from_text:()=>wr,series_get_num:()=>Wr,series_index_value:()=>Hr});var V={};t.r(V),t.d(V,{inout_input:()=>FT,inout_print:()=>vT,inout_print_end:()=>YT,inout_print_inline:()=>VT,inout_print_many:()=>bT,inout_type_input:()=>yT});var Y={};t.r(Y),t.d(Y,{controls_end_program:()=>XT,controls_millis:()=>kT,time_localtime:()=>UT});var y={};t.r(y),t.d(y,{turtle_bgcolor:()=>od,turtle_bgcolor_hex:()=>ad,turtle_bgcolor_hex_new:()=>Td,turtle_circle:()=>ed,turtle_circle_advanced:()=>nd,turtle_clear:()=>QT,turtle_clone:()=>ud,turtle_color:()=>Ed,turtle_color_hex:()=>hd,turtle_color_seclet:()=>Ld,turtle_create:()=>GT,turtle_done:()=>BT,turtle_exitonclick:()=>xT,turtle_fill:()=>ZT,turtle_fillcolor:()=>pd,turtle_fillcolor_hex:()=>rd,turtle_fillcolor_hex_new:()=>Id,turtle_getscreen:()=>Cd,turtle_goto:()=>jT,turtle_listen:()=>Pd,turtle_move:()=>wT,turtle_numinput:()=>Rd,turtle_onclick:()=>Dd,turtle_onkey:()=>Sd,turtle_ontimer:()=>Nd,turtle_pencolor:()=>_d,turtle_pencolor_hex:()=>ld,turtle_pencolor_hex_new:()=>dd,turtle_penup:()=>JT,turtle_pos_shape:()=>qT,turtle_rotate:()=>HT,turtle_screen_delay:()=>KT,turtle_screen_savefig:()=>fd,turtle_setheading:()=>WT,turtle_setxy:()=>id,turtle_shape:()=>Od,turtle_shapesize:()=>Md,turtle_size:()=>$T,turtle_size_speed:()=>zT,turtle_speed:()=>td,turtle_textinput:()=>cd,turtle_visible:()=>sd,turtle_write:()=>md,turtle_write_format:()=>Ad,turtle_write_format_skulpt:()=>gd});var b={};t.r(b),t.d(b,{Turn:()=>yd,addOil:()=>$d,checkMarker:()=>eI,find_books_by_dichotomy:()=>oI,find_books_by_sequence:()=>_I,game_get_character_img:()=>wd,game_get_local_img:()=>Gd,game_get_path_img:()=>Kd,game_init:()=>Fd,getMarkerNum:()=>iI,get_actor_point:()=>Ud,initSettedMap:()=>Yd,initialize:()=>Hd,isBarrier:()=>qd,isCirculationRight:()=>tI,isDone:()=>bd,isLightGreen:()=>zd,isOilFull:()=>Zd,isPath:()=>kd,is_Related_Barrier:()=>Qd,is_Related_Path:()=>Xd,move_direction_steps:()=>vd,move_related_to_spirite:()=>Vd,place_item:()=>Wd,randomOil:()=>Jd,randomPlaceBarrier:()=>nI,set_map:()=>Bd,set_map_bg:()=>xd,set_pathtype:()=>jd,settedSimpleMap:()=>sI});const k=Blockly,X=Mixly,U={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;n<e.length;n++)for(var s=e[n].getVars(),o=0;o<s.length;o++){var _=s[o];_&&(i[_.toLowerCase()]=_)}var p=[];for(var u in i)p.push(i[u]);return p},renameVariable:function(t,e,i){k.Events.setGroup(!0);for(var n=i.getAllBlocks(),s=0;s<n.length;s++)n[s].renameVar(t,e);k.Events.setGroup(!1)},flyoutCategory:function(t){var e=U.allVariables(t),i=[];((_=k.utils.xml.createElement("block")).setAttribute("type","variables_global"),i.push(_),k.Blocks.variables_set)&&((_=k.utils.xml.createElement("block")).setAttribute("type","variables_set"),i.push(_));k.Blocks.variables_change&&((_=k.utils.xml.createElement("block")).setAttribute("type","variables_change"),i.push(_));k.Blocks.controls_type&&((_=k.utils.xml.createElement("block")).setAttribute("type","controls_type"),i.push(_));k.Blocks.controls_typeLists&&((_=k.utils.xml.createElement("block")).setAttribute("type","controls_typeLists"),i.push(_));if(k.Blocks.lists_zip){(_=k.utils.xml.createElement("block")).setAttribute("type","lists_zip"),_.setAttribute("inline","false");var n=k.utils.xml.createElement("mutation");n.setAttribute("items",2),_.appendChild(n);for(let t=0;t<2;t++){let e=k.utils.xml.createElement("value");e.setAttribute("name",`ADD${t}`),_.appendChild(e)}i.push(_)}k.Blocks.unpack_iterable_object&&((_=k.utils.xml.createElement("block")).setAttribute("type","unpack_iterable_object"),i.push(_));for(var s=0;s<e.length;s++){if(k.Blocks.variables_set){(_=k.utils.xml.createElement("block")).setAttribute("type","variables_set"),k.Blocks.variables_get&&_.setAttribute("gap",8),(p=k.utils.xml.createElement("field",null,e[s])).setAttribute("name","VAR");var o=k.utils.xml.createTextNode(e[s]);p.appendChild(o),_.appendChild(p),i.push(_)}if(k.Blocks.variables_get){var _,p;(_=k.utils.xml.createElement("block")).setAttribute("type","variables_get"),k.Blocks.variables_set&&_.setAttribute("gap",24),(p=k.utils.xml.createElement("field",null,e[s])).setAttribute("name","VAR");o=k.utils.xml.createTextNode(e[s]);p.appendChild(o),_.appendChild(p),i.push(_)}}return i},generateUniqueName:function(t){var e=U.allVariables(t),i="";if(e.length)for(var n=1,s="ijkmnopqrstuvwxyzabcdefgh",o=0,_=s.charAt(o);!i;){for(var p=!1,u=0;u<e.length;u++)if(e[u].toLowerCase()==_){p=!0;break}p?(25==++o&&(o=0,n++),_=s.charAt(o),n>1&&(_+=n)):i=_}else i="i";return i}},G=U,B={};B.NAME_TYPE=k.PROCEDURE_CATEGORY_NAME,B.allProcedures=function(t){for(var e=t.getAllBlocks(!1),i=[],n=[],s=0;s<e.length;s++)if(e[s].getProcedureDef){var o=e[s].getProcedureDef();o&&(o[2]?i.push(o):n.push(o))}return n.sort(B.procTupleComparator_),i.sort(B.procTupleComparator_),[n,i]},B.procTupleComparator_=function(t,e){return t[0].toLowerCase().localeCompare(e[0].toLowerCase())},B.findLegalName=function(t,e){if(e.isInFlyout)return t;for(t=t||k.Msg.UNNAMED_KEY||"unnamed";!B.isLegalName_(t,e.workspace,e);){var i=t.match(/^(.*?)(\d+)$/);i?t=i[1]+(parseInt(i[2],10)+1):t+="2"}return t},B.isLegalName_=function(t,e,i){return!B.isNameUsed(t,e,i)},B.isNameUsed=function(t,e,i){for(var n=e.getAllBlocks(!1),s=0;s<n.length;s++)if(n[s]!=i&&n[s].getProcedureDef){var o=n[s].getProcedureDef();if(k.Names.equals(o[0],t))return!0}return!1},B.rename=function(t){t=t.trim();var e=B.findLegalName(t,this.getSourceBlock()),i=this.getValue();if(i!=t&&i!=e)for(var n=this.getSourceBlock().workspace.getAllBlocks(!1),s=0;s<n.length;s++)n[s].renameProcedure&&n[s].renameProcedure(i,e);return e},B.flyoutCategory=function(t){var e,i,n=[];k.Blocks.procedures_defnoreturn&&((i=k.utils.xml.createElement("block")).setAttribute("type","procedures_defnoreturn"),i.setAttribute("gap",16),(e=k.utils.xml.createElement("field")).setAttribute("name","NAME"),e.appendChild(k.utils.xml.createTextNode(k.Msg.PROCEDURES_DEFNORETURN_PROCEDURE)),i.appendChild(e),n.push(i));k.Blocks.procedures_defreturn&&((i=k.utils.xml.createElement("block")).setAttribute("type","procedures_defreturn"),i.setAttribute("gap",16),(e=k.utils.xml.createElement("field")).setAttribute("name","NAME"),e.appendChild(k.utils.xml.createTextNode(k.Msg.PROCEDURES_DEFRETURN_PROCEDURE)),i.appendChild(e),n.push(i));k.Blocks.procedures_return&&((i=k.utils.xml.createElement("block")).setAttribute("type","procedures_return"),i.setAttribute("gap",16),n.push(i));k.Blocks.procedures_ifreturn&&((i=k.utils.xml.createElement("block")).setAttribute("type","procedures_ifreturn"),i.setAttribute("gap",16),n.push(i));function s(t,e){for(var i=0;i<t.length;i++){var s=t[i][0],o=t[i][1],_=k.utils.xml.createElement("block");_.setAttribute("type",e),_.setAttribute("gap",16);var p=k.utils.xml.createElement("mutation");p.setAttribute("name",s),_.appendChild(p);for(var u=0;u<o.length;u++){var a=k.utils.xml.createElement("arg");a.setAttribute("name",o[u]),p.appendChild(a)}n.push(_)}}n.length&&n[n.length-1].setAttribute("gap",24);var o=B.allProcedures(t);return s(o[0],"procedures_callnoreturn"),s(o[1],"procedures_callreturn"),n},B.getCallers=function(t,e){for(var i=[],n=e.getAllBlocks(!1),s=0;s<n.length;s++)if(n[s].getProcedureCall){var o=n[s].getProcedureCall();o&&k.Names.equals(o,t)&&i.push(n[s])}return i},B.mutateCallers=function(t){const e=k.Events.getRecordUndo(),i=t.getProcedureDef()[0],n=t.mutationToDom(!0),s=k.Procedures.getCallers(i,t.workspace);for(let t,i=0;t=s[i];i++){const i=t.mutationToDom(),s=i&&k.utils.xml.domToText(i);t.domToMutation&&t.domToMutation(n);const o=t.mutationToDom(),_=o&&k.utils.xml.domToText(o);s!==_&&(k.Events.setRecordUndo(!1),k.Events.fire(new(k.Events.get(k.Events.BLOCK_CHANGE))(t,"mutation",null,s,_)),k.Events.setRecordUndo(e))}},B.getDefinition=function(t,e){for(var i=e.getTopBlocks(!1),n=0;n<i.length;n++)if(i[n].getProcedureDef){var s=i[n].getProcedureDef();if(s&&k.Names.equals(s[0],t))return i[n]}return null};const x=B;
/**
* @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 w{constructor(t,e){if(this.variablePrefix_=e||"",this.reservedDict_=Object.create(null),t)for(var i=t.split(","),n=0;n<i.length;n++)this.reservedDict_[i[n]]=!0;this.reset()}static equals(t,e){return t.toLowerCase()==e.toLowerCase()}reset(){this.db_=Object.create(null),this.dbReverse_=Object.create(null),this.variableMap_=null}setVariableMap(t){this.variableMap_=t}getNameForUserVariable_(t){if(!this.variableMap_)return null;var e=this.variableMap_.getVariableById(t);return e?e.name:null}getName(t,e){if(e==G.NAME_TYPE){var i=this.getNameForUserVariable_(t);i&&(t=i)}var n=t.toLowerCase()+"_"+e,s=e==G.NAME_TYPE||e==w.DEVELOPER_VARIABLE_TYPE?this.variablePrefix_:"";if(n in this.db_)return s+this.db_[n];var o=this.getDistinctName(t,e);return this.db_[n]=o.substr(s.length),o}getDistinctName(t,e){for(var i=this.safeName_(t),n="";this.dbReverse_[i+n]||i+n in this.reservedDict_;)n=n?n+1:2;return i+=n,this.dbReverse_[i]=!0,(e==G.NAME_TYPE||e==w.DEVELOPER_VARIABLE_TYPE?this.variablePrefix_:"")+i}safeName_(t){return t?(t=encodeURI(t.replace(/ /g,"_")).replace(/[^,\w]/g,"_"),-1!="0123456789".indexOf(t[0])&&(t="my_"+t)):t="unnamed",t}}w.DEVELOPER_VARIABLE_TYPE="DEVELOPER_VARIABLE";const H=w,W=new k.Generator("Python");W.INDENT=" ",W.addReservedWords("False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,print,raise,return,try,while,with,yield,NotImplemented,Ellipsis,__debug__,quit,exit,copyright,license,credits,ArithmeticError,AssertionError,AttributeError,BaseException,BlockingIOError,BrokenPipeError,BufferError,BytesWarning,ChildProcessError,ConnectionAbortedError,ConnectionError,ConnectionRefusedError,ConnectionResetError,DeprecationWarning,EOFError,Ellipsis,EnvironmentError,Exception,FileExistsError,FileNotFoundError,FloatingPointError,FutureWarning,GeneratorExit,IOError,ImportError,ImportWarning,IndentationError,IndexError,InterruptedError,IsADirectoryError,KeyError,KeyboardInterrupt,LookupError,MemoryError,ModuleNotFoundError,NameError,NotADirectoryError,NotImplemented,NotImplementedError,OSError,OverflowError,PendingDeprecationWarning,PermissionError,ProcessLookupError,RecursionError,ReferenceError,ResourceWarning,RuntimeError,RuntimeWarning,StandardError,StopAsyncIteration,StopIteration,SyntaxError,SyntaxWarning,SystemError,SystemExit,TabError,TimeoutError,TypeError,UnboundLocalError,UnicodeDecodeError,UnicodeEncodeError,UnicodeError,UnicodeTranslateError,UnicodeWarning,UserWarning,ValueError,Warning,ZeroDivisionError,_,__build_class__,__debug__,__doc__,__import__,__loader__,__name__,__package__,__spec__,abs,all,any,apply,ascii,basestring,bin,bool,buffer,bytearray,bytes,callable,chr,classmethod,cmp,coerce,compile,complex,copyright,credits,delattr,dict,dir,divmod,enumerate,eval,exec,execfile,exit,file,filter,float,format,frozenset,getattr,globals,hasattr,hash,help,hex,id,input,int,intern,isinstance,issubclass,iter,len,license,list,locals,long,map,max,memoryview,min,next,object,oct,open,ord,pow,print,property,quit,range,raw_input,reduce,reload,repr,reversed,round,set,setattr,slice,sorted,staticmethod,str,sum,super,tuple,type,unichr,unicode,vars,xrange,zip"),W.ORDER_ATOMIC=0,W.ORDER_COLLECTION=1,W.ORDER_STRING_CONVERSION=1,W.ORDER_UNARY_POSTFIX=1,W.ORDER_UNARY_PREFIX=2,W.ORDER_MEMBER=2.1,W.ORDER_FUNCTION_CALL=2.2,W.ORDER_EXPONENTIATION=3,W.ORDER_UNARY_SIGN=4,W.ORDER_BITWISE_NOT=4,W.ORDER_MULTIPLICATIVE=5,W.ORDER_ADDITIVE=6,W.ORDER_BITWISE_SHIFT=7,W.ORDER_BITWISE_AND=8,W.ORDER_BITWISE_XOR=9,W.ORDER_BITWISE_OR=10,W.ORDER_RELATIONAL=11,W.ORDER_EQUALITY=11,W.ORDER_LOGICAL_NOT=12,W.ORDER_LOGICAL_AND=13,W.ORDER_LOGICAL_OR=14,W.ORDER_ASSIGNMENT=14,W.ORDER_CONDITIONAL=15,W.ORDER_LAMBDA=16,W.ORDER_NONE=99,W.ORDER_OVERRIDES=[[W.ORDER_FUNCTION_CALL,W.ORDER_MEMBER],[W.ORDER_FUNCTION_CALL,W.ORDER_FUNCTION_CALL],[W.ORDER_MEMBER,W.ORDER_MEMBER],[W.ORDER_MEMBER,W.ORDER_FUNCTION_CALL]],W.init=function(){W.PASS=this.INDENT+"pass\n",W.definitions_=Object.create(null),W.functionNames_=Object.create(null),W.setups_=Object.create(null),W.loops_=Object.create(null),W.codeEnd_=Object.create(null),W.variableDB_?W.variableDB_.reset():W.variableDB_=new H(W.RESERVED_WORDS_)},W.finish=function(t){""!==t&&(t=(t=t.replace(/\n/g,"\n")).replace(/\n\s+$/,"\n"));var e=[],i=[],n=[];for(var s in this.definitions_){var o=this.definitions_[s];0===s.indexOf("import")?e.push(o):0===s.indexOf("var_declare")?i.push(o):n.push(o)}e.length&&e.push("\n\n"),i.length&&i.push("\n\n"),n.length&&n.push("\n\n");var _=[];for(var s in W.functions_)_.push(W.functions_[s]);_.length&&_.push("\n\n");var p=[];for(var s in W.setups_)p.push(W.setups_[s]);p.length&&p.push("\n\n");var u=[];for(var s in W.loops_)u.push(W.loops_[s]);var a=[];for(var s in W.codeEnd_)a.push(W.codeEnd_[s]);return 0!==a.length&&a.push("\n"),u.length>0?e.join("\n")+i.join("\n")+n.join("\n")+_.join("\n")+p.join("")+t+"while True:\n"+u.join("")+a.join("\n"):e.join("\n")+i.join("\n")+n.join("\n")+_.join("\n")+p.join("")+t+a.join("\n")},W.scrubNakedValue=function(t){return t+"\n"},W.quote_=function(t){var e="'";return-1!==t.indexOf("'")&&(-1===t.indexOf('"')?e='"':t=t.replace(/'/g,"\\'")),e+t+e},W.multiline_quote_=function(t){return"'''"+(t=t.replace(/'''/g,"\\'\\'\\'"))+"'''"},W.scrub_=function(t,e,i){var n="";if(!t.outputConnection||!t.outputConnection.targetConnection){(o=t.getCommentText())&&(o=k.utils.string.wrap(o,W.COMMENT_WRAP-3),n+=W.prefixLines(o+"\n","# "));for(var s=0;s<t.inputList.length;s++)if(t.inputList[s].type==k.INPUT_VALUE){var o,_=t.inputList[s].connection.targetBlock();if(_)(o=W.allNestedComments(_))&&(n+=W.prefixLines(o,"# "))}}var p=t.nextConnection&&t.nextConnection.targetBlock();return n+e+(i?"":W.blockToCode(p))},W.getAdjustedInt=function(t,e,i,n){var s=i||0;t.workspace.options.oneBasedIndex&&s--;var o=t.workspace.options.oneBasedIndex?"1":"0",_=s?W.ORDER_ADDITIVE:W.ORDER_NONE,p=W.valueToCode(t,e,_)||o;return k.isNumber(p)?(p=parseInt(p,10)+s,n&&(p=-p)):(p=s>0?"int("+p+" + "+s+")":s<0?"int("+p+" - "+-s+")":"int("+p+")",n&&(p="-"+p)),p};const K=330,j={init:function(){this.setColour(K),this.appendDummyInput().appendField(new k.FieldTextInput(""),"VAR"),this.setOutput(!0),this.setTooltip(k.Msg.VARIABLES_GET_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){H.equals(t,this.getFieldValue("VAR"))&&this.setFieldValue(e,"VAR")}},q={init:function(){this.setColour(K),this.appendValueInput("VALUE").appendField(new k.FieldTextInput(""),"VAR").appendField(k.Msg.MIXLY_VALUE2),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.VARIABLES_SET_TOOLTIP)},getVars:function(){var t=this.getFieldValue("VAR");return null==t?[]:t.split(",")},renameVar:function(t,e){H.equals(t,this.getFieldValue("VAR"))&&this.setFieldValue(e,"VAR")}},Q={init:function(){this.setColour(K);var t=[[k.Msg.LANG_MATH_INT,"int"],[k.Msg.LANG_MATH_FLOAT,"float"],[k.Msg.LANG_MATH_BOOLEAN,"bool"],[k.Msg.LANG_MATH_STRING,"str"],[k.Msg.MIXLY_MICROBIT_TYPE_LIST,"list"],[k.Msg.MIXLY_MICROBIT_TYPE_TUPLE,"tuple"],[k.Msg.MIXLY_MICROBIT_TYPE_DICT,"dict"],[k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,"set"],[k.Msg.LANG_MATH_BYTE,"bytes"]];this.appendValueInput("MYVALUE").appendField(new k.FieldDropdown(t),"OP"),this.setOutput(!0)}},J={init:function(){this.setColour(K),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_PYTHON_GLOBAL).setCheck("var"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(k.Msg.TEXT_PRINT_TOOLTIP)}},Z={init:function(){this.setColour(K),this.appendValueInput("DATA").appendField(k.Msg.MICROBIT_PYTHON_TYPE),this.setOutput(!0),this.setTooltip(k.Msg.MICROBIT_PYTHON_TYPE)}},z={init:function(){this.setColour(K),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_CONTORL_GET_TYPE).appendField(new k.FieldDropdown([[k.Msg.LANG_MATH_INT,"int"],[k.Msg.MIXLY_MICROBIT_TYPE_FLOAT,"float"],[k.Msg.MIXLY_MICROBIT_TYPE_STRING,"str"],[k.Msg.MIXLY_MICROBIT_TYPE_LIST,"list"],[k.Msg.MIXLY_MICROBIT_TYPE_TUPLE,"tuple"],[k.Msg.MIXLY_MICROBIT_TYPE_DICT,"dict"],[k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,"set"],[k.Msg.LANG_MATH_BYTE,"bytes"],[k.Msg.LOGIC_NULL,"type(None)"]]),"type"),this.setInputsInline(!0),this.setOutput(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("type");return k.Msg.MICROBIT_controls_TypeLists+{int:k.Msg.LANG_MATH_INT,float:k.Msg.MIXLY_MICROBIT_TYPE_FLOAT,str:k.Msg.MIXLY_MICROBIT_TYPE_STRING,list:k.Msg.MIXLY_MICROBIT_TYPE_LIST,tuple:k.Msg.MIXLY_MICROBIT_TYPE_TUPLE,dict:k.Msg.MIXLY_MICROBIT_TYPE_DICT,set:k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,image:k.Msg.MIXLY_MICROBIT_IMAGE,bytes:k.Msg.LANG_MATH_BYTE,NoneType:k.Msg.LOGIC_NULL}[e]}))}},$={init:function(){this.setColour(K),this.itemCount_=2,this.updateShape_(),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setMutator(new k.icons.MutatorIcon(["lists_zip_item"],this)),this.setTooltip(k.Msg.MIXLY_PYTHON_LISTS_ZIP_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("lists_zip_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("lists_zip_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.MIXLY_PYTHON_LISTS_ZIP);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.MIXLY_PYTHON_LISTS_ZIP)}}},tt={init:function(){this.setColour(K),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_LISTS_ZIP),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.MIXLY_MIXPY_INOUT_PRINT_MANY_CONTAINER_TOOLTIP),this.contextMenu=!1}},et={init:function(){this.setColour(K),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_LISTS_ZIP_ITEM),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_LISTS_ZIP_ITEM_TOOLTIP),this.contextMenu=!1}},it={init:function(){this.setColour(K),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_VARIABLE_UNPACK).appendField(new k.FieldDropdown([[k.Msg.MIXLY_PYTHON_LISTS_ZIP_ITEM,"*"],[k.Msg.MIXLY_MICROBIT_TYPE_DICT,"**"]]),"TYPE"),this.setTooltip(""),this.setOutput(!0)}},nt=120,st={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_NAME_MAIN),this.appendStatementInput("DO").appendField(""),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_SETUP)}},ot={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_SETUP),this.appendStatementInput("DO").appendField(""),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_SETUP)}},_t={init:function(){var t=[[k.Msg.MIXLY_mSecond,"delay"],[k.Msg.MIXLY_uSecond,"delayMicroseconds"]];this.setColour(nt),this.appendValueInput("DELAY_TIME",Number).appendField(k.Msg.MIXLY_DELAY).appendField(new k.FieldDropdown(t),"UNIT").setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_DELAY),this.setHelpUrl("https://mixly.readthedocs.io/zh_CN/latest/arduino/03.Control.html#id9"),this.wiki={"zh-hans":{page:["Arduino AVR","控制","延时"]}}}},pt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_CONTROL_END_PROGRAM),this.setPreviousStatement(!0),this.setTooltip(k.Msg.MIXLY_MIXPY_CONTROL_END_TOOLTIP)}},ut={init:function(){this.setColour(nt),this.appendValueInput("IF0").setCheck([Boolean,Number]).appendField(k.Msg.CONTROLS_IF_MSG_IF),this.appendStatementInput("DO0").appendField(k.Msg.CONTROLS_IF_MSG_THEN),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setHelpUrl("https://mixly.readthedocs.io/zh_CN/latest/arduino/03.Control.html#if"),this.setMutator(new k.icons.MutatorIcon(["controls_if_elseif","controls_if_else"],this));var t=this;this.setTooltip((function(){return t.elseifCount_||t.elseCount_?!t.elseifCount_&&t.elseCount_?k.Msg.CONTROLS_IF_TOOLTIP_2:t.elseifCount_&&!t.elseCount_?k.Msg.CONTROLS_IF_TOOLTIP_3:t.elseifCount_&&t.elseCount_?k.Msg.CONTROLS_IF_TOOLTIP_4:"":k.Msg.CONTROLS_IF_TOOLTIP_1})),this.elseifCount_=0,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(k.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+s).appendField(k.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(k.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(k.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+t).appendField(k.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField(k.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")}},at={init:function(){this.setColour(nt),this.appendValueInput("FROM").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.PYTHON_RANGE).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.PYTHON_RANGE_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},lt={init:function(){this.setColour(nt),this.appendValueInput("LIST").setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.CONTROLS_FOREACH_INPUT),this.appendValueInput("VAR").appendField(k.Msg.CONTROLS_FOREACH_INPUT_ITEM),this.appendStatementInput("DO").appendField(k.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip((function(){return k.Msg.CONTROLS_FOR_TOOLTIP.replace("“%1”","")}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},rt={init:function(){this.setColour(nt),this.appendValueInput("BOOL").setCheck([Boolean,Number]).appendField(k.Msg.MIXLY_MICROBIT_JS_CURRENT).appendField(new k.FieldDropdown(this.OPERATORS),"MODE"),this.appendStatementInput("DO").appendField(k.Msg.LANG_CONTROLS_WHILEUNTIL_TITLE_REPEAT+k.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("MODE");return{WHILE:k.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:k.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}[e]}))}},Tt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_TRY),this.appendStatementInput("try"),this.appendValueInput("IF1").appendField(k.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO1").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["controls_except","controls_finally"],this)),this.setTooltip(k.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(k.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+s).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(k.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(k.Msg.MIXLY_PYTHON_EXCEPT),this.appendStatementInput("DO"+t).appendField("");this.elseCount_&&this.appendStatementInput("ELSE").appendField(k.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")}},dt={init:function(){this.setColour(nt);var t=new k.FieldDropdown(this.OPERATORS);this.appendDummyInput().appendField(t,"FLOW").appendField(k.Msg.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP),this.setPreviousStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_FLOW_STATEMENTS_TOOLTIP);var e=this;this.setTooltip((function(){var t=e.getFieldValue("FLOW");return{BREAK:k.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:k.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(k.Msg.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}},It={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new k.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(k.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return k.Msg.CONTROLS_FOR_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ht={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_WITH).appendField(new k.FieldTextInput("i"),"VAR"),this.appendValueInput("FROM").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.MIXLY_STEP),this.appendStatementInput("DO").appendField(k.Msg.MIXLY_DO),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0);var t=this;this.setTooltip((function(){return k.Msg.MIXLY_PYTHON_CONTROLS_FOR_RANGE_TOOLTIP.replace("%1",t.getFieldValue("VAR"))}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}};rt.OPERATORS=[[k.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[k.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]],dt.OPERATORS=[[k.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[k.Msg.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];const Et={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.CONTROLS_IF_IF_TITLE_IF),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.CONTROLS_IF_IF_TOOLTIP),this.contextMenu=!1}},Ot={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.CONTROLS_IF_ELSEIF_TOOLTIP),this.contextMenu=!1}},Mt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.CONTROLS_IF_ELSE_TITLE_ELSE),this.setPreviousStatement(!0),this.setTooltip(k.Msg.CONTROLS_IF_ELSE_TOOLTIP),this.contextMenu=!1}},ct={init:function(){this.setColour(nt),this.appendDummyInput().appendField("try"),this.appendStatementInput("STACK"),this.setPreviousStatement(!1),this.setNextStatement(!1),this.contextMenu=!1}},Rt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_EXCEPT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.contextMenu=!1,this.setTooltip(k.Msg.MIXLY_MIXPY_CONTROL_EXCEPT_TOOLTIP)}},mt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_FINALLY),this.setPreviousStatement(!0),this.contextMenu=!1,this.setTooltip(k.Msg.MIXLY_MIXPY_CONTROL_FINALLY_TOOLTIP)}},At={init:function(){this.jsonInit({message0:k.Msg.CONTROLS_REPEAT_TITLE,args0:[{type:"input_value",name:"TIMES"}],previousStatement:null,nextStatement:null,colour:nt,tooltip:k.Msg.CONTROLS_REPEAT_TOOLTIP,helpUrl:k.Msg.CONTROLS_REPEAT_HELPURL}),this.appendStatementInput("DO")}},gt={init:function(){this.setColour(nt),this.appendValueInput("BOOL").appendField("lambda"),this.appendStatementInput("DO").appendField(k.Msg.MIXLY_STAT),this.setOutput(!0)}},Lt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_PASS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_PASS_TOOLTIP)}},Ct={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_START),this.appendValueInput("callback").appendField(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_PARAMS),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_TOOLTIP)}},St={init:function(){this.appendDummyInput().appendField(k.Msg.CONTROLS_REPEAT_TITLE_REPEAT+k.Msg.MIXLY_DO),this.appendStatementInput("input_data").setCheck(null),this.appendValueInput("select_data").setCheck(null).appendField(k.Msg.CONTROLS_OPERATOR_UNTIL).appendField(new k.FieldDropdown([[k.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"true"],[k.Msg.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"false"]]),"type"),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(nt),this.setTooltip("do-while loop"),this.setHelpUrl("")}},Dt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_OP_GARBAGE_COLLECT),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Nt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_GET_MEM_ALLOC),this.setOutput(!0)}},Pt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_GET_MEM_FREE),this.setOutput(!0)}},ft={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_GET+k.Msg.MIXLY_DEVICE+"ID"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.PROCEDURES_DEFRETURN_RETURN+k.Msg.MIXLY_GET_UNIQUE_IDEN)}},Ft={init:function(){this.setColour(nt),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_RTC_TIMESTAMP),this.appendDummyInput().appendField(k.Msg.MIXLY_TIMESTAMP_TO_DATA),this.setInputsInline(!0),this.setOutput(!0,Number)}},vt={init:function(){this.setColour(nt),this.appendDummyInput().appendField(k.Msg.MIXLY_GET_UNIQUE_IDEN),this.setOutput(!0)}},Vt=230;k.FieldTextInput.math_number_validator=function(t){return String(t)},k.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 Yt={init:function(){this.setColour(Vt),this.appendDummyInput().appendField(new k.FieldTextInput("0",k.FieldTextInput.math_number_validator),"NUM"),this.setOutput(!0,Number),this.setTooltip(k.Msg.MATH_NUMBER_TOOLTIP)}},yt={init:function(){this.setColour(Vt);this.appendDummyInput("").appendField(k.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new k.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:k.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_TOOLTIP,e:k.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_TOOLTIP}[e]}))}},bt={init:function(){this.setColour(Vt);this.appendDummyInput("").appendField(k.Msg.MIXLY_PYTHON_MATH_CONSTANT).appendField(new k.FieldDropdown([["π","pi"],["e","e"]]),"CONSTANT"),this.setOutput(!0,Number);var t=this;this.setTooltip((function(){var e=t.getFieldValue("CONSTANT");return{pi:k.Msg.MIXLY_PYTHON_MATH_CONSTANT_PI_MP_TOOLTIP,e:k.Msg.MIXLY_PYTHON_MATH_CONSTANT_E_MP_TOOLTIP}[e]}))}},kt={init:function(){this.setColour(Vt),this.setOutput(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new k.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:k.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:k.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:k.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:k.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:k.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:k.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:k.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},Xt={init:function(){this.setColour(Vt),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("A"),this.appendValueInput("B").appendField(new k.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:k.Msg.MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:k.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:k.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:k.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,QUYU:k.Msg.MATH_MODULO_TOOLTIP,ZHENGCHU:k.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:k.Msg.MATH_ARITHMETIC_TOOLTIP_POWER}[e]}))}},Ut={init:function(){this.setColour(Vt),this.setOutput(!0,Number),this.appendValueInput("A").setCheck(Number),this.appendValueInput("B").setCheck(Number).appendField(new k.FieldDropdown([["&","&"],["|","|"],[">>",">>"],["<<","<<"]]),"OP"),this.setInputsInline(!0),this.setTooltip("位运算")}},Gt={init:function(){this.setColour(Vt),this.setOutput(!0,Number),this.appendValueInput("NUM").setCheck(Number).appendField(new k.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:k.Msg.MATH_TRIG_TOOLTIP_SIN,COS:k.Msg.MATH_TRIG_TOOLTIP_COS,TAN:k.Msg.MATH_TRIG_TOOLTIP_TAN,ASIN:k.Msg.MATH_TRIG_TOOLTIP_ASIN,ACOS:k.Msg.MATH_TRIG_TOOLTIP_ACOS,ATAN:k.Msg.MATH_TRIG_TOOLTIP_ATAN,LN:k.Msg.MATH_SINGLE_TOOLTIP_LN}[e]}))}},Bt={init:function(){var t=[[k.Msg.MATH_BIN,"bin"],[k.Msg.MATH_OCT,"oct"],[k.Msg.MATH_HEX,"hex"]];this.setColour(Vt),this.setOutput(!0,String),this.appendValueInput("NUM").setCheck(Number).appendField(new k.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{bin:k.Msg.MATH_DEC_TOOLTIP_BIN,oct:k.Msg.MATH_DEC_TOOLTIP_OCT,hex:k.Msg.MATH_DEC_TOOLTIP_HEX}[t]}))}},xt={init:function(){var t=[[k.Msg.LANG_MATH_TO_ROUND,"round"],[k.Msg.LANG_MATH_TO_CEIL,"ceil"],[k.Msg.LANG_MATH_TO_FLOOR,"floor"],[k.Msg.MATH_ABS,"fabs"],[k.Msg.MATH_SQRT,"sqrt"]];this.setColour(Vt),this.appendValueInput("A").setCheck(Number).appendField(new k.FieldDropdown(t),"OP"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{sqrt:k.Msg.MATH_SINGLE_TOOLTIP_ROOT,fabs:k.Msg.MATH_SINGLE_TOOLTIP_ABS,sq:k.Msg.MATH_SINGLE_TOOLTIP_SQ,round:k.Msg.MATH_SINGLE_TOOLTIP_ROUND,ceil:k.Msg.MATH_SINGLE_TOOLTIP_CEIL,floor:k.Msg.MATH_SINGLE_TOOLTIP_FLOOR}[t]}))}},wt={init:function(){var t=[[k.Msg.MIXLY_MAX,"max"],[k.Msg.MIXLY_MIN,"min"]];this.setColour(Vt),this.appendValueInput("A").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(new k.FieldDropdown(t),"OP").appendField("("),this.appendValueInput("B").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(","),this.appendDummyInput("").setAlign(k.inputs.Align.RIGHT).appendField(")"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{max:k.Msg.MIXLY_TOOLTIP_MATH_MAX,min:k.Msg.MIXLY_TOOLTIP_MATH_MIN}[t]}))}},Ht={init:function(){var t=[[k.Msg.MATH_TWO,"two"],[k.Msg.MATH_EIGHT,"eight"],[k.Msg.MATH_TEN,"ten"],[k.Msg.MATH_SIXTEEN,"sixteen"]];this.setColour(Vt),this.appendDummyInput("").appendField(k.Msg.MATH_BA),this.appendValueInput("NUM").appendField(new k.FieldDropdown(t),"OP").appendField(k.Msg.MATH_JinZhi).setCheck(Number),this.appendDummyInput("").appendField(k.Msg.MATH_ZHW).appendField(new k.FieldDropdown(t),"OP2").appendField(k.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:k.Msg.MATH_Before_two,eight:k.Msg.MATH_Before_eight,ten:k.Msg.MATH_Before_ten,sixteen:k.Msg.MATH_Before_sixteen},n=e.getFieldValue("OP2"),s={two:k.Msg.MATH_Behind_two,eight:k.Msg.MATH_Behind_eight,ten:k.Msg.MATH_Behind_ten,sixteen:k.Msg.MATH_Behind_sixteen};return i[t]+s[n]}))}},Wt={init:function(){var t=[[k.Msg.LANG_MATH_INT,"int"],[k.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(Vt),this.setOutput(!0,Number),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_RANDOM).appendField(new k.FieldDropdown(t),"TYPE"),this.appendValueInput("FROM").setCheck(Number).appendField(k.Msg.LANG_CONTROLS_FOR_INPUT_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.LANG_MATH_RANDOM_INT_INPUT_TO),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TYPE"),i={int:k.Msg.LANG_MATH_INT,float:k.Msg.LANG_MATH_FLOAT_RANDOM};return k.Msg.MATH_RANDOM_INT_TOOLTIP+i[t]}))}},Kt={init:function(){this.setColour(Vt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number).appendField(k.Msg.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN),this.appendValueInput("LOW").setCheck(Number).appendField(k.Msg.LANG_MATH_CONSTRAIN_INPUT_LOW),this.appendValueInput("HIGH").setCheck(Number).appendField(k.Msg.LANG_MATH_CONSTRAIN_INPUT_HIGH),this.setInputsInline(!0),this.setTooltip(k.Msg.MATH_CONSTRAIN_TOOLTIP)}},jt={init:function(){this.setColour(Vt),this.appendValueInput("NUM",Number).appendField(k.Msg.MIXLY_MAP).setCheck(Number),this.appendValueInput("fromLow",Number).appendField(k.Msg.MIXLY_MAP_FROM).setCheck(Number),this.appendValueInput("fromHigh",Number).appendField(",").setCheck(Number),this.appendValueInput("toLow",Number).appendField(k.Msg.MIXLY_MAP_TO).setCheck(Number),this.appendValueInput("toHigh",Number).appendField(",").setCheck(Number),this.appendDummyInput("").appendField("]"),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_MATH_MAP)}},qt={init:function(){this.setColour(Vt),this.appendDummyInput().appendField(new k.FieldTextInput("0",k.FieldTextInput.math_number_validator_include_blank),"NUM"),this.setOutput(!0),this.setTooltip(k.Msg.MATH_NUMBER_TOOLTIP)}},Qt={init:function(){this.setColour(Vt),this.appendValueInput("NUM").setCheck(Number).appendField(k.Msg.LANG_MATH_RANDOM_SEED),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_MATH_RANDOM_SEED)}},Jt={init:function(){this.setColour(Vt),this.setOutput(!0,Number),this.appendValueInput("VALUE").setCheck(Number),this.appendValueInput("VAR").setCheck(Number).appendField(k.Msg.MATH_ROUND).appendField(k.Msg.TEXT_KEEP),this.appendDummyInput().appendField(k.Msg.TEXT_DECIMAL),this.setInputsInline(!0),this.setTooltip(k.Msg.MATH_ROUND_NEW_TOOLTIP)}},Zt={init:function(){var t=[[k.Msg.MIXLY_TO_INT,"int"],[k.Msg.MIXLY_TO_FLOAT,"float"],[k.Msg.MIXLY_TO_BITES,"b"],[k.Msg.LANG_MATH_BYTE+k.Msg.MIXLY_TO_INT,"bti"]];this.setColour(Vt),this.appendValueInput("VAR").appendField(new k.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:k.Msg.MIXLY_PYTHON_TOOLTIP_TOINT,float:k.Msg.MIXLY_PYTHON_TOOLTIP_TOFLOAT,b:k.Msg.MIXLY_TOOLTIP_TEXT_TOBYTE}[t]}))}},zt={init:function(){var t=[[k.Msg.MIXLY_TO_INT,"int"],[k.Msg.MIXLY_TO_FLOAT,"float"]];this.setColour(Vt),this.appendValueInput("VAR").appendField(new k.FieldDropdown(t),"TOWHAT"),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{int:k.Msg.MIXLY_TOOLTIP_TEXT_TOINT,float:k.Msg.MIXLY_TOOLTIP_TEXT_TOFLOAT}[t]}))}},$t=jt,te={init:function(){this.setColour(Vt),this.appendValueInput("VAR").appendField(k.Msg.LANG_MATH_BYTE+k.Msg.MIXLY_TO_HEX),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOHEX)}},ee={init:function(){this.setColour(Vt),this.itemCount_=1,this.setMutator(new k.icons.MutatorIcon(["lists_create_with_item"],this)),this.appendDummyInput("DUMMY").appendField(k.Msg.MIXLY_PRODUCT+k.Msg.MIXLY_GENERATE_CARTESIAN_PRODUCT),this.appendValueInput("REPEAT").appendField(k.Msg.MIXLY_EVERY_PER_ELEPER_ELEMENT),this.appendDummyInput().appendField(k.Msg.CONTROLS_REPEAT_TITLE_TIMES),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0),this.setTooltip(k.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;n<this.itemCount_;n++){var s=t.newBlock("lists_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput(`ADD${n}`).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput(`ADD${i}`);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else{let t=0;for(;this.getInput(`ADD${t}`);)this.removeInput(`ADD${t}`),t++}if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.MIXLY_EMPTY_REMINDER);else for(let t=0;t<this.itemCount_;t++)this.appendValueInput(`ADD${t}`),this.moveInputBefore(`ADD${t}`,"REPEAT")},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ie={init:function(){this.setColour(Vt),this.setOutput(!0),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SET_RADIAN),this.appendDummyInput().appendField(k.Msg.MIXLY_TRANS_TO_ANGLE),this.setInputsInline(!0)}},ne={init:function(){this.setColour(Vt),this.setOutput(!0),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SET_DEGREE),this.appendDummyInput().appendField(k.Msg.MIXLY_TRANS_TO_RADIAN),this.setInputsInline(!0)}},se=160,oe={init:function(){this.setColour(se),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new k.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(k.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new k.FieldImage(e,12,12,'"')}},_e={init:function(){this.setColour(se),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new k.FieldMultilineInput("Hello\nMixly"),"VALUE").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(k.Msg.TEXT_LINES_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new k.FieldImage(e,12,12,'"')}},pe={init:function(){this.setColour(se),this.appendDummyInput().appendField(k.Msg.MIXLY_TEXT_BYTES).appendField(this.newQuote_(!0)).appendField(new k.FieldTextInput(""),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,String),this.setTooltip(k.Msg.TEXT_TEXT_TOOLTIP)},newQuote_:function(t){if(t==this.RTL)var e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAqUlEQVQI1z3KvUpCcRiA8ef9E4JNHhI0aFEacm1o0BsI0Slx8wa8gLauoDnoBhq7DcfWhggONDmJJgqCPA7neJ7p934EOOKOnM8Q7PDElo/4x4lFb2DmuUjcUzS3URnGib9qaPNbuXvBO3sGPHJDRG6fGVdMSeWDP2q99FQdFrz26Gu5Tq7dFMzUvbXy8KXeAj57cOklgA+u1B5AoslLtGIHQMaCVnwDnADZIFIrXsoXrgAAAABJRU5ErkJggg==";else e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAQAAAAqJXdxAAAAn0lEQVQI1z3OMa5BURSF4f/cQhAKjUQhuQmFNwGJEUi0RKN5rU7FHKhpjEH3TEMtkdBSCY1EIv8r7nFX9e29V7EBAOvu7RPjwmWGH/VuF8CyN9/OAdvqIXYLvtRaNjx9mMTDyo+NjAN1HNcl9ZQ5oQMM3dgDUqDo1l8DzvwmtZN7mnD+PkmLa+4mhrxVA9fRowBWmVBhFy5gYEjKMfz9AylsaRRgGzvZAAAAAElFTkSuQmCC";return new k.FieldImage(e,12,12,'"')}};k.FieldTextInput.char_validator=function(t){if(t.length>1&&"\\"===t.charAt(0)){var e=t.charAt(1);if("0"===e||"b"===e||"f"===e||"n"===e||"r"===e||"t"===e||"\\"===e||"'"===e)return String(t).substring(0,2);if("x"===e&&"0"===t.charAt(2)&&"B"===t.charAt(3))return String(t).substring(0,4)}return String(t).substring(0,1)};const ue={init:function(){this.setColour(se),this.appendDummyInput().appendField(this.newQuote_(!0)).appendField(new k.FieldTextInput("",k.FieldTextInput.char_validator),"TEXT").appendField(this.newQuote_(!1)),this.setOutput(!0,Number),this.setTooltip(k.Msg.TEXT_CHAR_TOOLTIP)},newQuote_:function(t){if(1==t)var e="../../media/quote2.png";else e="../../media/quote3.png";return new k.FieldImage(e,7,12,'"')}},ae={init:function(){this.setColour(se),this.appendValueInput("A").setCheck([String,Number]),this.appendValueInput("B").setCheck([String,Number]).appendField(k.Msg.MIXLY_TEXT_JOIN),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TEXT_JOIN)}},le={init:function(){this.setColour(se),this.appendValueInput("VAR").setCheck(Number).appendField(k.Msg.MIXLY_TOCHAR),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TEXT_TOCHAR)}},re={init:function(){this.setColour(se),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.MIXLY_TOASCII),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TEXT_TOASCII)}},Te={init:function(){this.setColour(se),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOSTRING),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOTEXT)}},de={init:function(){this.setColour(se),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_LENGTH),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TEXT_LENGTH)}},Ie={init:function(){this.WHERE_OPTIONS=[[k.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[k.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[k.Msg.TEXT_GET_INDEX_RANDOM+1+k.Msg.TEXT_CHARAT2,"RANDOM"]],this.setHelpUrl(k.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number),this.appendDummyInput().appendField(k.Msg.LISTS_GET_INDEX_GET,"MODE"),k.Msg.LISTS_GET_INDEX_TAIL&&this.appendDummyInput("TAIL").appendField(k.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=k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM;break;case"GET RANDOM":n=k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM;break;case"GET_REMOVE FROM_START":case"GET_REMOVE FROM_END":n=k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM;break;case"GET_REMOVE RANDOM":n=k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM}return"FROM_START"!=i&&"FROM_END"!=i||(n+=" "+k.Msg.LISTS_INDEX_FROM_START_TOOLTIP.replace("%1",k.Msg.ONE_BASED_INDEXING?"#1":"#0")),n}));var e=this;this.setTooltip((function(){var t=e.getFieldValue("WHERE"),i={FROM_START:k.Msg.LISTS_GET_INDEX_FROM_START,FROM_END:k.Msg.LISTS_GET_INDEX_FROM_END,RANDOM:k.Msg.TEXT_GET_INDEX_RANDOM};return k.Msg.PROCEDURES_DEFRETURN_RETURN+k.Msg.MIXLY_MICROBIT_TYPE_STRING+i[t]+"n"+k.Msg.TEXT_CHARAT2}))},mutationToDom:function(){var t=document.createElement("mutation");t.setAttribute("statement",!this.outputConnection);var e=this.getInput("AT").type==k.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),k.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL").appendField(k.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT");var e=new k.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"),k.Msg.LISTS_GET_INDEX_TAIL&&this.moveInputBefore("TAIL",null)}},he={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.LISTS_GET_INDEX_GET+" "+k.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT2),this.setOutput(!0),this.setTooltip(k.Msg.PROCEDURES_DEFRETURN_RETURN+k.Msg.MIXLY_MICROBIT_TYPE_STRING+k.Msg.LISTS_GET_INDEX_FROM_START+"n"+k.Msg.TEXT_CHARAT2)}},Ee={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput().appendField(k.Msg.TEXT_RANDOM_CHAR),this.setOutput(!0),this.setTooltip(k.Msg.TEXT_RANDOM_CHAR_TOOLTIP)}},Oe={init:function(){this.WHERE_OPTIONS_1=[[k.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[k.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[k.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[k.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[k.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[k.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendDummyInput("").appendField(k.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(k.Msg._GET_TEXT_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==k.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==k.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),k.Msg.TEXT_CHARAT2&&this.appendDummyInput("ORDINAL"+t).appendField(k.Msg.TEXT_CHARAT2)):this.appendDummyInput("AT"+t);var i=new k.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"))}},Me={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("AT1").appendField(k.Msg.LISTS_GET_INDEX_GET+" "+k.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(k.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT2),this.setInputsInline(!0),this.setOutput(!0,["List",String]),this.setTooltip(k.Msg._GET_TEXT_SUBLIST_TOOLTIP)}},ce={init:function(){var t=[[k.Msg.MIXLY_EQUALS,"==="],[k.Msg.MIXLY_STARTSWITH,"startswith"],[k.Msg.MIXLY_ENDSWITH,"endswith"]];this.setColour(se),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(new k.FieldDropdown(t),"DOWHAT").setCheck(String),this.setOutput(!0,[Boolean,Number]),this.setInputsInline(!0)}},Re={init:function(){this.setColour(se),this.appendValueInput("STR1").setCheck(String),this.appendValueInput("STR2").appendField(k.Msg.MIXLY_COMPARETO).setCheck(String),this.setOutput(!0,Number),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_COMPARETO_HELP)}},me={init:function(){var t=[[k.Msg.TEXT_UPPER,"upper"],[k.Msg.TEXT_TITLE,"title"],[k.Msg.TEXT_CAPITALIZE,"capitalize"],[k.Msg.TEXT_SWAPCASE,"swapcase"],[k.Msg.TEXT_LOWER,"lower"]];this.setColour(se),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new k.FieldDropdown(t),"CAPITAL").setCheck(String),this.setOutput(!0,String);var e=this;this.setTooltip((function(){var t=e.getFieldValue("CAPITAL");return{upper:k.Msg.MIXLY_MIXPY_TEXT_UPPER_TOOLTIP,title:k.Msg.MIXLY_MIXPY_TEXT_TITLE_TOOLTIP,swapcase:k.Msg.MIXLY_MIXPY_TEXT_SWAPCASE_TOOLTIP,capitalize:k.Msg.MIXLY_MIXPY_TEXT_CAPITALIZE_TOOLTIP,lower:k.Msg.MIXLY_MIXPY_TEXT_LOWER_TOOLTIP}[t]}))}},Ae={init:function(){var t=[[k.Msg.TEXT_LJUST,"ljust"],[k.Msg.TEXT_CENTER,"center"],[k.Msg.TEXT_RJUST,"rjust"]];this.setColour(se),this.appendValueInput("VAR").appendField(new k.FieldDropdown(t),"CENTER").setCheck(String),this.appendValueInput("WID").appendField(k.Msg.MIXLY_WIDTH).setCheck(Number),this.appendValueInput("Symbol").appendField(k.Msg.MIXLY_RECT_Fill).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_MIXPY_TEXT_CENTER_TOOLTIP)}},ge={init:function(){this.setColour(se),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).setCheck(String),this.appendValueInput("STR").appendField(k.Msg.MIXLY_MID+k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER).setCheck(String),this.appendDummyInput().appendField(k.Msg.MIXLY_LIST_INDEX),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_MIXPY_TEXT_FIND_TOOLTIP)}},Le={init:function(){this.setColour(se),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_USE_STR).setCheck(String),this.appendValueInput("LIST").appendField(k.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_SEQ).setCheck("List","Tuple","Set","Dict"),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_GET_STR),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_PYTHON_TEXT_JOIN_SEQ_TOOLTIP)}},Ce={init:function(){this.setColour(se),this.appendValueInput("VAR").setCheck(String),this.appendValueInput("STR1").appendField(k.Msg.MIXLY_MIXPY_REPLACE).setCheck(String),this.appendValueInput("STR2").appendField(k.Msg.LISTS_SET_INDEX_INPUT_TO).setCheck(String),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_MIXPY_TEXT_REPLACE_TOOLTIP)}},Se={init:function(){this.setColour(se),this.appendValueInput("VAR"),this.appendValueInput("VAL").appendField(k.Msg.LIST_SPLIT_AS),this.appendDummyInput("").appendField(k.Msg.LIST_SPLIT),this.setOutput(!0,"List"),this.setTooltip(k.Msg.MIXLY_MIXPY_TEXT_SPLIT_TOOLTIP),this.setInputsInline(!0)}},De={init:function(){var t=[[k.Msg.TEXT_TRIM_BOTH,"strip"],[k.Msg.TEXT_TRIM_LEFT,"lstrip"],[k.Msg.TEXT_TRIM_RIGHT,"rstrip"]];this.setColour(se),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(k.Msg.TEXT_STRIM),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"TOWHAT"),this.appendDummyInput("").appendField(k.Msg.TEXT_BLANK),this.setOutput(!0,String),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("TOWHAT");return{strip:k.Msg.TEXT_TRIM_BOTH_TOOLTIP,lstrip:k.Msg.TEXT_TRIM_LEFT_TOOLTIP,rstrip:k.Msg.TEXT_TRIM_RIGHT_TOOLTIP}[t]}))}},Ne={init:function(){this.setColour(se),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendDummyInput("").appendField(new k.FieldTextInput("str"),"VAR"),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new k.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(k.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;n<this.itemCount_;n++){var s=t.newBlock("text_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField();else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.PROCEDURES_BEFORE_PARAMS)}},getVars:function(){if(null!=this.getFieldValue("VAR"))return-1==this.getFieldValue("VAR").indexOf("'")&&-1==this.getFieldValue("VAR").indexOf('"')?[this.getFieldValue("VAR")]:[]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Pe={init:function(){this.setColour(se),this.appendDummyInput().appendField(k.Msg.PROCEDURES_MUTATORCONTAINER_TITLE),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.TUPLE_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},fe={init:function(){this.setColour(se),this.appendDummyInput().appendField(k.Msg.blockpy_SET_VARIABLES_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TUPLE_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Fe=Me,ve=Re,Ve=he,Ye={init:function(){this.setColour(se),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROPYTHON_FORMAT),this.appendValueInput("VAR").setCheck(String),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new k.icons.MutatorIcon(["text_create_with_item"],this)),this.setOutput(!0),this.setTooltip(k.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;n<this.itemCount_;n++){var s=t.newBlock("text_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField();else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.PROCEDURES_BEFORE_PARAMS)}}},ye={init:function(){this.setColour(se);var t=[[k.Msg.MIXPY_TEXT_ENCODE,"encode"],[k.Msg.MIXPY_TEXT_DECODE,"decode"]];this.appendDummyInput().appendField(new k.FieldDropdown([["ASCII","ASCII"],["gb2312","gb2312"],["gbk","gbk"],["utf-8","utf-8"],["utf-16","utf-16"],["utf-32","utf-32"]]),"CODE").appendField(" "),this.appendValueInput("VAR").appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.LANG_MATH_STRING),this.setOutput(!0,String),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXPY_TEXT_ENCODE_DECODE_TOOLTIP)}},be={init:function(){this.setColour(se),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.MIXLY_PYTHON_TEXT_EVAL),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_TEXT_EVAL_RESULT),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_TEXT_EVAL_TOOLTIP)}},ke={init:function(){this.setColour(se),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.MIXLY_PYTHON_OS_SYSTEM),this.setInputsInline(!0),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_OS_SYSTEM_TOOLTIP)}},Xe=260,Ue={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_INDEX_HELPURL),this.setColour(Xe),this.appendValueInput("LIST"),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.LISTS_GET_INDEX_FROM_START),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM)}},Ge={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Xe),this.appendValueInput("LIST"),this.appendDummyInput(""),this.appendValueInput("AT1").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(k.Msg.TEXT_CHARAT_TAIL+" "+k.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT_TAIL),this.setInputsInline(!0),this.setOutput(!0,"List"),this.setTooltip(k.Msg.PYTHON_LISTS_GET_SUBLIST_TOOLTIP)}},Be={init:function(){this.appendValueInput("LIST").setCheck(null),this.appendValueInput("row").setCheck(null).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.DATAFRAME_RAW),this.appendValueInput("col").setCheck(null).appendField(k.Msg.DATAFRAME_COLUMN),this.setInputsInline(!0),this.setOutput(!0,null),this.setColour(Xe),this.setTooltip(""),this.setHelpUrl("")}},xe={init:function(){this.appendValueInput("LIST").setCheck(null),this.appendValueInput("row_start").setCheck(null).appendField(k.Msg.MIXLY_GET+" "+k.Msg.DATAFRAME_RAW+" ["),this.appendValueInput("row_end").setCheck(null).appendField(","),this.appendValueInput("col_start").setCheck(null).appendField(") "+k.Msg.DATAFRAME_COLUMN+" ["),this.appendValueInput("col_end").setCheck(null).appendField(","),this.appendDummyInput().appendField(") "+k.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setOutput(!0,"List"),this.setColour(Xe),this.setTooltip(""),this.setHelpUrl("")}},we={init:function(){this.setColour(Xe),this.appendDummyInput("").appendField(new k.FieldTextInput("mylist"),"VAR").appendField("[").appendField("]"),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["lists_create_with_item"],this)),this.setTooltip(k.Msg.LISTS_CREATE_WITH_PYTHON_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("lists_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("lists_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.LISTS_CREATE_PYTHON_EMPTY_TITLE);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.blockpy_LISTS_CREATE_WITH_INPUT_WITH)}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},He={init:function(){this.setColour(Xe),this.appendDummyInput("").appendField(new k.FieldTextInput("mylist"),"VAR").appendField(" = [").appendField(new k.FieldTextInput("0,0,0"),"TEXT").appendField("]"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_LISTS_CREATE_WITH_TEXT2)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},We={init:function(){this.setColour(Xe),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_TYPE_LIST),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Ke={init:function(){this.setColour(Xe),this.appendDummyInput().appendField(k.Msg.LISTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},je={init:function(){this.setColour(Xe),this.appendValueInput("LIST"),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.MIXLY_MICROBIT_LIST_ASSIGN_AT),this.appendValueInput("TO").appendField(k.Msg.MIXLY_MICROBIT_JS_LIST_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.LANG_LISTS_SET_INDEX_TOOLTIP)}},qe={init:function(){this.setColour(Xe),this.TYPE=[[k.Msg.MIXLY_blockpy_set_add,"append"],[k.Msg.MIXLY_MICROBIT_LIST_EXTEND,"extend"]],this.appendValueInput("LIST").setCheck("List"),this.appendValueInput("DATA").appendField(new k.FieldDropdown(this.TYPE),"OP").appendField(k.Msg.MIXLY_MICROBIT_LIST_A_ITEM),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROBIT_JS_LIST_TO_END),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{append:k.Msg.MIXLY_TOOLTIP_LIST_APPEND,extend:k.Msg.LISTS_EXTEND_TOOLTIP}[e]}))}},Qe={init:function(){this.setColour(Xe),this.appendValueInput("LIST"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.LISTS_GET_INDEX_RANDOM),this.setTooltip(k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM),this.setOutput(!0)}},Je={init:function(){this.setColour(Xe),this.appendValueInput("LIST"),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+k.Msg.MIXLY_MICROBIT_RANDOM),this.appendDummyInput().appendField(k.Msg.LANG_LISTS_GET_INDEX2+k.Msg.LISTS_GET_RANDOM_SUBLIST),this.setTooltip(k.Msg.LISTS_GET_RANDOM_SUBLIST_TOOLTIP),this.setOutput(!0,"List")}},Ze={init:function(){this.setColour(Xe),this.appendValueInput("LIST"),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.MIXLY_MICROBIT_JS_LIST_INSERT_AT),this.appendValueInput("VALUE").appendField(k.Msg.MIXLY_MICROBIT_JS_LIST_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.LANG_LISTS_SET_INDEX_TOOLTIP),this.setTooltip(k.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT)}},ze={init:function(){this.setColour(Xe),this.appendValueInput("VAR").setCheck("List"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_JS_LIST_REVERSE),this.setTooltip(k.Msg.LANG_LISTS_CLEAR_TOOLTIP),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$e={init:function(){this.setColour(Xe),this.appendValueInput("VAR"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROPYTHON_CLEAR),this.setTooltip(k.Msg.LANG_LISTS_REVERSE_TOOLTIP),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ti={init:function(){this.setColour(Xe),this.TYPE=[[k.Msg.SERIES_INDEX,"del"],[k.Msg.MIXLY_MICROBIT_JS_I2C_VALUE,"remove"]],this.appendValueInput("LIST").setCheck("List"),this.appendValueInput("DATA").appendField(k.Msg.MIXLY_MIXPY_LISTS_REMOVE).appendField(new k.FieldDropdown(this.TYPE),"OP"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var t=this;this.setTooltip((function(){var e=t.getFieldValue("OP");return{del:k.Msg.LISTS_SET_INDEX_TOOLTIP_DELETE,remove:k.Msg.MIXLY_TOOLTIP_LIST_REMOVE}[e]}))}},ei={init:function(){this.setColour(Xe),this.appendValueInput("LIST"),this.appendValueInput("VALUE").appendField(k.Msg.MIXLY_MICROBIT_LIST_POP),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT_TAIL),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM)}},ii={init:function(){var t=[[k.Msg.MIXLY_LIST_INDEX,"INDEX"],[k.Msg.MIXLY_LIST_COUNT,"COUNT"]];this.setColour(Xe),this.appendValueInput("VAR").setCheck("List"),this.appendValueInput("data").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(k.Msg.HTML_VALUE),this.appendDummyInput().appendField(k.Msg.MIXLY_DE).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{INDEX:k.Msg.MIXLY_TOOLTIP_LIST_FIND_INDEX,COUNT:k.Msg.MIXLY_TOOLTIP_LIST_FIND_COUNT}[t]}))}},ni={init:function(){var t=[[k.Msg.MIXLY_LIST_LEN,"LEN"],[k.Msg.MATH_ONLIST_OPERATOR_SUM,"SUM"],[k.Msg.MATH_ONLIST_OPERATOR_MAX,"MAX"],[k.Msg.MATH_ONLIST_OPERATOR_MIN,"MIN"],[k.Msg.MATH_ONLIST_OPERATOR_AVERAGE,"AVERAGE"],[k.Msg.MATH_ONLIST_OPERATOR_MEDIAN,"MEDIAN"],[k.Msg.MATH_ONLIST_OPERATOR_MODE,"MODE"],[k.Msg.MATH_ONLIST_OPERATOR_STD_DEV,"STD_DEV"]];this.setColour(Xe),this.setOutput(!0,Number),this.appendValueInput("data"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{LEN:k.Msg.LISTS_LENGTH_TOOLTIP,SUM:k.Msg.MATH_ONLIST_TOOLTIP_SUM,MAX:k.Msg.MATH_ONLIST_TOOLTIP_MAX,MIN:k.Msg.MATH_ONLIST_TOOLTIP_MIN,AVERAGE:k.Msg.MATH_ONLIST_TOOLTIP_AVERAGE,MEDIAN:k.Msg.MATH_ONLIST_TOOLTIP_MEDIAN,MODE:k.Msg.MATH_ONLIST_TOOLTIP_MODE,STD_DEV:k.Msg.MATH_ONLIST_TOOLTIP_STD_DEV}[t]}))}},si={init:function(){this.jsonInit({args0:[{type:"input_value",name:"LIST",check:"List"},{type:"field_dropdown",name:"TYPE",options:[[k.Msg.LISTS_SORT_TYPE_NUMERIC,"NUMERIC"],[k.Msg.LISTS_SORT_TYPE_TEXT,"TEXT"],[k.Msg.LISTS_SORT_TYPE_IGNORECASE,"IGNORE_CASE"]]},{type:"field_dropdown",name:"DIRECTION",options:[[k.Msg.LISTS_SORT_ORDER_ASCENDING,"1"],[k.Msg.LISTS_SORT_ORDER_DESCENDING,"-1"]]}],message0:k.Msg.LISTS_SORT_TITLE,inputsInline:!0,output:"List",colour:Xe,tooltip:k.Msg.LISTS_SORT_TOOLTIP,helpUrl:k.Msg.LISTS_SORT_HELPURL})}},oi={init:function(){var t=[[k.Msg.MIXLY_MICROBIT_TYPE_TUPLE,"tuple"],[k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,"set"],[k.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD,"array"]];this.setColour(Xe),this.appendValueInput("VAR").setCheck("List"),this.appendDummyInput("").appendField(k.Msg.A_TO_B).appendField(new k.FieldDropdown(t),"OP");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{tuple:k.Msg.MIXLY_TOOLTIP_CONVERT_LIST_TO_TUPLE,set:k.Msg.MIXLY_TOOLTIP_CONVERT_LIST_TO_SET,array:k.Msg.MIXLY_TOOLTIP_CONVERT_LIST_TO_ARRAY}[t]})),this.setInputsInline(!0),this.setOutput(!0)}},_i={init:function(){this.setColour(Xe),this.appendDummyInput("").appendField("[").appendField(new k.FieldTextInput("0,0,0"),"CONTENT").appendField("]"),this.setInputsInline(!0),this.setOutput(!0)}},pi={init:function(){this.setColour(Xe),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setMutator(new k.icons.MutatorIcon(["lists_create_with_item"],this)),this.setTooltip(k.Msg.LISTS_CREATE_WITH_PYTHON_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("lists_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("lists_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.LISTS_CREATE_PYTHON_EMPTY_TITLE);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.blockpy_LISTS_CREATE_WITH_INPUT_WITH)}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ui={init:function(){var t=[[k.Msg.MIXLY_MICROBIT_TYPE_LIST,"list"],[k.Msg.MIXLY_MICROBIT_TYPE_TUPLE,"tuple"],[k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,"set"]];this.setColour(Xe),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(k.Msg.A_TO_B).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0)}},ai={init:function(){this.setColour(Xe),this.appendValueInput("TUP"),this.appendDummyInput("").appendField(k.Msg.OBJECT_DELETE),this.setPreviousStatement(!0),this.setNextStatement(!0)}},li={init:function(){this.setColour(Xe),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOLIST),this.setOutput(!0,"List"),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOLIST)}},ri=we,Ti=He,di=Ue,Ii=Ge,hi=je,Ei=Ze,Oi=ti,Mi=li,ci={init:function(){this.setColour(Xe),this.appendValueInput("VAR").appendField(k.Msg.blockpy_USE_LIST),this.appendDummyInput().appendField(k.Msg.MIXLY_TO_INDEX_SEQUENCE),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_TOTO_INDEX_SEQUENC_TOOLTIP)}},Ri={init:function(){this.setColour(Xe),this.appendDummyInput().appendField(k.Msg.blockpy_USE_LIST),this.appendValueInput("LIST"),this.appendValueInput("VALUE").appendField(k.Msg.MIXLY_TO_INDEX_SEQUENCE).appendField(k.Msg.MIXLY_INDEX+k.Msg.MIXLY_STARTSWITH),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_TOTO_INDEX_SEQUENC_TOOLTIP)}},mi={init:function(){this.setColour(Xe),this.appendValueInput("CON"),this.appendDummyInput().appendField(k.Msg.MIXLY_ESP32_MIXGO_MUSIC_SHOW_IN),this.appendValueInput("LIST"),this.appendDummyInput().appendField(k.Msg.MIXLY_MID),this.setInputsInline(!0),this.setOutput(!0)}},Ai=345,gi={init:function(){this.setColour(Ai),this.appendDummyInput("").appendField(new k.FieldTextInput("mydict"),"VAR").appendField(new k.FieldLabel(k.Msg.DICTS_CREATE_WITH_INPUT_WITH),"TIP"),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(k.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;n<this.itemCount_;n++){var s=t.newBlock("dicts_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){this.getInput("EMPTY")&&this.removeInput("EMPTY");for(var t=[],e=0;this.getInput("ADD"+e);e++)t.push(this.getFieldValue("KEY"+e)),this.removeInput("ADD"+e);if(0==this.itemCount_)this.getField("TIP").setValue(k.Msg.DICTS_CREATE_EMPTY_TITLE);else{this.getField("TIP").setValue(k.Msg.DICTS_CREATE_WITH_INPUT_WITH);for(e=0;e<this.itemCount_;e++)this.appendValueInput("ADD"+e).setCheck(null).setAlign(k.inputs.Align.RIGHT).appendField(new k.FieldTextInput(t.length>e?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Li={init:function(){this.setColour(Ai),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_TYPE_DICT),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.DICTS_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Ci={init:function(){this.setColour(Ai),this.appendDummyInput().appendField(k.Msg.DICTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.DICTS_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Si={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.DICT_KEYS),this.setTooltip(k.Msg.DICTS_KEYS_TOOLTIP),this.setOutput(!0,"List")}},Di={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(k.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(k.Msg.DICTS_ADD_VALUE),this.setOutput(!0),this.setTooltip(k.Msg.DICTS_GET_TOOLTIP)}},Ni={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(k.Msg.DICTS_GET_IN),this.appendDummyInput("").appendField(k.Msg.DICTS_ADD_VALUE),this.appendValueInput("VAR").appendField(k.Msg.DICTS_DEFAULT_VALUE),this.setOutput(!0),this.setTooltip(k.Msg.DICTS_GET_DEFAULT_TOOLTIP)}},Pi={init:function(){this.setColour(Ai),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(k.Msg.DICTS_ADD),this.appendDummyInput(),this.appendValueInput("VAR").appendField(k.Msg.DICTS_ADD_VALUE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.DICTS_ADD_OR_CHANGE_TOOLTIP)}},fi={init:function(){this.setColour(Ai),this.appendValueInput("DICT"),this.appendValueInput("KEY").appendField(k.Msg.DICTS_DELETE_IN),this.appendDummyInput("").appendField(k.Msg.DICTS_DELETE_VALUE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.DICTS_DELETE_TOOLTIP)}},Fi={init:function(){this.setColour(Ai),this.appendValueInput("DICT2").setCheck("Dict").appendField(k.Msg.MAKE_DICT),this.appendValueInput("DICT").setCheck("Dict").appendField(k.Msg.DICT_UPDATE),this.appendDummyInput("").appendField(k.Msg.MIXLY_MID),this.setTooltip(k.Msg.DICTS_UPDATE_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},vi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.DICT_CLEAR),this.setTooltip(k.Msg.DICTS_CLEAR_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Vi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.DICT_ITEMS),this.setTooltip(k.Msg.DICTS_ITEMS_TOOLTIP),this.setOutput(!0,"List")}},Yi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.DICT_VALUES),this.setTooltip(k.Msg.DICTS_VALUES_TOOLTIP),this.setOutput(!0,"List")}},yi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.MIXLY_LENGTH),this.setTooltip(k.Msg.DICT_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},bi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.DICT_DELDICT),this.setTooltip(k.Msg.DICTS_DEL_TOOLTIP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ki={init:function(){this.MODE=[[k.Msg.DICTS_ADD_OR_CHANGE,"INSERT"],[k.Msg.MIXLY_MICROBIT_JS_DELETE_VAR,"DELETE"]],this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("AT2"),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).appendField(k.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=k.Msg.DICTS_ADD_TOOLTIP;break;case"DELETE":e=k.Msg.DICTS_DELETE_TOOLTIP}return e}))},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT2").type==k.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 k.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")}},Xi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.blockpy_DICT_POP),this.appendValueInput("KEY"),this.appendDummyInput("").appendField(k.Msg.DICTS_ADD_VALUE),this.setTooltip(k.Msg.DICT_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},Ui={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(k.Msg.DICTS_SET_DEFAULT),this.appendDummyInput("").appendField(k.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.DICTS_SETDEFAULT_TOOLTIP)}},Gi={init:function(){this.setColour(Ai),this.appendDummyInput("").appendField(new k.FieldLabel(k.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 k.icons.MutatorIcon(["dicts_create_with_item"],this)),this.setTooltip(k.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;n<this.itemCount_;n++){var s=t.newBlock("dicts_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){this.getInput("EMPTY")&&this.removeInput("EMPTY");for(var t=[],e=0;this.getInput("ADD"+e);e++)t.push(this.getFieldValue("KEY"+e)),this.removeInput("ADD"+e);if(0==this.itemCount_)this.getField("TIP").setValue(k.Msg.LOGIC_NULL+k.Msg.MIXLY_MICROBIT_TYPE_DICT);else{this.getField("TIP").setValue(k.Msg.MIXLY_MICROBIT_TYPE_DICT);for(e=0;e<this.itemCount_;e++)this.appendValueInput("ADD"+e).setCheck(null).setAlign(k.inputs.Align.RIGHT).appendField(new k.FieldTextInput(t.length>e?t[e]:0==e?'"key"':'"key'+(e+1)+'"'),"KEY"+e).appendField(":")}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Bi={init:function(){this.setColour(Ai),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TODICT),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TODICT)}},xi={init:function(){this.setColour(Ai),this.appendValueInput("DICT").setCheck("Dict"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TO_JSON),this.setTooltip(k.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0)}},wi={init:function(){this.setColour(Ai),this.appendValueInput("VAR"),this.appendDummyInput("").appendField(k.Msg.MIXLY_CONVERT_TO_JSON),this.setTooltip(k.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0)}},Hi={init:function(){this.setColour(Ai),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(k.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP),this.setOutput(!0)}},Wi={init:function(){this.setColour(Ai),this.appendValueInput("DICT"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TO_JSON),this.setTooltip(k.Msg.MIXLY_TO_JSON_TOOLTIP),this.setOutput(!0)}},Ki=210,ji={init:function(){var t=k.RTL?[["=","EQ"],["≠","NEQ"],[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["=","EQ"],["≠","NEQ"],["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ki),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{EQ:k.Msg.LOGIC_COMPARE_TOOLTIP_EQ,NEQ:k.Msg.LOGIC_COMPARE_TOOLTIP_NEQ,LT:k.Msg.LOGIC_COMPARE_TOOLTIP_LT,LTE:k.Msg.LOGIC_COMPARE_TOOLTIP_LTE,GT:k.Msg.LOGIC_COMPARE_TOOLTIP_GT,GTE:k.Msg.LOGIC_COMPARE_TOOLTIP_GTE}[t]})),this.prevBlocks_=[null,null]}},qi={init:function(){var t=k.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]],e=k.RTL?[[">","LT"],["≥","LTE"],["<","GT"],["≤","GTE"]]:[["<","LT"],["≤","LTE"],[">","GT"],["≥","GTE"]];this.setColour(Ki),this.setOutput(!0,Boolean),this.appendValueInput("A"),this.appendValueInput("B").appendField(new k.FieldDropdown(t),"OP1"),this.appendValueInput("C").appendField(new k.FieldDropdown(e),"OP2"),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_LOGIC_COMPARE_CONTINOUS_TOOLTIP)}},Qi={init:function(){var t=[[k.Msg.LOGIC_OPERATION_AND,"AND"],[k.Msg.LOGIC_OPERATION_OR,"OR"],[k.Msg.LOGIC_OPERATION_NOR,"NOR"],[k.Msg.LOGIC_OPERATION_XOR,"XOR"]];this.setColour(Ki),this.setOutput(!0,Boolean),this.appendValueInput("A").setCheck([Boolean,Number]),this.appendValueInput("B").setCheck([Boolean,Number]).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{AND:k.Msg.LOGIC_OPERATION_TOOLTIP_AND,OR:k.Msg.LOGIC_OPERATION_TOOLTIP_OR,NOR:k.Msg.LOGIC_OPERATION_TOOLTIP_NOR,XOR:k.Msg.LOGIC_OPERATION_TOOLTIP_XOR}[t]}))}},Ji={init:function(){this.setColour(Ki),this.setOutput(!0,Boolean),this.appendValueInput("BOOL").setCheck([Number,Boolean]).appendField(k.Msg.LOGIC_NEGATE_TITLE),this.setTooltip(k.Msg.LOGIC_NEGATE_TOOLTIP)}},Zi={init:function(){var t=[[k.Msg.LOGIC_BOOLEAN_TRUE,"TRUE"],[k.Msg.LOGIC_BOOLEAN_FALSE,"FALSE"]];this.setColour(Ki),this.setOutput(!0,Boolean),this.appendDummyInput().appendField(new k.FieldDropdown(t),"BOOL"),this.setTooltip(k.Msg.LOGIC_BOOLEAN_TOOLTIP)}},zi={init:function(){this.setColour(Ki),this.setOutput(!0),this.appendDummyInput().appendField(k.Msg.LOGIC_NULL),this.setTooltip(k.Msg.LOGIC_NULL_TOOLTIP)}},$i={init:function(){this.setColour(Ki),this.appendValueInput("A"),this.appendValueInput("B").appendField(k.Msg.LOGIC_TERNARY_IF_TRUE),this.appendValueInput("C").appendField(k.Msg.LOGIC_TERNARY_IF_FALSE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_LOGIT_TRUEORFALSE)}},tn={init:function(){var t=[[k.Msg.TEXT_APPEND_TO,"in"],[k.Msg.MIXLY_PYTHON_LOGIC_IS_NOT_IN,"not in"]];this.setColour(Ki),this.appendValueInput("A"),this.appendValueInput("B").setCheck([String,"List"]).appendField(new k.FieldDropdown(t),"BOOL"),this.appendDummyInput("").appendField(k.Msg.MICROBIT_LOGIC_IS_IN),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(k.Msg.IN)}},en={init:function(){var t=[[k.Msg.MIXLY_PYTHON_LOGIC_IS,"is"],[k.Msg.MIXLY_PYTHON_LOGIC_IS_NOT,"is not"]];this.setColour(Ki),this.appendValueInput("A"),this.appendValueInput("B").appendField(new k.FieldDropdown(t),"BOOL"),this.setOutput(!0,Boolean),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_LOGIC_IS_TOOLTIP)}},nn={init:function(){this.setColour(Ki),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOBOOL),this.setOutput(!0,Boolean),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOBOOL)}},sn={init:function(){this.setColour(0),this.appendValueInput("fn").setCheck(String).appendField(k.Msg.MIXLY_PYTHON_STORAGE_OPEN_FILE_WITH_OS+"(For Windows)"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0)}},on={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"],[k.Msg.MIXLY_ADD,"a"],[k.Msg.MATH_BIN+k.Msg.MIXLY_ADD,"ab"],[k.Msg.MIXLY_R_W,"r+"],[k.Msg.MATH_BIN+k.Msg.MIXLY_R_W,"rb+"],[k.Msg.MIXLY_W_R,"w+"],[k.Msg.MATH_BIN+k.Msg.MIXLY_W_R,"wb+"],[k.Msg.MIXLY_A_R,"a+"],[k.Msg.MATH_BIN+k.Msg.MIXLY_A_R,"ab+"]]),"MODE"),this.appendValueInput("FILE").appendField(k.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=k.Msg.MIXLY_USE,n=k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=k.Msg.MIXLY_BELONG;return i+{r:k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s}))},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},_n={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[k.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=k.Msg.MIXLY_USE,n=k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=k.Msg.MIXLY_BELONG,_=k.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},pn={init:function(){this.setColour(0),this.appendValueInput("FILENAME").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE);this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE).appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,"r"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,"w"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,"rb"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE,"wb"]]),"MODE"),this.appendDummyInput().appendField(k.Msg.MIXPY_TEXT_ENCODE).appendField(new k.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=k.Msg.MIXLY_USE,n=k.Msg.MIXLY_MICROBIT_PY_STORAGE_MODE,s=k.Msg.MIXLY_MICROBIT_PY_STORAGE_OPEN_FILE,o=k.Msg.MIXLY_BELONG,_=k.Msg.PY_STORAGE_FILE_OBJECT;return i+{r:k.Msg.MIXLY_MICROBIT_PY_STORAGE_READ,w:k.Msg.MIXLY_MICROBIT_PY_STORAGE_WRITE,rb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_READ,wb:k.Msg.MIXLY_MICROBIT_PY_STORAGE_BIT_WRITE}[e]+o+n+s+_}))}},un={init:function(){this.setColour(0),this.appendValueInput("data").setCheck(String).appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendValueInput("FILE").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE+k.Msg.MIXLY_MICROBIT_TYPE_STRING+k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_WRITE)}},an={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL,"read"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE,"readline"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES,"readlines"]]),"MODE"),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String)}},ln={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,"read"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,"readline"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE,"readlines"]]),"MODE"),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(k.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=k.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE,n=k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER;return i+{read:k.Msg.MIXLY_MICROBIT_PY_STORAGE_NO_MORE_THAN_SIZE,readline:k.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE,readlines:k.Msg.MIXLY_MICROBIT_PY_STORAGE_ALL_LINES_NO_MORE_THAN_SIZE}[e]+"x"+n}))}},rn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FROM_FILE),this.setNextStatement(!0),this.appendValueInput("SIZE").setCheck(Number).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_ONE_LINE_NO_MORE_THAN_SIZE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(k.Msg.MICROBIT_PYTHON_TYPE)}},Tn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(k.Msg.HTML_FILE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Boolean),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CAN_WRITE_ORNOT1)}},dn={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILENAME),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,String),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILENAME)}},In={init:function(){this.setColour(0),this.appendValueInput("FILE").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CLOSE_FILE)}},hn={init:function(){this.setColour(0),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_LIST_ALL_FILES)}};k.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE;const En={init:function(){this.setColour(0),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE,"remove"],[k.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(k.Msg.MIXLY_MICROBIT_PY_STORAGE_DELETE_FILE)}},On={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_FILE_SIZE+k.Msg.MIXLY_MICROBIT_PY_STORAGE_SIZE)}},Mn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_RETURN_FILE),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_PRESENT_LOCATION),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_TELL)}},cn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck("Variable").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,"start"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,"current"],[k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END,"end"]]),"MODE"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET),this.appendValueInput("SIZE").setCheck(Number),this.appendDummyInput().appendField(k.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=k.Msg.MIXLY_MICROBIT_PY_STORAGE_SET_FILE_POSITION+k.Msg.MIXLY_MICROBIT_PY_STORAGE_CURRENT_POSITION,n=k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHARACTER,s=k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_OFFSET;return i+" "+{start:k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_START,current:k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_CURRENT,end:k.Msg.MIXLY_MICROBIT_PY_STORAGE_FILE_SEEK_END}[e]+s+"x"+n}))}},Rn={init:function(){this.setColour(0),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR),this.setInputsInline(!0),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"List"),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET_CURRENT_DIR)}},mn={init:function(){this.setColour(0),this.appendValueInput("PATH").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH),this.appendDummyInput().appendField(k.Msg.MIXLY_ESP32_SET),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,"mkdir"],[k.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 k.Msg.MIXLY_MICROBIT_PY_STORAGE_PATH+"x"+k.Msg.MIXLY_ESP32_SET+{mkdir:k.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,makedirs:k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},An={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME),this.appendValueInput("NEWFILE").setCheck(String).appendField(k.Msg.MIXLY_AS),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_RENAME)}},gn={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.MIXLY_MICROBIT_PY_STORAGE_CHANGE_DIR)}},Ln={init:function(){this.setColour(0),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.HTML_FILE,"isfile"],[k.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 k.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH+"x"+k.Msg.MIXLY_MICROBIT_PY_STORAGE_IS_OR_NOT+{isfile:k.Msg.MIXLY_MICROBIT_PY_STORAGE_MKDIR,isdir:k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKEDIRS}[e]}))}},Cn={init:function(){this.setColour(0),this.appendValueInput("SPISUB").appendField(k.Msg.CONTROLS_FOR_INPUT_WITH+"SPI").setCheck("var"),this.appendValueInput("PINSUB").appendField("CS"),this.appendValueInput("SUB").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE).setCheck("var"),this.appendDummyInput("").appendField(k.Msg.MIXLY_SETUP+k.Msg.LISTS_SET_INDEX_INPUT_TO).appendField(k.Msg.MIXLY_SD_CARD),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null)}},Sn={init:function(){this.setColour(0),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SD_CARD),this.appendValueInput("DIR").setCheck(String).appendField(k.Msg.MIXLY_SDCARD_MOUNT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip()}},Dn={init:function(){var t=k.Procedures.findLegalName("",this),e=new k.FieldTextInput(t,k.Procedures.rename);e.setSpellcheck(!1),this.appendDummyInput().appendField(e,"NAME").appendField("","PARAMS"),this.setMutator(new k.icons.MutatorIcon(["procedures_mutatorarg"],this)),(this.workspace.options.comments||this.workspace.options.parentWorkspace&&this.workspace.options.parentWorkspace.options.comments)&&k.Msg.PROCEDURES_DEFNORETURN_COMMENT&&this.setCommentText(k.Msg.PROCEDURES_DEFNORETURN_COMMENT),this.setStyle("procedure_blocks"),this.setTooltip(k.Msg.PROCEDURES_DEFNORETURN_TOOLTIP),this.setHelpUrl(k.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(k.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=k.Msg.PROCEDURES_BEFORE_PARAMS+" "+this.arguments_.join(", ")),k.Events.disable();try{this.setFieldValue(t,"PARAMS")}finally{k.Events.enable()}},mutationToDom:function(t){var e=k.utils.xml.createElement("mutation");t&&e.setAttribute("name",this.getFieldValue("NAME"));for(var i=0;i<this.argumentVarModels_.length;i++){var n=k.utils.xml.createElement("arg"),s=this.argumentVarModels_[i];n.setAttribute("name",s.name),n.setAttribute("varid",s.getId()),t&&this.paramIds_&&n.setAttribute("paramId",this.paramIds_[i]),e.appendChild(n)}return this.hasStatements_||e.setAttribute("statements","false"),e},domToMutation:function(t){this.arguments_=[],this.argumentVarModels_=[];for(var e,i=0;e=t.childNodes[i];i++)if("arg"==e.nodeName.toLowerCase()){var n=e.getAttribute("name"),s=e.getAttribute("varid")||e.getAttribute("varId");this.arguments_.push(n);var o=k.Variables.getOrCreateVariablePackage(this.workspace,s,n,"");null!=o?this.argumentVarModels_.push(o):console.log("Failed to create a variable with name "+n+", ignoring.")}this.updateParams_(),k.Procedures.mutateCallers(this),this.setStatements_("false"!==t.getAttribute("statements"))},saveExtraState:function(){if(!this.argumentVarModels_.length&&this.hasStatements_)return null;const t=Object.create(null);if(this.argumentVarModels_.length){t.params=[];for(let e=0;e<this.argumentVarModels_.length;e++)t.params.push({name:this.argumentVarModels_[e].name,id:this.argumentVarModels_[e].getId()})}return this.hasStatements_||(t.hasStatements=!1),t},loadExtraState:function(t){if(this.arguments_=[],this.argumentVarModels_=[],t.params)for(let e=0;e<t.params.length;e++){const i=t.params[e],n=k.Variables.getOrCreateVariablePackage(this.workspace,i.id,i.name,"");this.arguments_.push(n.name),this.argumentVarModels_.push(n)}this.updateParams_(),k.Procedures.mutateCallers(this),this.setStatements_(!1!==t.hasStatements)},decompose:function(t){var e=k.utils.xml.createElement("block");e.setAttribute("type","procedures_mutatorcontainer");var i=k.utils.xml.createElement("statement");i.setAttribute("name","STACK"),e.appendChild(i);for(var n=i,s=0;s<this.arguments_.length;s++){var o=k.utils.xml.createElement("block");o.setAttribute("type","procedures_mutatorarg");var _=k.utils.xml.createElement("field");_.setAttribute("name","NAME");var p=k.utils.xml.createTextNode(this.arguments_[s]);_.appendChild(p),o.appendChild(_);var u=k.utils.xml.createElement("next");o.appendChild(u),n.appendChild(o),n=u}var a=k.Xml.domToBlock(e,t);return"procedures_defreturn"==this.type?a.setFieldValue(this.hasStatements_,"STATEMENTS"):a.removeInput("STATEMENT_INPUT"),k.Procedures.mutateCallers(this),a},compose:function(t){this.arguments_=[],this.paramIds_=[],this.argumentVarModels_=[];for(var e=t.getInputTargetBlock("STACK");e&&!e.isInsertionMarker();){var i=e.getFieldValue("NAME");this.arguments_.push(i);var n=this.workspace.getVariable(i,"");this.argumentVarModels_.push(n),this.paramIds_.push(e.id),e=e.nextConnection&&e.nextConnection.targetBlock()}this.updateParams_(),k.Procedures.mutateCallers(this);var s=t.getFieldValue("STATEMENTS");if(null!==s&&(s="TRUE"==s,this.hasStatements_!=s))if(s)this.setStatements_(!0),this.statementConnection_&&this.statementConnection_.reconnect(this,"STACK"),this.statementConnection_=null;else{var o=this.getInput("STACK").connection;if(this.statementConnection_=o.targetConnection,this.statementConnection_){var _=o.targetBlock();_.unplug(),_.bumpNeighbours()}this.setStatements_(!1)}},getProcedureDef:function(){return[this.getFieldValue("NAME"),this.arguments_,!1]},getVars:function(){return this.arguments_},getVarModels:function(){return this.argumentVarModels_},renameVarById:function(t,e){var i=this.workspace.getVariableById(t);if(""==i.type){for(var n=i.name,s=this.workspace.getVariableById(e),o=!1,_=0;_<this.argumentVarModels_.length;_++)this.argumentVarModels_[_].getId()==t&&(this.arguments_[_]=s.name,this.argumentVarModels_[_]=s,o=!0);o&&(this.displayRenamedVar_(n,s.name),k.Procedures.mutateCallers(this))}},updateVarName:function(t){for(var e=t.name,i=!1,n=0;n<this.argumentVarModels_.length;n++)if(this.argumentVarModels_[n].getId()==t.getId()){var s=this.arguments_[n];this.arguments_[n]=e,i=!0}i&&(this.displayRenamedVar_(s,e),k.Procedures.mutateCallers(this))},displayRenamedVar_:function(t,e){this.updateParams_();const i=this.getIcon(k.icons.MutatorIcon.TYPE);if(i&&i.bubbleIsVisible())for(var n,s=i.getWorkspace().getAllBlocks(!1),o=0;n=s[o];o++)"procedures_mutatorarg"==n.type&&k.Names.equals(t,n.getFieldValue("NAME"))&&n.setFieldValue(e,"NAME")},customContextMenu:function(t){if(!this.isInFlyout){var e={enabled:!0},i=this.getFieldValue("NAME");e.text=k.Msg.PROCEDURES_CREATE_DO.replace("%1",i);var n=k.utils.xml.createElement("mutation");n.setAttribute("name",i);for(var s=0;s<this.arguments_.length;s++){var o=k.utils.xml.createElement("arg");o.setAttribute("name",this.arguments_[s]),n.appendChild(o)}var _=k.utils.xml.createElement("block");if(_.setAttribute("type",this.callType_),_.appendChild(n),e.callback=k.ContextMenu.callbackFactory(this,_),t.push(e),!this.isCollapsed())for(s=0;s<this.argumentVarModels_.length;s++){var p={enabled:!0},u=this.argumentVarModels_[s];p.text=k.Msg.VARIABLES_SET_CREATE_GET.replace("%1",u.name);var a=k.Variables.generateVariableFieldDom(u),l=k.utils.xml.createElement("block");l.setAttribute("type","variables_get"),l.appendChild(a),p.callback=k.ContextMenu.callbackFactory(this,l),t.push(p)}}},callType_:"procedures_callnoreturn"},Nn={init:function(){var t=k.Procedures.findLegalName("",this),e=new k.FieldTextInput(t,k.Procedures.rename);e.setSpellcheck(!1),this.appendDummyInput().appendField(e,"NAME").appendField("","PARAMS"),this.appendValueInput("RETURN").setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.setMutator(new k.icons.MutatorIcon(["procedures_mutatorarg"],this)),(this.workspace.options.comments||this.workspace.options.parentWorkspace&&this.workspace.options.parentWorkspace.options.comments)&&k.Msg.PROCEDURES_DEFRETURN_COMMENT&&this.setCommentText(k.Msg.PROCEDURES_DEFRETURN_COMMENT),this.setStyle("procedure_blocks"),this.setTooltip(k.Msg.PROCEDURES_DEFRETURN_TOOLTIP),this.setHelpUrl(k.Msg.PROCEDURES_DEFRETURN_HELPURL),this.arguments_=[],this.argumentVarModels_=[],this.setStatements_(!0),this.statementConnection_=null},setStatements_:Dn.setStatements_,updateParams_:Dn.updateParams_,mutationToDom:Dn.mutationToDom,domToMutation:Dn.domToMutation,decompose:Dn.decompose,compose:Dn.compose,getProcedureDef:function(){return[this.getFieldValue("NAME"),this.arguments_,!0]},getVars:Dn.getVars,getVarModels:Dn.getVarModels,renameVarById:Dn.renameVarById,updateVarName:Dn.updateVarName,displayRenamedVar_:Dn.displayRenamedVar_,customContextMenu:Dn.customContextMenu,callType_:"procedures_callreturn"},Pn={init:function(){this.appendDummyInput().appendField(k.Msg.PROCEDURES_MUTATORCONTAINER_TITLE),this.appendStatementInput("STACK"),this.appendDummyInput("STATEMENT_INPUT").appendField(k.Msg.PROCEDURES_ALLOW_STATEMENTS).appendField(new k.FieldCheckbox("TRUE"),"STATEMENTS"),this.setStyle("procedure_blocks"),this.setTooltip(k.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP),this.contextMenu=!1}},fn={init:function(){var t=new k.FieldTextInput(k.Procedures.DEFAULT_ARG,this.validator_);t.oldShowEditorFn_=t.showEditor_;t.showEditor_=function(){this.createdVariables_=[],this.oldShowEditorFn_()},this.appendDummyInput().appendField(k.Msg.PROCEDURES_BEFORE_PARAMS).appendField(t,"NAME"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setStyle("procedure_blocks"),this.setTooltip(k.Msg.PROCEDURES_MUTATORARG_TOOLTIP),this.contextMenu=!1,t.onFinishEditing_=this.deleteIntermediateVars_,t.createdVariables_=[],t.onFinishEditing_("x")},validator_:function(t){var e=this.getSourceBlock(),i=e.workspace.getRootWorkspace();if(!(t=t.replace(/[\s\xa0]+/g," ").replace(/^ | $/g,"")))return null;for(var n=(e.workspace.targetWorkspace||e.workspace).getAllBlocks(!1),s=t.toLowerCase(),o=0;o<n.length;o++)if(n[o].id!=this.getSourceBlock().id){var _=n[o].getFieldValue("NAME");if(_&&_.toLowerCase()==s)return null}if(e.isInFlyout)return t;var p=i.getVariable(t,"");return p&&p.name!=t&&i.renameVariableById(p.getId(),t),p||(p=i.createVariable(t,""))&&this.createdVariables_&&this.createdVariables_.push(p),t},deleteIntermediateVars_:function(t){var e=this.getSourceBlock().workspace.getRootWorkspace();if(e)for(var i=0;i<this.createdVariables_.length;i++){var n=this.createdVariables_[i];n.name!=t&&e.deleteVariableById(n.getId())}}},Fn={init:function(){this.appendDummyInput("TOPROW").appendField("","NAME"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setStyle("procedure_blocks"),this.setHelpUrl(k.Msg.PROCEDURES_CALLNORETURN_HELPURL),this.arguments_=[],this.argumentVarModels_=[],this.quarkConnections_={},this.quarkIds_=null,this.previousEnabledState_=!0},getProcedureCall:function(){return this.getFieldValue("NAME")},renameProcedure:function(t,e){if(k.Names.equals(t,this.getProcedureCall())){this.setFieldValue(e,"NAME");var i=this.outputConnection?k.Msg.PROCEDURES_CALLRETURN_TOOLTIP:k.Msg.PROCEDURES_CALLNORETURN_TOOLTIP;this.setTooltip(i.replace("%1",e))}},setProcedureParameters_:function(t,e){const i=k.Procedures.getDefinition(this.getProcedureCall(),this.workspace),n=i&&i.getIcon(k.icons.MutatorIcon.TYPE),s=n&&n.bubbleIsVisible();if(s?this.setCollapsed(!1):(this.quarkConnections_={},this.quarkIds_=null),t.join("\n")!==this.arguments_.join("\n")){if(e.length!==t.length)throw Error("paramNames and paramIds must be the same length.");this.quarkIds_||(this.quarkConnections_={},this.quarkIds_=[]);for(let t=0;t<this.arguments_.length;t++){const i=this.getInput("ARG"+t);if(i){const n=i?.connection?.targetConnection;this.quarkConnections_[this.quarkIds_[t]]=n,s&&n&&!e.includes(this.quarkIds_[t])&&(n.disconnect(),n.getSourceBlock().bumpNeighbours())}}this.arguments_=[].concat(t),this.argumentVarModels_=[];for(var o=0;o<this.arguments_.length;o++){var _=k.Variables.getOrCreateVariablePackage(this.workspace,null,this.arguments_[o],"");this.argumentVarModels_.push(_)}if(this.updateShape_(),this.quarkIds_=e,this.quarkIds_)for(let t=0;t<this.arguments_.length;t++){const e=this.quarkIds_[t];if(e in this.quarkConnections_){const i=this.quarkConnections_[e];i?.reconnect(this,"ARG"+t)||delete this.quarkConnections_[e]}}}else this.quarkIds_=e},updateShape_:function(){for(var t=0;t<this.arguments_.length;t++){var e=this.getField("ARGNAME"+t);if(e){k.Events.disable();try{e.setValue(this.arguments_[t])}finally{k.Events.enable()}}else{e=new k.FieldLabel(this.arguments_[t]),this.appendValueInput("ARG"+t).setAlign(k.inputs.Align.RIGHT).appendField(e,"ARGNAME"+t).init()}}for(;this.getInput("ARG"+t);)this.removeInput("ARG"+t),t++;var i=this.getInput("TOPROW");i&&(this.arguments_.length?this.getField("WITH")||(i.appendField(k.Msg.PROCEDURES_CALL_BEFORE_PARAMS,"WITH"),i.init()):this.getField("WITH")&&i.removeField("WITH"))},mutationToDom:function(){var t=k.utils.xml.createElement("mutation");t.setAttribute("name",this.getProcedureCall());for(var e=0;e<this.arguments_.length;e++){var i=k.utils.xml.createElement("arg");i.setAttribute("name",this.arguments_[e]),t.appendChild(i)}return t},domToMutation:function(t){var e=t.getAttribute("name");this.renameProcedure(this.getProcedureCall(),e);for(var i,n=[],s=[],o=0;i=t.childNodes[o];o++)"arg"==i.nodeName.toLowerCase()&&(n.push(i.getAttribute("name")),s.push(i.getAttribute("paramId")));this.setProcedureParameters_(n,s)},saveExtraState:function(){const t=Object.create(null);return t.name=this.getProcedureCall(),this.arguments_.length&&(t.params=this.arguments_),t},loadExtraState:function(t){this.renameProcedure(this.getProcedureCall(),t.name);const e=t.params;if(e){const t=[];t.length=e.length,t.fill(null),this.setProcedureParameters_(e,t)}},getVars:function(){return this.arguments_},getVarModels:function(){return this.argumentVarModels_},onchange:function(t){if(this.workspace&&!this.workspace.isFlyout&&t.recordUndo)if(t.type==k.Events.BLOCK_CREATE&&-1!=t.ids.indexOf(this.id)){var e=this.getProcedureCall();if((d=k.Procedures.getDefinition(e,this.workspace))&&d.type!=this.defType_&&(d=null),d){if(JSON.stringify(d.getVars())!=JSON.stringify(this.arguments_)){let t=d.arguments_,e=[];for(var i=0;i<this.arguments_.length;i++){var n=this.getInput("ARG"+i);if(n){var s=n.connection.targetConnection;s?e.push(s.sourceBlock_.id):e.push(null)}}this.setProcedureParameters_(t,e)}}else{k.Events.setGroup(t.group);var o=k.utils.xml.createElement("xml"),_=k.utils.xml.createElement("block");_.setAttribute("type",this.defType_);var p=this.getRelativeToSurfaceXY(),u=p.x+k.SNAP_RADIUS*(this.RTL?-1:1),a=p.y+2*k.SNAP_RADIUS;_.setAttribute("x",u),_.setAttribute("y",a);var l=this.mutationToDom();_.appendChild(l);var r=k.utils.xml.createElement("field");r.setAttribute("name","NAME");var T=this.getProcedureCall();T||(T=k.Procedures.findLegalName("",this),this.renameProcedure("",T)),r.appendChild(k.utils.xml.createTextNode(T)),_.appendChild(r),o.appendChild(_),k.Xml.domToWorkspace(o,this.workspace),k.Events.setGroup(!1)}}else if(t.type==k.Events.BLOCK_DELETE){e=this.getProcedureCall();(d=k.Procedures.getDefinition(e,this.workspace))||(k.Events.setGroup(t.group),this.dispose(!0),k.Events.setGroup(!1))}else if(t.type==k.Events.CHANGE&&"disabled"==t.element){var d;e=this.getProcedureCall();if((d=k.Procedures.getDefinition(e,this.workspace))&&d.id==t.blockId){var I=k.Events.getGroup();I&&console.log("Saw an existing group while responding to a definition change"),k.Events.setGroup(t.group),t.newValue?(this.previousEnabledState_=this.isEnabled(),this.setEnabled(!1)):this.setEnabled(this.previousEnabledState_),k.Events.setGroup(I)}}},customContextMenu:function(t){if(this.workspace.isMovable()){var e={enabled:!0};e.text=k.Msg.PROCEDURES_HIGHLIGHT_DEF;var i=this.getProcedureCall(),n=this.workspace;e.callback=function(){var t=k.Procedures.getDefinition(i,n);t&&(n.centerOnBlock(t.id),t.select())},t.push(e)}},defType_:"procedures_defnoreturn"},vn={init:function(){this.appendDummyInput("TOPROW").appendField("","NAME"),this.setOutput(!0),this.setStyle("procedure_blocks"),this.setHelpUrl(k.Msg.PROCEDURES_CALLRETURN_HELPURL),this.arguments_=[],this.argumentVarModels_=[],this.quarkConnections_={},this.quarkIds_=null,this.previousEnabledState_=!0},getProcedureCall:Fn.getProcedureCall,renameProcedure:Fn.renameProcedure,setProcedureParameters_:Fn.setProcedureParameters_,updateShape_:Fn.updateShape_,mutationToDom:Fn.mutationToDom,domToMutation:Fn.domToMutation,getVars:Fn.getVars,getVarModels:Fn.getVarModels,onchange:Fn.onchange,customContextMenu:Fn.customContextMenu,defType_:"procedures_defreturn"},Vn={init:function(){this.appendValueInput("CONDITION").setCheck("Boolean").appendField(k.Msg.CONTROLS_IF_MSG_IF),this.appendValueInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setStyle("procedure_blocks"),this.setTooltip(k.Msg.PROCEDURES_IFRETURN_TOOLTIP),this.setHelpUrl(k.Msg.PROCEDURES_IFRETURN_HELPURL),this.hasReturnValue_=!0},mutationToDom:function(){var t=k.utils.xml.createElement("mutation");return t.setAttribute("value",Number(this.hasReturnValue_)),t},domToMutation:function(t){var e=t.getAttribute("value");this.hasReturnValue_=1==e,this.hasReturnValue_||(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN))},onchange:function(){if(this.workspace.isDragging&&!this.workspace.isDragging()){var t=!1,e=this;do{if(-1!=this.FUNCTION_TYPES.indexOf(e.type)){t=!0;break}e=e.getSurroundParent()}while(e);t?("procedures_defnoreturn"==e.type&&this.hasReturnValue_?(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!1):"procedures_defreturn"!=e.type||this.hasReturnValue_||(this.removeInput("VALUE"),this.appendValueInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!0),this.setWarningText(null),this.isInFlyout||this.setEnabled(!0)):(this.setWarningText(k.Msg.PROCEDURES_IFRETURN_WARNING),this.isInFlyout||this.getInheritedDisabled()||this.setEnabled(!1))}},FUNCTION_TYPES:["procedures_defnoreturn","procedures_defreturn"]},Yn={init:function(){this.setStyle("procedure_blocks"),this.appendValueInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.PROCEDURES_IFRETURN_TOOLTIP),this.hasReturnValue_=!0},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("value",Number(this.hasReturnValue_)),t},domToMutation:function(t){var e=t.getAttribute("value");this.hasReturnValue_=1==e,this.hasReturnValue_||(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN))},onchange:function(){var t=!1,e=this;do{if(-1!=this.FUNCTION_TYPES.indexOf(e.type)){t=!0;break}e=e.getSurroundParent()}while(e);t?("procedures_defnoreturn"==e.type&&this.hasReturnValue_?(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!1):"procedures_defreturn"!=e.type||this.hasReturnValue_||(this.removeInput("VALUE"),this.appendValueInput("VALUE").appendField(k.Msg.PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!0),this.setWarningText(null)):this.setWarningText(k.Msg.PROCEDURES_IFRETURN_WARNING)},FUNCTION_TYPES:["procedures_defnoreturn","procedures_defreturn","method_procedures_defnoreturn","method_procedures_defreturn"]},yn=195,bn={init:function(){this.setColour(yn),this.appendDummyInput("").appendField(new k.FieldTextInput("mytup"),"VAR"),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["tuple_create_with_item"],this)),this.setTooltip(k.Msg.TUPLE_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("tuple_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("tuple_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.TUPLE_CREATE_EMPTY_TITLE);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.TUPLE_CREATE_WITH_INPUT_WITH)}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},kn={init:function(){this.setColour(yn),this.appendDummyInput().appendField(k.Msg.TUPLE_CREATE_WITH_CONTAINER_TITLE_ADD),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.TUPLE_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},Xn={init:function(){this.setColour(yn),this.appendDummyInput().appendField(k.Msg.blockpy_SET_VARIABLES_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TUPLE_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},Un={init:function(){this.setColour(yn),this.appendDummyInput("").appendField(new k.FieldTextInput("mytup"),"VAR").appendField(" = (").appendField(new k.FieldTextInput("0,0,0"),"TEXT").appendField(")"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXPY_TOOLTIP_TUPLE_CREATE_WITH_TEXT)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Gn={init:function(){this.setColour(yn),this.appendDummyInput("").appendField("(").appendField(new k.FieldTextInput("0,0,0"),"TEXT").appendField(")"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXPY_TOOLTIP_TUPLE_CREATE_WITH_TEXT)}},Bn={init:function(){this.setColour(yn),this.setOutput(!0),this.appendValueInput("TUP").setCheck("Tuple"),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.LANG_LISTS_GET_INDEX1),this.appendDummyInput("").appendField(k.Msg.LANG_LISTS_GET_INDEX2),this.setInputsInline(!0),this.setTooltip(k.Msg.TUPLE_GET_INDEX_TOOLTIP)}},xn={init:function(){this.setColour(yn),this.appendValueInput("TUP"),this.appendDummyInput("").appendField(k.Msg.MIXLY_LENGTH),this.setTooltip(k.Msg.TUPLE_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},wn={init:function(){this.setColour(yn),this.appendValueInput("TUP").setCheck("Tuple"),this.appendDummyInput("").appendField(k.Msg.TUPLE_DEL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TUPLE_DEL_TOOLTIP)}},Hn={init:function(){this.setColour(yn),this.appendValueInput("TUP1").setCheck("Tuple"),this.appendDummyInput("").appendField(k.Msg.TUPLE_JOIN),this.appendValueInput("TUP2").setCheck("Tuple"),this.setInputsInline(!0),this.setTooltip(k.Msg.TUPLE_JOIN_TOOLTIP),this.setOutput(!0,"Tuple")}},Wn={init:function(){this.appendValueInput("TUP").setCheck("Tuple");var t=[[k.Msg.blockpy_TUPLE_MAX,"max"],[k.Msg.blockpy_TUPLE_MIN,"min"],[k.Msg.MATH_ONLIST_OPERATOR_SUM,"sum"]];this.setColour(yn),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROBIT_JS_GET).appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{max:k.Msg.MIXLY_TOOLTIP_TUPLE_MAX,min:k.Msg.MIXLY_TOOLTIP_TUPLE_MIN,sum:k.Msg.MIXLY_TOOLTIP_TUPLE_SUM}[t]}))}},Kn={init:function(){var t=[[k.Msg.MIXLY_MICROBIT_TYPE_LIST,"list"],[k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD,"set"]];this.setColour(yn),this.appendValueInput("VAR").setCheck("Tuple"),this.appendDummyInput("").appendField(k.Msg.A_TO_B).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{list:k.Msg.TUPLE_TO_LISTS,set:k.Msg.TUPLE_TO_SET}[t]}))}},jn={init:function(){var t=[[k.Msg.MIXLY_LIST_INDEX,"INDEX"],[k.Msg.MIXLY_LIST_COUNT,"COUNT"]];this.setColour(yn),this.appendValueInput("VAR").setCheck("List"),this.appendValueInput("data").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(k.Msg.HTML_VALUE),this.appendDummyInput().appendField(k.Msg.MIXLY_DE).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0),this.setOutput(!0,Number);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{INDEX:k.Msg.MIXLY_TOOLTIP_TUPLE_FIND_INDEX,COUNT:k.Msg.MIXLY_TOOLTIP_TUPLE_FIND_COUNT}[t]}))}},qn={init:function(){var t=[[k.Msg.MIXLY_LIST_LEN,"LEN"],[k.Msg.MATH_ONLIST_OPERATOR_SUM,"SUM"],[k.Msg.MATH_ONLIST_OPERATOR_MAX,"MAX"],[k.Msg.MATH_ONLIST_OPERATOR_MIN,"MIN"],[k.Msg.MATH_ONLIST_OPERATOR_AVERAGE,"AVERAGE"],[k.Msg.MATH_ONLIST_OPERATOR_MEDIAN,"MEDIAN"],[k.Msg.MATH_ONLIST_OPERATOR_MODE,"MODE"],[k.Msg.MATH_ONLIST_OPERATOR_STD_DEV,"STD_DEV"]];this.setColour(yn),this.setOutput(!0,Number),this.appendValueInput("data").setCheck("List"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new k.FieldDropdown(t),"OP"),this.setInputsInline(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OP");return{LEN:k.Msg.TUPLE_LENGTH_TOOLTIP,SUM:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_SUM,MAX:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_MAX,MIN:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_MIN,AVERAGE:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_AVERAGE,MEDIAN:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_MEDIAN,MODE:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_MODE,STD_DEV:k.Msg.MATH_ONLIST_TOOLTIP_TUPLE_STD_DEV}[t]}))}},Qn={init:function(){this.WHERE_OPTIONS_1=[[k.Msg.LISTS_GET_INDEX_FROM_START,"FROM_START"],[k.Msg.LISTS_GET_INDEX_FROM_END,"FROM_END"],[k.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]],this.WHERE_OPTIONS_2=[[k.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[k.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[k.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]],this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(yn),this.appendValueInput("LIST").setCheck("List"),this.appendDummyInput("").appendField(k.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(k.Msg.PYTHON_TUPLE_GET_SUBLIST_TOOLTIP)},mutationToDom:function(){var t=document.createElement("mutation"),e=this.getInput("AT1").type==k.INPUT_VALUE;t.setAttribute("at1",e);var i=this.getInput("AT2").type==k.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),k.Msg.TEXT_CHARAT_TAIL&&this.appendDummyInput("ORDINAL"+t).appendField(k.Msg.TEXT_CHARAT_TAIL)):this.appendDummyInput("AT"+t);var i=new k.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"))}},Jn={init:function(){this.setColour(yn),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0,"Tuple"),this.setMutator(new k.icons.MutatorIcon(["tuple_create_with_item"],this)),this.setTooltip(k.Msg.TUPLE_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("tuple_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("tuple_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.TUPLE_CREATE_EMPTY_TITLE);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.TUPLE_CREATE_WITH_INPUT_WITH)}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Zn={init:function(){this.setHelpUrl(k.Msg.LISTS_GET_SUBLIST_HELPURL),this.setColour(yn),this.appendValueInput("LIST"),this.appendDummyInput(""),this.appendValueInput("AT1").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.LISTS_GET_INDEX_FROM_START),this.appendValueInput("AT2").appendField(k.Msg.TEXT_CHARAT_TAIL+" "+k.Msg.LISTS_GET_SUBLIST_END_FROM_START),this.appendDummyInput().appendField(k.Msg.TEXT_CHARAT_TAIL),this.setInputsInline(!0),this.setOutput(!0,"Tuple"),this.setTooltip(k.Msg.PYTHON_TUPLE_GET_SUBLIST_TOOLTIP)}},zn={init:function(){this.setColour(yn),this.appendValueInput("TUP"),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET+" "+k.Msg.LISTS_GET_INDEX_RANDOM),this.setTooltip(k.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM),this.setOutput(!0)}},$n={init:function(){this.setColour(yn),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOTUPLE),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOTUPLE)}};const ts={init:function(){var t;this.setColour(yn),this.appendDummyInput("").appendField("(").appendField(new k.FieldTextInput((t=new Date,t.getFullYear()+","+(t.getMonth()+1)+","+t.getDate()+","+t.getHours()+","+t.getMinutes()+","+t.getSeconds())),"CONTENT").appendField(")"),this.setOutput(!0)}},es=100,is={init:function(){this.setColour(es),this.appendDummyInput("").appendField(new k.FieldTextInput("s1"),"VAR"),this.itemCount_=3,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["set_create_with_item"],this)),this.setTooltip(k.Msg.blockpy_SET_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("set_create_with_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("set_create_with_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.blockpy_SET_CREATE_EMPTY_TITLE);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.blockpy_SET_CREATE_WITH_INPUT_WITH)}},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ns={init:function(){this.setColour(es),this.appendDummyInput().appendField(k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TITLE_ADD),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.blockpy_SET_CREATE_WITH_CONTAINER_TOOLTIP),this.contextMenu=!1}},ss={init:function(){this.setColour(es),this.appendDummyInput().appendField(k.Msg.blockpy_SET_VARIABLES_NAME),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.blockpy_SET_CREATE_WITH_ITEM_TOOLTIP),this.contextMenu=!1}},os={init:function(){this.setColour(es),this.appendValueInput("SET"),this.appendDummyInput("").appendField(k.Msg.MIXLY_LENGTH),this.setInputsInline(!0),this.setTooltip(k.Msg.SET_LENGTH_TOOLTIP),this.setOutput(!0,Number)}},_s={init:function(){this.setColour(es),this.appendValueInput("SET").setCheck("Set"),this.appendDummyInput("").appendField(k.Msg.blockpy_SET_GET_AND_REMOVE_LAST),this.setTooltip(k.Msg.SET_POP_TOOLTIP),this.setInputsInline(!0),this.setOutput(!0)}},ps={init:function(){this.setColour(es),this.appendValueInput("SET").setCheck("Set"),this.appendDummyInput("").appendField(k.Msg.SET_CLEAR),this.setPreviousStatement(!0),this.setNextStatement(!0)}},us={init:function(){this.appendValueInput("SET1").setCheck("Set");var t=[[k.Msg.blockpy_set_union,"union"],[k.Msg.blockpy_set_intersection,"intersection"],[k.Msg.blockpy_set_difference,"difference"]];this.setColour(es),this.appendDummyInput("").appendField(k.Msg.blockpy_and_set),this.appendValueInput("SET2").setCheck("Set"),this.appendDummyInput("").appendField(k.Msg.blockpy_set_get_operate).appendField(new k.FieldDropdown(t),"OPERATE"),this.setInputsInline(!0),this.setOutput(!0,"set");var e=this;this.setTooltip((function(){var t=e.getFieldValue("OPERATE");return{union:k.Msg.MIXLY_TOOLTIP_SET_UNION,intersection:k.Msg.MIXLY_TOOLTIP_SET_INTERSECTION,difference:k.Msg.MIXLY_TOOLTIP_SET_DIFFERENCE}[t]}))}},as={init:function(){this.appendValueInput("SET1").setCheck("Set");var t=[[k.Msg.blockpy_set_union,"update"],[k.Msg.blockpy_set_intersection,"intersection_update"],[k.Msg.blockpy_set_difference,"difference_update"]];this.setColour(es),this.appendDummyInput("").appendField(k.Msg.blockpy_and_set),this.appendValueInput("SET2").setCheck("Set"),this.appendDummyInput("").appendField(k.Msg.blockpy_set_get_operate).appendField(new k.FieldDropdown(t),"OPERATE"),this.appendDummyInput("").appendField(k.Msg.blockpy_set_update),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OPERATE");return{update:k.Msg.MIXLY_TOOLTIP_SET_UPDATE,intersection_update:k.Msg.MIXLY_TOOLTIP_SET_INTERSECTION_UPDATE,difference_update:k.Msg.MIXLY_TOOLTIP_SET_DIFFERENCE_UPDATE}[t]}))}},ls={init:function(){this.appendValueInput("SET").setCheck("Set");var t=[[k.Msg.MIXLY_blockpy_set_add,"add"],[k.Msg.MIXLY_blockpy_set_discard,"discard"]];this.setColour(es),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"OPERATE"),this.appendValueInput("data").appendField(k.Msg.blockpy_SET_VARIABLES_NAME),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OPERATE");return{add:k.Msg.SET_ADD_TOOLTIP,discard:k.Msg.SET_DISCARD_TOOLTIP}[t]}))}},rs={init:function(){this.appendValueInput("SET1").setCheck("Set");var t=[[k.Msg.blockpy_set_sub,"issubset"],[k.Msg.blockpy_set_super,"issuperset"]];this.setColour(es),this.appendDummyInput("").appendField(k.Msg.blockpy_is_set),this.appendValueInput("SET2").setCheck("Set"),this.appendDummyInput("").appendField(k.Msg.blockpy_set_of).appendField(new k.FieldDropdown(t),"OPERATE"),this.setInputsInline(!0),this.setOutput(!0,Boolean);var e=this;this.setTooltip((function(){var t=e.getFieldValue("OPERATE");return{issubset:k.Msg.MIXLY_TOOLTIP_SET_SUB,issuperset:k.Msg.MIXLY_TOOLTIP_SET_SUPER}[t]}))}},Ts={init:function(){this.appendValueInput("SET").setCheck("Set"),this.setColour(es),this.appendValueInput("VAR").setCheck([String,"List"]).appendField(k.Msg.blockpy_set_add_update),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.SET_UPDATE_TOOLTIP)}},ds={init:function(){this.setColour(es),this.appendDummyInput("").appendField("{").appendField(new k.FieldTextInput("0,0,0"),"TEXT").appendField("}"),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXPY_TOOLTIP_SET_CREATE_WITH_TEXT)}},Is={init:function(){this.setColour(es),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOSET),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOSET)}},hs="#1ec1e4",Es={init:function(){this.setColour(hs),this.appendDummyInput().appendField(k.Msg.HTML_DOCUMENT),this.appendStatementInput("HEAD").appendField(k.Msg.HTML_HEAD),this.appendStatementInput("BODY").appendField(k.Msg.HTML_BODY),this.setOutput(!0)}},Os={init:function(){this.setColour(hs),this.appendDummyInput().appendField(k.Msg.HTML_LEVEL).appendField(new k.FieldDropdown([["1","1"],["2","2"],["3","3"],["4","4"],["5","5"],["6","6"]]),"LEVEL"),this.appendStatementInput("DO").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ms={init:function(){this.setColour(hs),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.HTML_HEAD,"head"],[k.Msg.HTML_BODY,"body"]]),"LEVEL"),this.appendStatementInput("DO").appendField(""),this.setPreviousStatement(!0),this.setNextStatement(!0)}},cs={init:function(){this.setColour(hs),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.HTML_P,"p"],[k.Msg.HTML_SPAN,"span"],[k.Msg.HTML_FORM,"form"],[k.Msg.HTML_TABLE,"table"],[k.Msg.HTML_LINE,"tr"],[k.Msg.HTML_CELL,"td"],[k.Msg.HTML_OL,"ol"],[k.Msg.HTML_UL,"ul"],[k.Msg.HTML_LI,"li"]]),"LEVEL"),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Rs={init:function(){this.setColour(hs),this.appendDummyInput().appendField("<").appendField(new k.FieldTextInput("tag"),"LEVEL").appendField(">"),this.appendValueInput("style").appendField(k.Msg.MIXLY_AIP_ATTR).setAlign(k.inputs.Align.RIGHT),this.appendStatementInput("DO").appendField(""),this.setInputsInline(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ms={init:function(){this.setColour(hs),this.appendDummyInput().appendField(k.Msg.HTML_STYLE),this.appendStatementInput("STYLE"),this.setOutput(!0)}},As={init:function(){this.setColour(hs),this.appendDummyInput().appendField(k.Msg.HTML_FORM_CONTENT).appendField(new k.FieldDropdown([[k.Msg.HTML_TEXT,"text"],[k.Msg.HTML_EMAIL,"email"],[k.Msg.HTML_NUMBER,"number"],[k.Msg.HTML_PASSWORD,"password"],[k.Msg.HTML_CHECKBOX,"checkbox"],[k.Msg.HTML_RADIOBUTTON,"radiobutton"],[k.Msg.HTML_BUTTON,"button"],[k.Msg.HTML_COLOUR,"colour"],[k.Msg.HTML_DATE,"date"],[k.Msg.HTML_LOCALTIME,"local time"],[k.Msg.HTML_FILE,"file"],[k.Msg.HTML_HIDDEN,"hidden"],[k.Msg.HTML_IMAGE,"image"],[k.Msg.HTML_MONTH,"month"],[k.Msg.HTML_RANGE,"range"],[k.Msg.HTML_RESET,"reset"],[k.Msg.HTML_SEARCH,"search"],[k.Msg.HTML_SUBMIT,"submit"],[k.Msg.HTML_TELEPHONENUMBER,"telephone number"],[k.Msg.HTML_TIME,"time"],[k.Msg.HTML_URL,"url"],[k.Msg.HTML_WEEK,"week"]]),"LEVEL"),this.appendDummyInput().appendField(k.Msg.HTML_NAME).appendField(new k.FieldTextInput("car"),"NAME"),this.appendDummyInput().appendField(k.Msg.HTML_VALUE).appendField(new k.FieldTextInput("go"),"VALUE"),this.appendValueInput("style").appendField(k.Msg.MIXLY_AIP_ATTR).setAlign(k.inputs.Align.RIGHT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},gs={init:function(){this.setColour(hs),this.appendDummyInput().appendField(new k.FieldTextInput("property"),"KEY").appendField(":").appendField(new k.FieldTextInput("value"),"VALUE"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ls={init:function(){this.setColour(hs),this.appendDummyInput().appendField(new k.FieldTextInput("property"),"KEY").appendField(":").appendField(new k.FieldColour("#ff0000"),"RGB_LED_COLOR"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Cs={init:function(){this.setColour(hs),this.appendDummyInput().appendField(k.Msg.HTML_TEXT).appendField(new k.FieldTextInput("text"),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ss=160,Ds={init:function(){this.setColour(Ss),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Tabular Abstraction:"),this.appendDummyInput().appendField(new k.FieldTable(""),"TEXT")}},Ns={init:function(){this.setColour(Ss),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendDummyInput().appendField("Code Block:"),this.appendDummyInput().appendField(new k.FieldMultilineInput(""),"TEXT")}},Ps={init:function(){this.setColour(Ss),this.appendDummyInput().appendField("Code Expression:"),this.appendDummyInput().appendField(new k.FieldMultilineInput(""),"TEXT"),this.setOutput(!0)}},fs={init:function(){this.setColour(Ss),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("VALUE").appendField(""),this.setInputsInline(!1)}},Fs={init:function(){this.setColour(Ss),this.appendDummyInput().appendTitle("Comment:").appendTitle(new k.FieldTextInput(""),"TEXT"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("This comment will be ignored by Python")}},vs={init:function(){this.setColour(Ss),this.appendValueInput("VALUE").appendField(k.Msg.TYPE_CHECK),this.setInputsInline(!1),this.setOutput(!0,"Type")}},Vs={init:function(){this.setColour(Ss),this.itemCount_=1,this.updateShape_(),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setMutator(new k.icons.MutatorIcon(["text_print_multiple_item"],this)),this.setTooltip(k.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=k.Block.obtain(t,"text_print_multiple_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("text_print_multiple_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("PRINT"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("PRINT"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("PRINT"+t);)this.removeInput("PRINT"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField("print");else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("PRINT"+t);0==t&&e.appendField("print")}}},Ys={init:function(){this.setColour(Ss),this.appendDummyInput().appendField("print"),this.appendStatementInput("STACK"),this.setTooltip(""),this.contextMenu=!1}},ys={init:function(){this.setColour(Ss),this.appendDummyInput().appendField("item"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(""),this.contextMenu=!1}},bs={init:function(){this.setColour(Ss),this.itemCount_=1,this.hasReturn_=!1,this.appendDummyInput().appendField(new k.FieldTextInput("str"),"NAME"),this.updateShape_(),this.setMutator(new k.icons.MutatorIcon(["function_call_item"],this)),this.setTooltip("Can be used to call any function")},mutationToDom:function(){var t=document.createElement("mutation");return t.setAttribute("items",this.itemCount_),t.setAttribute("hasReturn",this.hasReturn_?"TRUE":"FALSE"),t},domToMutation:function(t){this.itemCount_=parseInt(t.getAttribute("items"),10),this.hasReturn_="TRUE"===t.getAttribute("hasReturn"),this.updateShape_()},decompose:function(t){var e=k.Block.obtain(t,"function_call_container");e.initSvg(),e.setFieldValue(this.hasStatements_?"TRUE":"FALSE","RETURN");for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("function_call_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},setReturn:function(t){this.unplug(!0,!0),this.setOutput(t),this.setPreviousStatement(!t),this.setNextStatement(!t),this.rendered&&this.render()},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.hasReturn_="TRUE"===t.getFieldValue("RETURN"),this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ARGUMENT"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ARGUMENT"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ARGUMENT"+t);)this.removeInput("ARGUMENT"+t),t++;for(t=0;t<this.itemCount_;t++)this.appendValueInput("ARGUMENT"+t);this.setReturn(this.hasReturn_)}},ks={init:function(){this.setColour(Ss),this.appendDummyInput().appendField("Arguments"),this.appendStatementInput("STACK"),this.appendDummyInput().setAlign(k.inputs.Align.RIGHT).appendField("has return").appendField(new k.FieldCheckbox("TRUE"),"RETURN"),this.setTooltip(""),this.contextMenu=!1}},Xs={init:function(){this.setColour(Ss),this.appendDummyInput().appendField("argument"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(""),this.contextMenu=!1}},Us={init:function(){this.appendValueInput("MODULE").setCheck(null),this.appendValueInput("NAME").setCheck(null).appendField("."),this.setInputsInline(!0),this.setOutput(!0,null),this.setColour(230),this.setTooltip(""),this.setHelpUrl("")}},Gs=170,Bs={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(k.Msg.blockpy_series_create).appendField(new k.FieldTextInput("ser1"),"VAR"),this.appendValueInput("SER").appendField(k.Msg.blockpy_series_via),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.blockpy_series_create_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},xs={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(k.Msg.blockpy_series_create).appendField(new k.FieldTextInput("ser1"),"VAR"),this.appendValueInput("SER").appendField(k.Msg.blockpy_series_via),this.appendValueInput("INDEX").setCheck([String,"List"]).appendField(k.Msg.blockpy_series_set_index),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.blockpy_series_create_index_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},ws={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(k.Msg.blockpy_dataframe_create).appendField(new k.FieldTextInput("df1"),"VAR"),this.appendValueInput("SER").appendField(k.Msg.blockpy_series_via),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.blockpy_dataframe_create_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Hs={init:function(){this.setColour(Gs);var t=[[k.Msg.DATAFRAME_RAW,"index"],[k.Msg.DATAFRAME_COLUMN,"columns"]];this.appendDummyInput("").appendField(k.Msg.blockpy_dataframe_create).appendField(new k.FieldTextInput("df1"),"VAR"),this.appendValueInput("SER").appendField(k.Msg.blockpy_series_via),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"COLUMN_RAW"),this.appendValueInput("INDEX").setCheck([String,"List"]).appendField(k.Msg.blockpy_series_set_index),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.blockpy_dataframe_create_index_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ws={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(k.Msg.blockpy_dataframe_create).appendField(new k.FieldTextInput("df1"),"VAR"),this.appendValueInput("SER").appendField(k.Msg.blockpy_series_via),this.appendValueInput("INDEX_COLUMN").setCheck([String,"List"]).appendField(k.Msg.blockpy_dataframe_set_index_column),this.appendValueInput("INDEX_RAW").setCheck([String,"List"]).appendField(k.Msg.blockpy_dataframe_set_index_raw),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.blockpy_dataframe_create_index_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Ks={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(new k.FieldTextInput("ser1"),"VAR").appendField(" = [").appendField(new k.FieldTextInput("1,2,3"),"TEXT").appendField("]"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_SERIES_CREATE_FROM_TEXT)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},js={init:function(){this.setColour(Gs);var t=[[k.Msg.SERIES_INDEX,"index"],[k.Msg.HTML_VALUE,"value"]];this.appendValueInput("SERIES").setCheck("Series"),this.appendDummyInput("").appendField(k.Msg.SERIES_INDEX_VALUE).appendField(new k.FieldDropdown(t),"INDEX_VALUE"),this.setOutput(!0,"List");var e=this;this.setTooltip((function(){var t=e.getFieldValue("INDEX_VALUE");return{index:k.Msg.SERIES_INDEX_TOOLTIP,value:k.Msg.HTML_VALUE_TOOLTIP}[t]}))}},qs={init:function(){this.setColour(Gs),this.setOutput(!0),this.appendValueInput("SER").setCheck("Series"),this.appendValueInput("AT").setCheck(Number).appendField(k.Msg.LANG_LISTS_GET_INDEX1),this.appendDummyInput("").appendField(k.Msg.LANG_LISTS_GET_INDEX2),this.setInputsInline(!0),this.setTooltip(k.Msg.TUPLE_GET_INDEX_TOOLTIP)}},Qs={init:function(){this.setColour(Gs),this.appendValueInput("SER").setCheck("Series").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_PLOT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Js={init:function(){this.setColour(Gs);var t=[[k.Msg.blockpy_PYLAB_PLOT_LINE_SOLID,"-"],[k.Msg.blockpy_PYLAB_PLOT_LINE_DOTTED,"--"],[k.Msg.blockpy_PYLAB_PLOT_LINE_CHAIN,"-."],[k.Msg.blockpy_PYLAB_PLOT_LINE_POINT_DOTTED,":"],[k.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,""]],e=[[k.Msg.COLOUR_RGB_BLUE,"b"],[k.Msg.COLOUR_RGB_GREEN,"g"],[k.Msg.COLOUR_RGB_RED,"r"],[k.Msg.COLOUR_CYAN,"c"],[k.Msg.COLOUR_MAGENTA,"m"],[k.Msg.COLOUR_YELLOW,"y"],[k.Msg.COLOUR_BLACK,"k"],[k.Msg.COLOUR_WHITE,"w"]],i=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_DOWN,"v"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_UP,"^"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_LEFT,"<"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_RIGHT,">"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_UP,"1"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_DOWN,"2"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_LEFT,"3"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_RIGHT,"4"],[k.Msg.blockpy_PYLAB_PLOT_DOT_SQUARE,"s"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PENTAGON,"p"],[k.Msg.blockpy_PYLAB_PLOT_DOT_STAR,"*"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_VERTICAL,"h"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_HORIZONTAL,"H"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PLUS,"+"],[k.Msg.blockpy_PYLAB_PLOT_DOT_CROSS,"x"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND,"D"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND_SMALL,"d"],[k.Msg.blockpy_PYLAB_PLOT_DOT_VERTICAL,"|"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HORIZONTAL,"_"]];this.appendValueInput("SER").setCheck("Series").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_PLOT),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(i),"DOT"),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_LINE).appendField(new k.FieldDropdown(t),"LINE"),this.appendDummyInput("").appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldDropdown(e),"COLOR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zs={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_SHOW),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zs={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.mixpy_PL_AXES),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$s={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_LEGEND),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},to={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_TITLE),this.appendValueInput("TITLE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},eo={init:function(){this.setColour(Gs);var t=[[k.Msg.PYLAB_LABEL_X,"x"],[k.Msg.PYLAB_LABEL_Y,"y"]];this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_SET_LABEL).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("LABEL").appendField(k.Msg.blockpy_PYLAB_LABEL).setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},io={init:function(){this.setColour(Gs),this.appendValueInput("FROM").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.MIXLY_SPLITBYDOU).appendField(k.Msg.MIXPY_DATA_ARRAY_CREATE_FROM),this.appendValueInput("TO").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.MIXPY_DATA_ARRAY_CREATE_TO),this.appendValueInput("STEP").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField(k.Msg.MIXLY_STEP),this.setInputsInline(!0),this.setOutput(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},no={init:function(){this.setColour(Gs);var t=[[k.Msg.mixpy_PYLAB_PLOT_BAR_PLOT,"plot"],[k.Msg.mixpy_PYLAB_PLOT_BAR_BAR,"bar"]];this.appendDummyInput().appendField(k.Msg.MIXLY_DISPLAY_DRAW).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{plot:k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP,bar:k.Msg.mixpy_PYLAB_PLOT_BAR_EASY_TOOLTIP}[t]}))}},so={init:function(){this.setColour(Gs);var t=[[k.Msg.COLOUR_RGB_BLUE,"b"],[k.Msg.COLOUR_RGB_GREEN,"g"],[k.Msg.COLOUR_RGB_RED,"r"],[k.Msg.COLOUR_CYAN,"c"],[k.Msg.COLOUR_MAGENTA,"m"],[k.Msg.COLOUR_YELLOW,"y"],[k.Msg.COLOUR_BLACK,"k"],[k.Msg.COLOUR_WHITE,"w"]],e=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_DOWN,"v"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_UP,"^"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_LEFT,"<"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_RIGHT,">"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_UP,"1"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_DOWN,"2"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_LEFT,"3"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_RIGHT,"4"],[k.Msg.blockpy_PYLAB_PLOT_DOT_SQUARE,"s"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PENTAGON,"p"],[k.Msg.blockpy_PYLAB_PLOT_DOT_STAR,"*"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_VERTICAL,"h"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_HORIZONTAL,"H"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PLUS,"+"],[k.Msg.blockpy_PYLAB_PLOT_DOT_CROSS,"x"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND,"D"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND_SMALL,"d"],[k.Msg.blockpy_PYLAB_PLOT_DOT_VERTICAL,"|"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HORIZONTAL,"_"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_SCATTER).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendValueInput("S").appendField(k.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(e),"DOT"),this.appendDummyInput("").appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldDropdown(t),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("")}},oo={init:function(){this.setColour(Gs);var t=[[k.Msg.blockpy_PYLAB_PLOT_LINE_SOLID,"-"],[k.Msg.blockpy_PYLAB_PLOT_LINE_DOTTED,"--"],[k.Msg.blockpy_PYLAB_PLOT_LINE_CHAIN,"-."],[k.Msg.blockpy_PYLAB_PLOT_LINE_POINT_DOTTED,":"],[k.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,""]],e=[[k.Msg.COLOUR_RGB_BLUE,"b"],[k.Msg.COLOUR_RGB_GREEN,"g"],[k.Msg.COLOUR_RGB_RED,"r"],[k.Msg.COLOUR_CYAN,"c"],[k.Msg.COLOUR_MAGENTA,"m"],[k.Msg.COLOUR_YELLOW,"y"],[k.Msg.COLOUR_BLACK,"k"],[k.Msg.COLOUR_WHITE,"w"]],i=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_DOWN,"v"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_UP,"^"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_LEFT,"<"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIANGLE_RIGHT,">"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_UP,"1"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_DOWN,"2"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_LEFT,"3"],[k.Msg.blockpy_PYLAB_PLOT_DOT_TRIMARKER_RIGHT,"4"],[k.Msg.blockpy_PYLAB_PLOT_DOT_SQUARE,"s"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PENTAGON,"p"],[k.Msg.blockpy_PYLAB_PLOT_DOT_STAR,"*"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_VERTICAL,"h"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HEXAGON_HORIZONTAL,"H"],[k.Msg.blockpy_PYLAB_PLOT_DOT_PLUS,"+"],[k.Msg.blockpy_PYLAB_PLOT_DOT_CROSS,"x"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND,"D"],[k.Msg.blockpy_PYLAB_PLOT_DOT_DIAMOND_SMALL,"d"],[k.Msg.blockpy_PYLAB_PLOT_DOT_VERTICAL,"|"],[k.Msg.blockpy_PYLAB_PLOT_DOT_HORIZONTAL,"_"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PLOT_XY).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(i),"DOT"),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_LINE).appendField(new k.FieldDropdown(t),"LINE"),this.appendDummyInput("").appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldDropdown(e),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},_o={init:function(){this.setColour(Gs);var t=[[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_CENTER,"center"],[k.Msg.AILGN_EDGE,"edge"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_BAR).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendValueInput("WIDTH").setCheck(Number).appendField(k.Msg.MIXLY_WIDTH),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_BAR_ALIGN).appendField(new k.FieldDropdown(t),"ALIGN"),this.appendDummyInput().appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldColour("#0000ff"),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},po={init:function(){this.setColour(Gs);var t=[[k.Msg.mixpy_PL_PIE_SHADOW_N,"False"],[k.Msg.mixpy_PL_PIE_SHADOW_Y,"True"]],e=[[k.Msg.mixpy_PL_PIE_SHADOW_N,"None"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_Z,"%.0f%%"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_O,"%.1f%%"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_T,"%.2f%%"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PIE).appendField(k.Msg.COLOUR_BLEND_RATIO),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.appendValueInput("EXPLODE").appendField(k.Msg.mixpy_PYLAB_PIE_EXPLODE),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_PIE_AUTOPCT).appendField(new k.FieldDropdown(e),"autopct"),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_PIE_SHADOW).appendField(new k.FieldDropdown(t),"SHADOW"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},uo={init:function(){this.setColour(Gs),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_HIST).appendField(k.Msg.MIXLY_SD_DATA),this.appendValueInput("B").appendField(k.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},ao={init:function(){this.setColour(Gs);var t=[[k.Msg.PYLAB_LABEL_X,"x"],[k.Msg.PYLAB_LABEL_Y,"y"]];this.appendDummyInput().appendField(k.Msg.MIXLY_SETTING).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_TICKS).appendField(k.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_TICKS_TOOLTIP)}},lo={init:function(){var t=[["sin","sin"],["cos","cos"],["tan","tan"],["arcsin","arcsin"],["arccos","arccos"],["arctan","arctan"],[k.Msg.LANG_MATH_TO_ROUND,"round"],[k.Msg.LANG_MATH_TO_CEIL,"ceil"],[k.Msg.LANG_MATH_TO_FLOOR,"floor"]];this.setColour(Gs),this.setOutput(!0),this.setInputsInline(!0),this.appendDummyInput().appendField(k.Msg.mixpy_NUMPY_TRIG),this.appendValueInput("NUM").setCheck(Number).appendField(new k.FieldDropdown(t),"OP"),this.setTooltip(k.Msg.mixpy_NUMPY_TRIG_TOOLTIP)}},ro={init:function(){this.setColour(Gs),this.appendValueInput("VET").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT).appendField(k.Msg.mixpy_SUBPLOT_VERTICLE),this.appendValueInput("HOR").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT_HORIZEN),this.appendValueInput("NUM").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},To={init:function(){this.setColour(Gs),this.appendValueInput("FILENAME").appendField(k.Msg.MIXPY_PANDAS_READ_CSV),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.mixpy_PANDAS_READCSV_HEADER_Y,"0"],[k.Msg.mixpy_PANDAS_READCSV_HEADER_N,"None"]]),"MODE"),this.appendDummyInput().appendField(k.Msg.mixpy_PANDAS_READCSV_TITLE),this.setOutput(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.mixpy_PANDAS_READCSV_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},Io={init:function(){this.setColour(Gs),this.appendValueInput("DICT").setCheck("Dict"),this.appendValueInput("KEY").appendField(k.Msg.mixpy_DATAFRAME_GET),this.appendDummyInput("").appendField(k.Msg.mixpy_DATAFRAME_GET_INDEX).appendField(new k.FieldDropdown([[k.Msg.DATAFRAME_COLUMN,"column"],[k.Msg.DATAFRAME_RAW,"raw"]]),"MODE"),this.setOutput(!0),this.setTooltip(k.Msg.mixpy_DATAFRAME_GET_TOOLTIP)}},ho={init:function(){this.setColour(Gs),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.mixpy_PL_SAVEFIG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.mixpy_PL_SAVEFIG_TOOLTIP)}},Eo={init:function(){this.setColour(Gs);var t=[[k.Msg.TEXT_TRIM_LEFT,"right"],[k.Msg.mixpy_PL_TEXT_CENTER,"center"],[k.Msg.TEXT_TRIM_RIGHT,"left"]],e=[[k.Msg.mixpy_PL_TEXT_TOP,"bottom"],[k.Msg.mixpy_PL_TEXT_CENTER,"center"],[k.Msg.mixpy_PL_TEXT_BOTTOM,"top"]];this.appendValueInput("VET").setCheck(Number).appendField(k.Msg.MIXLY_SETTING).appendField(k.Msg.mixpy_PL_TEXT_X),this.appendValueInput("HOR").setCheck(Number).appendField(k.Msg.mixpy_PL_TEXT_Y),this.appendValueInput("NUM").setCheck(Number).appendField(k.Msg.mixpy_PL_TEXT_TAG),this.appendDummyInput("").appendField(k.Msg.mixpy_PL_TEXT_HOR).appendField(new k.FieldDropdown(t),"HALIGN"),this.appendDummyInput("").appendField(k.Msg.mixpy_PL_TEXT_VER).appendField(new k.FieldDropdown(e),"VALIGN"),this.appendValueInput("FONTNUM").setCheck(Number).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PL_TEXT_TOOLTIP)}},Oo={init:function(){this.setColour(Gs),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TOARRAY),this.setOutput(!0,"List"),this.setTooltip(k.Msg.MIXLY_PYTHON_TOOLTIP_TOARRAY)}},Mo={init:function(){this.setColour(Gs),this.appendValueInput("SER").setCheck("Series").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_PLOT),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},co={init:function(){this.setColour(Gs);var t=[[k.Msg.blockpy_PYLAB_PLOT_LINE_SOLID,"-"],[k.Msg.blockpy_PYLAB_PLOT_LINE_DOTTED,"--"],[k.Msg.blockpy_PYLAB_PLOT_LINE_CHAIN,"-."],[k.Msg.blockpy_PYLAB_PLOT_LINE_POINT_DOTTED,":"],[k.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,""]],e=[[k.Msg.COLOUR_RGB_BLUE,"b"],[k.Msg.COLOUR_RGB_GREEN,"g"],[k.Msg.COLOUR_RGB_RED,"r"],[k.Msg.COLOUR_CYAN,"c"],[k.Msg.COLOUR_MAGENTA,"m"],[k.Msg.COLOUR_YELLOW,"y"],[k.Msg.COLOUR_BLACK,"k"],[k.Msg.COLOUR_WHITE,"w"]],i=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"]];this.appendValueInput("SER").setCheck("Series").appendField(k.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_PLOT),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(i),"DOT"),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_LINE).appendField(new k.FieldDropdown(t),"LINE"),this.appendDummyInput("").appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldDropdown(e),"COLOR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ro={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_SHOW),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},mo={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.mixpy_PL_AXES),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Ao={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_LEGEND),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},go={init:function(){this.setColour(Gs),this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_TITLE),this.appendValueInput("TITLE").setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Lo={init:function(){this.setColour(Gs);var t=[[k.Msg.PYLAB_LABEL_X,"x"],[k.Msg.PYLAB_LABEL_Y,"y"]];this.appendDummyInput().appendField(k.Msg.blockpy_PYLAB_SET_LABEL).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("LABEL").appendField(k.Msg.blockpy_PYLAB_LABEL).setCheck(String),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Co={init:function(){this.setColour(Gs);var t=[[k.Msg.mixpy_PYLAB_PLOT_BAR_PLOT,"plot"],[k.Msg.mixpy_PYLAB_PLOT_BAR_BAR,"bar"]];this.appendDummyInput().appendField(k.Msg.MIXLY_DISPLAY_DRAW).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{plot:k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP,bar:k.Msg.mixpy_PYLAB_PLOT_BAR_EASY_TOOLTIP}[t]}))}},So={init:function(){this.setColour(Gs);var t=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_SCATTER).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendValueInput("S").appendField(k.Msg.MIXLY_MICROBIT_JS_NUMBER),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(t),"DOT"),this.appendDummyInput().appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldColour("#0000ff"),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("")}},Do={init:function(){this.setColour(Gs);var t=[[k.Msg.blockpy_PYLAB_PLOT_LINE_SOLID,"-"],[k.Msg.blockpy_PYLAB_PLOT_LINE_DOTTED,"--"],[k.Msg.blockpy_PYLAB_PLOT_LINE_CHAIN,"-."],[k.Msg.blockpy_PYLAB_PLOT_LINE_POINT_DOTTED,":"],[k.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE,""]],e=[[k.Msg.COLOUR_RGB_BLUE,"b"],[k.Msg.COLOUR_RGB_GREEN,"g"],[k.Msg.COLOUR_RGB_RED,"r"],[k.Msg.COLOUR_CYAN,"c"],[k.Msg.COLOUR_MAGENTA,"m"],[k.Msg.COLOUR_YELLOW,"y"],[k.Msg.COLOUR_BLACK,"k"],[k.Msg.COLOUR_WHITE,"w"]],i=[[k.Msg.blockpy_PYLAB_PLOT_DOT_CIRCULAR,"."],[k.Msg.blockpy_PYLAB_PLOT_DOT_PIXEL,","],[k.Msg.blockpy_PYLAB_PLOT_DOT_LARGE_DOT,"o"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PLOT_XY).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_DOT).appendField(new k.FieldDropdown(i),"DOT"),this.appendDummyInput("").appendField(k.Msg.blockpy_PYLAB_PLOT_LINE).appendField(new k.FieldDropdown(t),"LINE"),this.appendDummyInput("").appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldDropdown(e),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},No={init:function(){this.setColour(Gs);var t=[[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_CENTER,"center"],[k.Msg.AILGN_EDGE,"edge"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_BAR).appendField(k.Msg.mixpy_PYLAB_PLOT_X),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_PLOT_Y),this.appendValueInput("WIDTH").setCheck(Number).appendField(k.Msg.MIXLY_WIDTH),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_BAR_ALIGN).appendField(new k.FieldDropdown(t),"ALIGN"),this.appendDummyInput().appendField(k.Msg.HTML_COLOUR).appendField(new k.FieldColour("#0000ff"),"COLOR"),this.appendValueInput("TAG").setCheck(String).appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},Po={init:function(){this.setColour(Gs);var t=[[k.Msg.mixpy_PL_PIE_SHADOW_N,"False"],[k.Msg.mixpy_PL_PIE_SHADOW_Y,"True"]],e=[[k.Msg.mixpy_PL_PIE_SHADOW_N,"None"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_Z,"%.0f%%"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_O,"%.1f%%"],[k.Msg.mixpy_PYLAB_PIE_AUTOPCT_T,"%.2f%%"]];this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_PIE).appendField(k.Msg.COLOUR_BLEND_RATIO),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.appendValueInput("EXPLODE").appendField(k.Msg.mixpy_PYLAB_PIE_EXPLODE),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_PIE_AUTOPCT).appendField(new k.FieldDropdown(e),"autopct"),this.appendDummyInput("").appendField(k.Msg.mixpy_PYLAB_PIE_SHADOW).appendField(new k.FieldDropdown(t),"SHADOW"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_PLOT_XY_TOOLTIP)}},fo={init:function(){this.setColour(Gs),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_HIST).appendField(k.Msg.MIXLY_SD_DATA),this.appendValueInput("B").appendField(k.Msg.MIXLY_MICROBIT_JS_MONITOR_SCROLL_INTERVAL),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Fo={init:function(){this.setColour(Gs);var t=[[k.Msg.PYLAB_LABEL_X,"x"],[k.Msg.PYLAB_LABEL_Y,"y"]];this.appendDummyInput().appendField(k.Msg.MIXLY_SETTING).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("A").appendField(k.Msg.mixpy_PYLAB_TICKS).appendField(k.Msg.MIXLY_MICROBIT_JS_I2C_VALUE),this.appendValueInput("B").appendField(k.Msg.mixpy_PYLAB_TICKS_TAG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PYLAB_TICKS_TOOLTIP)}},vo={init:function(){this.setColour(Gs),this.appendValueInput("VET").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT).appendField(k.Msg.mixpy_SUBPLOT_VERTICLE),this.appendValueInput("HOR").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT_HORIZEN),this.appendValueInput("NUM").setCheck(Number).appendField(k.Msg.mixpy_SUBPLOT_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_CONTROLS_RANGE_TOOLTIP)}},Vo={init:function(){this.setColour(Gs),this.appendDummyInput("").appendField(k.Msg.mixpy_PL_SAVEFIG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.mixpy_PL_SAVEFIG_TOOLTIP)}},Yo={init:function(){this.setColour(Gs);var t=[[k.Msg.TEXT_TRIM_LEFT,"right"],[k.Msg.mixpy_PL_TEXT_CENTER,"center"],[k.Msg.TEXT_TRIM_RIGHT,"left"]],e=[[k.Msg.mixpy_PL_TEXT_TOP,"bottom"],[k.Msg.mixpy_PL_TEXT_CENTER,"center"],[k.Msg.mixpy_PL_TEXT_BOTTOM,"top"]];this.appendValueInput("VET").setCheck(Number).appendField(k.Msg.MIXLY_SETTING).appendField(k.Msg.mixpy_PL_TEXT_X),this.appendValueInput("HOR").setCheck(Number).appendField(k.Msg.mixpy_PL_TEXT_Y),this.appendValueInput("NUM").setCheck(Number).appendField(k.Msg.mixpy_PL_TEXT_TAG),this.appendDummyInput("").appendField(k.Msg.mixpy_PL_TEXT_HOR).appendField(new k.FieldDropdown(t),"HALIGN"),this.appendDummyInput("").appendField(k.Msg.mixpy_PL_TEXT_VER).appendField(new k.FieldDropdown(e),"VALIGN"),this.appendValueInput("FONTNUM").setCheck(Number).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.mixpy_PL_TEXT_TOOLTIP)}},yo=20,bo={init:function(){this.setColour(yo),this.appendValueInput("VAR").appendField(k.Msg.blockpy_inout_raw_input).setCheck(String),this.setOutput(!0),this.setTooltip(k.Msg.INOUT_input_TOOLTIP)}},ko={init:function(){this.setColour(yo),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SERIAL_PRINTLN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(k.Msg.BLOCKPY_PRINT_TOOLTIP)}},Xo={init:function(){this.setColour(yo),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SERIAL_PRINT),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setTooltip(k.Msg.TEXT_PRINT_TOOLTIP)}},Uo={init:function(){this.setColour(yo),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_SERIAL_PRINT),this.appendValueInput("END").appendField(k.Msg.MIXLY_ENDSWITH),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_PYTHON_INOUT_PRINT_END_TOOLTIP)}},Go={init:function(){var t=[[k.Msg.LANG_MATH_STRING,"str"],[k.Msg.LANG_MATH_INT,"int"],[k.Msg.LANG_MATH_FLOAT,"float"]];this.setColour(yo),this.appendDummyInput("").appendField(k.Msg.MIXLY_MICROBIT_PY_STORAGE_GET).appendField(new k.FieldDropdown(t),"DIR"),this.appendValueInput("VAR").appendField(k.Msg.PROCEDURES_MUTATORCONTAINER_TITLE).setCheck(String),this.setInputsInline(!0),this.setOutput(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{str:k.Msg.MIXLY_MIXPY_INOUT_STR_INPUT_TOOLTIP,int:k.Msg.MIXLY_MIXPY_INOUT_INT_INPUT_TOOLTIP,float:k.Msg.MIXLY_MIXPY_INOUT_FLOAT_INPUT_TOOLTIP}[t]}))}},Bo={init:function(){this.setColour(yo),this.itemCount_=2,this.updateShape_(),this.setPreviousStatement(!1),this.setNextStatement(!1),this.setInputsInline(!0),this.setMutator(new k.icons.MutatorIcon(["inout_print_item"],this)),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_MIXPY_INOUT_PRINT_MANY_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("inout_print_container");e.initSvg();for(var i=e.getInput("STACK").connection,n=0;n<this.itemCount_;n++){var s=t.newBlock("inout_print_item");s.initSvg(),i.connect(s.previousConnection),i=s.nextConnection}return e},compose:function(t){for(var e=t.getInputTargetBlock("STACK"),i=[],n=0;e;)i[n]=e.valueConnection_,e=e.nextConnection&&e.nextConnection.targetBlock(),n++;this.itemCount_=n,this.updateShape_();for(n=0;n<this.itemCount_;n++)i[n]&&this.getInput("ADD"+n).connection.connect(i[n])},saveConnections:function(t){for(var e=t.getInputTargetBlock("STACK"),i=0;e;){var n=this.getInput("ADD"+i);e.valueConnection_=n&&n.connection.targetConnection,i++,e=e.nextConnection&&e.nextConnection.targetBlock()}},updateShape_:function(){if(this.getInput("EMPTY"))this.removeInput("EMPTY");else for(var t=0;this.getInput("ADD"+t);)this.removeInput("ADD"+t),t++;if(0==this.itemCount_)this.appendDummyInput("EMPTY").appendField(k.Msg.MIXLY_MIXPY_INOUT_PRINT_EMPTY);else for(t=0;t<this.itemCount_;t++){var e=this.appendValueInput("ADD"+t);0==t&&e.appendField(k.Msg.MIXLY_SERIAL_PRINTLN)}}},xo={init:function(){this.setColour(yo),this.appendDummyInput().appendField(k.Msg.MIXLY_SERIAL_PRINTLN),this.appendStatementInput("STACK"),this.setTooltip(k.Msg.MIXLY_MIXPY_INOUT_PRINT_MANY_CONTAINER_TOOLTIP),this.contextMenu=!1}},wo={init:function(){this.setColour(yo),this.appendDummyInput().appendField(k.Msg.LISTS_CREATE_WITH_ITEM_TITLE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_MIXPY_INOUT_PRINT_MANY_ITEM_TOOLTIP),this.contextMenu=!1}},Ho=120,Wo={init:function(){this.setColour(Ho),this.appendValueInput("DELAY_TIME",Number).appendField(k.Msg.MIXLY_DELAY+"("+k.Msg.MIXLY_MILLIS+")").setCheck(Number),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_DELAY)}},Ko={init:function(){this.setColour(Ho),this.appendDummyInput().appendField(k.Msg.blockpy_time_time),this.setOutput(!0,Number),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_MILLIS)}},jo={init:function(){this.setColour(Ho),this.appendDummyInput("").appendField(k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_ALL,"all"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_YEAR,"0"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_MONTH,"1"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_DATE,"2"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_HOUR,"3"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_MINUTE,"4"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_SECOND,"5"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_INWEEK,"6"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_INYEAR,"7"],[k.Msg.MIXLY_SYSTEM_TIME_LOCALTIME_DST,"8"]]),"op"),this.setOutput(!0),this.setInputsInline(!0)}},qo={init:function(){this.setColour(Ho),this.appendValueInput("STATUS_CODE",Number).appendField(k.Msg.MIXLY_MICROBIT_Panic_with_status_code).setCheck(Number),this.setPreviousStatement(!0,null),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_DELAY)}},Qo={init:function(){this.setColour(Ho),this.appendDummyInput().appendField(k.Msg.MIXLY_MICROBIT_Reset_micro),this.setPreviousStatement(!0)}},Jo={init:function(){this.setColour(Ho),this.appendValueInput("TIME").setCheck(Number).setAlign(k.inputs.Align.RIGHT).appendField("MsTimer2").appendField(k.Msg.MIXLY_MSTIMER2_EVERY),this.appendDummyInput().appendField("ms"),this.appendStatementInput("DO").appendField(k.Msg.MIXLY_MSTIMER2_DO),this.setPreviousStatement(!0),this.setNextStatement(!0)}},Zo={init:function(){this.setColour(Ho),this.appendDummyInput().appendField("MsTimer2").appendField(k.Msg.MIXLY_MSTIMER2_START),this.setPreviousStatement(!0),this.setNextStatement(!0)}},zo={init:function(){this.setColour(Ho),this.appendDummyInput().appendField("MsTimer2").appendField(k.Msg.MIXLY_STOP),this.setPreviousStatement(!0),this.setNextStatement(!0)}},$o={init:function(){this.setColour(Ho),this.appendValueInput("DELAY_TIME",Number).appendField(k.Msg.MIXLY_DELAY).setCheck(Number),this.appendDummyInput().appendField(k.Msg.MIXLY_SECOND),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_CONTROL_DELAY)}},t_=180,e_={init:function(){this.setColour(t_),this.appendDummyInput("").appendField(k.Msg.blockpy_turtle_create).appendField(new k.FieldTextInput("tina"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.blockpy_turtle_create_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},i_={init:function(){this.setColour(t_),this.appendDummyInput().appendField(k.Msg.blockpy_TURTLE_DONE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},n_={init:function(){this.setColour(t_),this.appendDummyInput().appendField(k.Msg.MIXLY_PYTHON_TURTLE_EXITONCLICK),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},s_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_forward,"forward"],[k.Msg.blockpy_backward,"backward"]];this.setColour(t_),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_MICROBIT_JS_MOVE_BY).appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.MIXLY_MICROBIT_JS_MOVE_BY_num),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{forward:k.Msg.MIXLY_TOOLTIP_TURTEL_FORWARD,backward:k.Msg.MIXLY_TOOLTIP_TURTEL_BACKWARD}[t]}))}},o_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_left,"left"],[k.Msg.blockpy_right,"right"]];this.setColour(t_),this.appendValueInput("VAR").appendField(k.Msg.blockpy_turtle_rotate).appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.MIXLY_MICROBIT_JS_BY_ANGLE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{left:k.Msg.MIXLY_TOOLTIP_TURTEL_LEFT,right:k.Msg.MIXLY_TOOLTIP_TURTEL_RIGHT}[t]}))}},__={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.blockpy_setheading),this.appendDummyInput().appendField(k.Msg.blockpy_setheading_degree),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},p_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.MIXLY_TURTLE_SCREEN_DELAY),this.appendDummyInput().appendField(k.Msg.MIXLY_MILLIS),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TURTEL_SCREEN_DELAY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},u_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.blockpy_turtle_goto),this.appendValueInput("val").setCheck(Number).appendField(k.Msg.blockpy_turtle_goto_y),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_goto_position),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},a_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.PYLAB_LABEL_X,"x"],[k.Msg.PYLAB_LABEL_Y,"y"]];this.setColour(t_),this.appendValueInput("VAR").appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.MIXLY_MIXPY_TURTLE_SETXY),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_MIXPY_TURTLE_SETXY_TOOLTIP)}},l_={init:function(){this.setColour(t_);var t=[[k.Msg.TURTLE_POS,"pos"],[k.Msg.TURTLE_SHAPE,"shape"],[k.Msg.TURTLE_HEADING,"heading"],[k.Msg.MIXLY_MIXPY_TURTLE_WIDTH,"width"],[k.Msg.MIXLY_TURTEL_GET_SHAPESIZE,"shapesize"],[k.Msg.MIXLY_SPEED,"speed"]];this.appendValueInput("TUR").setCheck("Turtle"),this.appendDummyInput("").appendField(k.Msg.TURTLE_POS_SHAPE).appendField(new k.FieldDropdown(t),"DIR");var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{pos:k.Msg.MIXLY_TOOLTIP_TURTEL_POS,shape:k.Msg.MIXLY_TOOLTIP_TURTEL_SHAPE,heading:k.Msg.MIXLY_TOOLTIP_TURTEL_HEADING,width:k.Msg.MIXLY_TOOLTIP_TURTEL_WIDTH,speed:k.Msg.MIXLY_TOOLTIP_TURTEL_GET_SPEED,shapesize:k.Msg.MIXLY_TURTEL_GET_SHAPESIZE_TOOLTIP}[t]})),this.setOutput(!0),this.setInputsInline(!0)}},r_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.MIXLY_LCD_STAT_CLEAR,"clear"],[k.Msg.blockpy_turtle_reset,"reset"],[k.Msg.blockpy_turtle_home,"home"]];this.setColour(t_),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{clear:k.Msg.MIXLY_TOOLTIP_TURTEL_CLEAR,reset:k.Msg.MIXLY_TOOLTIP_TURTEL_RESET,home:k.Msg.MIXLY_TOOLTIP_TURTEL_HOME}[t]}))}},T_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_turtle_penup,"penup"],[k.Msg.blockpy_turtle_pendown,"pendown"]];this.setColour(t_),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{penup:k.Msg.MIXLY_TOOLTIP_TURTEL_PENUP,pendown:k.Msg.MIXLY_TOOLTIP_TURTEL_PENDOWN}[t]}))}},d_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_turtle_beginfill,"begin"],[k.Msg.blockpy_turtle_endfill,"end"]];this.setColour(t_),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{begin:k.Msg.MIXLY_TOOLTIP_TURTEL_BEGINFILL,end:k.Msg.MIXLY_TOOLTIP_TURTEL_ENDFILL}[t]}))}},I_={init:function(){this.appendDummyInput("").appendField(new k.FieldTextInput("tina"),"TUR");var t=[[k.Msg.blockpy_turtle_size,"pensize"],[k.Msg.MIXLY_SPEED,"speed"]];this.setColour(t_),this.appendValueInput("VAR").appendField(k.Msg.blockpy_turtle_set).appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.blockpy_turtle_set_num),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{pensize:k.Msg.MIXLY_TOOLTIP_TURTEL_SIZE,speed:k.Msg.MIXLY_TOOLTIP_TURTEL_SPEED}[t]}))}},h_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.blockpy_turtle_set_size),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TURTEL_SIZE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},E_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.blockpy_turtle_set_speed),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TURTEL_SPEED),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},O_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_turtle_circle,"circle"],[k.Msg.blockpy_turtle_dot,"dot"]];this.setColour(t_),this.appendValueInput("VAR").appendField(k.Msg.blockpy_turtle_draw).appendField(new k.FieldDropdown(t),"DIR").appendField(k.Msg.blockpy_turtle_radius),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{circle:k.Msg.MIXLY_TOOLTIP_TURTEL_CIRCLE,dot:k.Msg.MIXLY_TOOLTIP_TURTEL_DOT}[t]}))}},M_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_MIXPY_TURTLE_DRAW_CIRCLE).appendField(k.Msg.blockpy_turtle_radius),this.appendValueInput("data").setCheck(Number).appendField(k.Msg.blockpy_turtle_angle),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_TURTEL_CIRCLE)}},c_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_turtle_hide,"hideturtle"],[k.Msg.blockpy_turtle_show,"showturtle"]];this.setColour(t_),this.appendDummyInput("").appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0);var e=this;this.setTooltip((function(){var t=e.getFieldValue("DIR");return{hideturtle:k.Msg.MIXLY_TOOLTIP_TURTEL_HIDE,showturtle:k.Msg.MIXLY_TOOLTIP_TURTEL_SHOW}[t]}))}},R_={init:function(){this.setColour(t_),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_bgcolor).appendField(new k.FieldColour("#ff0000"),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},m_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_pencolor).appendField(new k.FieldColour("#ff0000"),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},A_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_fillcolor).appendField(new k.FieldColour("#ff0000"),"FIELDNAME"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},g_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendDummyInput("").appendField(k.Msg.TURTLE_CLONE),this.setTooltip(k.Msg.TURTLE_CLONE_TOOLTIP),this.setOutput(!0)}},L_={init:function(){this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_bgcolor),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},C_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_pencolor),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},S_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_fillcolor),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},D_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_pencolor).appendField(new k.FieldColour("#ff0000"),"FIELDNAME"),this.appendDummyInput().appendField(k.Msg.blockpy_turtle_fillcolor).appendField(new k.FieldColour("#ff0000"),"FIELDNAME2"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},N_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR1").setCheck(String).appendField(k.Msg.blockpy_turtle_pencolor),this.appendValueInput("VAR2").setCheck(String).appendField(k.Msg.blockpy_turtle_fillcolor),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},P_={init:function(){this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_bgcolor_hex),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},f_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_pencolor_hex),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},F_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_fillcolor_hex),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},v_={init:function(){this.appendValueInput("TUR").setCheck("Turtle");var t=[[k.Msg.blockpy_turtle_shape_arrow,"arrow"],[k.Msg.blockpy_turtle_shape_turtle,"turtle"],[k.Msg.blockpy_turtle_shape_circle,"circle"],[k.Msg.blockpy_turtle_shape_square,"square"],[k.Msg.blockpy_turtle_shape_triangle,"triangle"],[k.Msg.blockpy_turtle_shape_classic,"classic"]];this.setColour(t_),this.appendDummyInput("").appendField(k.Msg.blockpy_turtle_shape).appendField(new k.FieldDropdown(t),"DIR"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TURTLE_SHAPE_TOOLTIP)}},V_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTEL_SHAPESIZE),this.appendValueInput("WID").setCheck(Number).appendField(k.Msg.MIXLY_TURTEL_SHAPESIZE_WID),this.appendValueInput("LEN").setCheck(Number).appendField(k.Msg.MIXLY_TURTEL_SHAPESIZE_LEN),this.appendValueInput("OUTLINE").setCheck(Number).appendField(k.Msg.MIXLY_TURTEL_SHAPESIZE_OUTLINE),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TOOLTIP_SHAPESIZE)}},Y_={init:function(){this.appendDummyInput("").appendField(k.Msg.MIXLY_MIXPY_TURTLE_NUMINPUT),this.setColour(t_),this.appendValueInput("TITLE").setCheck(String).appendField(k.Msg.MIXLY_MIXPY_TURTLE_TEXTINPUT_TITLE),this.appendValueInput("PROMPT").setCheck(String).appendField(k.Msg.MIXLY_MIXPY_TURTLE_TEXTINPUT_PROMPT),this.appendValueInput("DEFAULT").setCheck(Number).appendField(k.Msg.DICTS_DEFAULT_VALUE),this.appendValueInput("MIN").setCheck(Number).appendField(k.Msg.MATH_ONLIST_OPERATOR_MIN),this.appendValueInput("MAX").setCheck(Number).appendField(k.Msg.MATH_ONLIST_OPERATOR_MAX),this.setInputsInline(!0),this.setOutput(!0,Number),this.setTooltip(k.Msg.TURTLE_NUMINPUT_TOOLTIP)}},y_={init:function(){this.appendDummyInput("").appendField(k.Msg.MIXLY_MIXPY_TURTLE_TEXTINPUT),this.setColour(t_),this.appendValueInput("TITLE").setCheck(String).appendField(k.Msg.MIXLY_MIXPY_TURTLE_TEXTINPUT_TITLE),this.appendValueInput("PROMPT").setCheck(String).appendField(k.Msg.MIXLY_MIXPY_TURTLE_TEXTINPUT_PROMPT),this.setInputsInline(!0),this.setOutput(!0,String),this.setTooltip(k.Msg.TURTLE_TEXTINPUT_TOOLTIP)}},b_={init:function(){this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_write),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TURTLE_WRITE_TOOLTIP)}},k_={init:function(){var t=[[k.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"],[k.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"]],e=[[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_LEFT,"left"],[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_CENTER,"center"],[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_RIGHT,"right"]],i=[[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_NORMAL,"normal"],[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_BOLD,"bold"],[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_ITALIC,"italic"],[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_BOLD_ITALIC,'bold","italic']];this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_write),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_MOVE).appendField(new k.FieldDropdown(t),"MOVE"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_ALIGN).appendField(new k.FieldDropdown(e),"ALIGN"),this.appendValueInput("FONTNAME").setCheck(String).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NAME),this.appendValueInput("FONTNUM").setCheck(Number).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE).appendField(new k.FieldDropdown(i),"FONTTYPE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TURTLE_WRITE_TOOLTIP)}},X_={init:function(){var t=[[k.Msg.MIXLY_TURTLE_WRITE_MOVE_FALSE,"False"],[k.Msg.MIXLY_TURTLE_WRITE_MOVE_TRUE,"True"]],e=[[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_LEFT,"left"],[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_CENTER,"center"],[k.Msg.MIXLY_TURTLE_WRITE_ALIGN_RIGHT,"right"]],i=[[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_NORMAL,"normal"],[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_BOLD,"bold"],[k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE_ITALIC,"italic"]];this.appendValueInput("TUR").setCheck("Turtle"),this.setColour(t_),this.appendValueInput("VAR").setCheck(String).appendField(k.Msg.blockpy_turtle_write),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_MOVE).appendField(new k.FieldDropdown(t),"MOVE"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_ALIGN).appendField(new k.FieldDropdown(e),"ALIGN"),this.appendValueInput("FONTNAME").setCheck(String).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NAME),this.appendValueInput("FONTNUM").setCheck(Number).appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_NUM),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTLE_WRITE_FONT_TYPE).appendField(new k.FieldDropdown(i),"FONTTYPE"),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.TURTLE_WRITE_TOOLTIP)}},U_={init:function(){this.setColour(t_),this.appendDummyInput("").setAlign(k.inputs.Align.RIGHT).appendField(new k.FieldColour("ff0000"),"COLOR"),this.setInputsInline(!0),this.setOutput(!0,String)}},G_={init:function(){this.setColour(t_),this.appendValueInput("TUR").setCheck("Turtle"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTEL_GETSCREEN).appendField(new k.FieldTextInput("screen"),"VAR"),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip(k.Msg.MIXLY_TURTEL_GETSCREEN_TOOLTIP)},getVars:function(){return[this.getFieldValue("VAR")]},renameVar:function(t,e){k.Names.equals(t,this.getFieldValue("VAR"))&&this.setTitleValue(e,"VAR")}},B_={init:function(){this.setColour(t_),this.appendValueInput("TUR"),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TURTEL_EVENT_ONKEY),this.appendValueInput("callback").appendField(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TURTEL_EVENT_ONKEY_TOOLTIP)}},x_={init:function(){this.setColour(t_),this.appendValueInput("TUR"),this.appendDummyInput("").appendField(k.Msg.MIXLY_TURTEL_EVENT_ONCLICK),this.appendValueInput("callback").appendField(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TURTEL_EVENT_ONCLICK_TOOLTIP)}},w_={init:function(){this.setColour(t_),this.appendValueInput("TUR"),this.appendValueInput("VAR").appendField(k.Msg.MIXLY_TURTEL_EVENT_ONTIMER),this.appendDummyInput("").appendField(k.Msg.MIXLY_mSecond),this.appendValueInput("callback").appendField(k.Msg.MIXLY_PYTHON_CONTROLS_THREAD_USE),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setInputsInline(!0),this.setTooltip(k.Msg.MIXLY_TURTEL_EVENT_ONTIMER_TOOLTIP)}},H_={init:function(){this.setColour(t_),this.appendValueInput("TUR"),this.appendDummyInput().appendField(k.Msg.MIXLY_TURTEL_SCREEN_LISTEN),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0)}},W_={init:function(){this.setColour(t_),this.appendValueInput("TUR"),this.appendValueInput("FILE").setCheck(String).appendField(k.Msg.mixpy_PL_SAVEFIG),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setOutput(!1),this.setTooltip(k.Msg.mixpy_TURTLE_SAVEFIG_TOOLTIP)}},K_=path,j_={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_INIT_AS).appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_ONE,"0"],[k.Msg.MIXLY_GAME_TWO,"1"],[k.Msg.MIXLY_GAME_THREE,"2"],[k.Msg.MIXLY_GAME_FOUR,"3"],[k.Msg.MIXLY_GAME_FIVE,"4"],[k.Msg.MIXLY_GAME_SIX,"5"]]),"level"),this.setInputsInline(!0),this.setNextStatement(!0),this.setColour(290),this.setTooltip("")}},q_={init:function(){this.setNextStatement(!0),this.setColour(290),this.setTooltip(""),this.appendStatementInput("DO0").appendField(k.Msg.MIXLY_GAME_INIT)}},Q_={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_TOWARD).appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_RIGHT,"1"],[k.Msg.MIXLY_GAME_DOWN,"2"],[k.Msg.MIXLY_GAME_LEFT,"3"],[k.Msg.MIXLY_GAME_UP,"0"]]),"direction"),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_MOVE),this.appendValueInput("times").setCheck(Number),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_STEP),this.setInputsInline(!0),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setColour(290),this.setTooltip("")}},J_={init:function(){var t=[[k.Msg.MIXLY_GAME_FORWARD,"f"],[k.Msg.MIXLY_GAME_BACKWARD,"b"]];this.appendDummyInput().appendField(k.Msg.MIXLY_RE_SPIRITE).appendField(k.Msg.MIXLY_GAME_TOWARD).appendField(new k.FieldDropdown(t),"Direction").appendField(k.Msg.MIXLY_GAME_MOVE),this.appendValueInput("times").setCheck(Number),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_STEP),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},Z_={init:function(){var t=[[k.Msg.MIXLY_GAME_TURN_LEFT,"left"],[k.Msg.MIXLY_GAME_TURN_RIGHT,"right"]];this.appendDummyInput().appendField(k.Msg.MIXLY_RE_SPIRITE).appendField(k.Msg.MIXLY_GAME_TOWARD).appendField(new k.FieldDropdown(t),"Direction").appendField(k.Msg.MIXLY_GAME_TURN),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},z_={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ISDONE),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},$_={init:function(){var t=[[k.Msg.MIXLY_GAME_UP,"0"],[k.Msg.MIXLY_GAME_DOWN,"2"],[k.Msg.MIXLY_GAME_RIGHT,"1"],[k.Msg.MIXLY_GAME_LEFT,"3"]];this.appendDummyInput().appendField(new k.FieldDropdown(t),"Direction").appendField(k.Msg.MIXLY_GAME_ISPATH),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},tp={init:function(){var t=[[k.Msg.MIXLY_GAME_FORWARD,"f"],[k.Msg.MIXLY_GAME_BACKWARD,"b"],[k.Msg.MIXLY_GAME_LEFT,"l"],[k.Msg.MIXLY_GAME_RIGHT,"r"]];this.appendDummyInput().appendField(k.Msg.MIXLY_RE_SPIRITE).appendField(new k.FieldDropdown(t),"Direction").appendField(k.Msg.MIXLY_GAME_ISPATH),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},ep={init:function(){this.appendValueInput("background").setCheck(null).appendField(k.Msg.LISTS_SET_INDEX_SET+k.Msg.MIXLY_GAME_BACKGROUND),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},ip={init:function(){this.appendValueInput("x").setCheck(Number).appendField(k.Msg.MIXLY_GAME_SETMAP+k.Msg.MIXLY_GAME_LENGTH_IS),this.appendValueInput("y").setCheck(Number).appendField(k.Msg.MIXLY_GAME_WIDTH_IS),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_STARTPOS_IS+"("),this.appendValueInput("startPos_x").setCheck(Number),this.appendDummyInput().appendField(","),this.appendValueInput("startPos_y").setCheck(Number),this.appendDummyInput().appendField(")"),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ENDPOS_IS+"("),this.appendValueInput("endPos_x").setCheck(Number),this.appendDummyInput().appendField(","),this.appendValueInput("endPos_y").setCheck(Number),this.appendDummyInput().appendField(")"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},np={init:function(){this.imgArr=this.getLocalImg(),this.appendDummyInput().appendField(new k.FieldDropdown(this.getLocalImg()),"type"),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")},onchange:function(){let t=this.getFieldValue("type"),e=this.imgArr;this.haveNewSrc(this.imgArr,e)&&(this.imgArr=e,this.getField("type").menuGenerator_=this.imgArr,this.checkSrc(t,this.imgArr)?this.setFieldValue(t,"type"):this.setFieldValue(this.imgArr[0][1],"type"))},haveNewSrc:function(t,e){if(t.length!==e.length)return!0;for(var i=0;i<t.length;i++)if(t[i][0].src!==e[i][0].src)return!0;return!1},checkSrc:function(t,e){for(var i=0;i<e.length;i++)if(e[i][0].src==t)return!0;return!1},getLocalImg:function(){let t=[];try{for(var e=["bg_default.png","bg_astro.png","bg_panda.jpg"],i=0;i<e.length;i++){var n={};n.src=K_.join(X.Env.boardDirPath,"media/mixpyBuild/maps",e[i]),n.width=40,n.height=45,""==e[i]?n.alt="无":n.alt="*";var s=[];s.push(n);var o=e[i].substring(0,e[i].lastIndexOf("."));o="'"+o+"'",s.push(o),t.push(s)}}catch(e){console.log(e),t=[["'无可用地图'","'无可用地图'"]]}return t.length>0?t:[["'无可用地图'","'无可用地图'"]]}},sp={init:function(){this.appendValueInput("pathtype").setCheck(null).appendField(k.Msg.MIXLY_GAME_SETPATHTYPE),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},op={init:function(){this.imgArr=this.getLocalImg(),this.appendDummyInput().appendField(new k.FieldDropdown(this.getLocalImg()),"type"),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")},onchange:function(){let t=this.getFieldValue("type"),e=this.imgArr;this.haveNewSrc(this.imgArr,e)&&(this.imgArr=e,this.getField("type").menuGenerator_=this.imgArr,this.checkSrc(t,this.imgArr)?this.setFieldValue(t,"type"):this.setFieldValue(this.imgArr[0][1],"type"))},haveNewSrc:function(t,e){if(t.length!==e.length)return!0;for(var i=0;i<t.length;i++)if(t[i][0].src!==e[i][0].src)return!0;return!1},checkSrc:function(t,e){for(var i=0;i<e.length;i++)if(e[i][0].src==t)return!0;return!1},getLocalImg:function(){let t=[];try{for(var e=["default.png","bamboo.png","pipeline.png"],i=0;i<e.length;i++){var n={};n.src=K_.join(X.Env.boardDirPath,"media/mixpyBuild/path",e[i]),n.width=40,n.height=45,n.alt="*";var s=[];s.push(n);var o=e[i].substring(0,e[i].lastIndexOf("."));o="'"+o+"'",s.push(o),t.push(s)}}catch(e){console.log(e),t=[["'无可用路径'","'无可用路径'"]]}return t.length>0?t:[["'无可用路径'","'无可用路径'"]]}},_p={init:function(){this.setColour(290),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("posx").setCheck(null).appendField(k.Msg.TEXT_APPEND_TO+"("),this.appendDummyInput().appendField(","),this.appendValueInput("posy").setCheck(null).appendField(""),this.appendDummyInput().appendField(")"+k.Msg.MIXLY_GAME_LAY).appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_WALL,"'wall'"],[k.Msg.MIXLY_GAME_BARRIER,"'barrier'"],[k.Msg.MIXLY_GAME_COIN,"'coin'"],[k.Msg.MIXLY_GAME_REDMARKER,"'redmarker'"],[k.Msg.MIXLY_GAME_YELLOWMARKER,"'yellowmarker'"],[k.Msg.MIXLY_GAME_BLUEMARKER,"'bluemarker'"],[k.Msg.MIXLY_GAME_GREENMARKER,"'greenmarker'"]]),"item"),this.setTooltip("")}},pp={init:function(){this.imgArr=this.getLocalImg(),this.appendDummyInput().appendField(new k.FieldDropdown(this.getLocalImg()),"type"),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")},onchange:function(){let t=this.getFieldValue("type"),e=this.imgArr;this.haveNewSrc(this.imgArr,e)&&(this.imgArr=e,this.getField("type").menuGenerator_=this.imgArr,this.checkSrc(t,this.imgArr)?this.setFieldValue(t,"type"):this.setFieldValue(this.imgArr[0][1],"type"))},haveNewSrc:function(t,e){if(t.length!==e.length)return!0;for(var i=0;i<t.length;i++)if(t[i][0].src!==e[i][0].src)return!0;return!1},checkSrc:function(t,e){for(var i=0;i<e.length;i++)if(e[i][0].src==t)return!0;return!1},getLocalImg:function(){let t=[];try{for(var e=["pegman.png","astro.png","panda.png","robot.png","car.png"],i=0;i<e.length;i++){var n={};n.src=K_.join(X.Env.boardDirPath,"media/mixpyBuild/characters",e[i]),n.width=40,n.height=45,n.alt="*";var s=[];s.push(n);var o=e[i].substring(0,e[i].lastIndexOf("."));o="'"+o+"'",s.push(o),t.push(s)}}catch(e){console.log(e),t=[["'无可用角色'","'无可用角色'"]]}return t.length>0?t:[["'无可用角色'","'无可用角色'"]]}},up={init:function(){this.setColour(290),this.appendValueInput("character").setCheck(null).appendField(k.Msg.MIXLY_GAME_INIT_CHARA),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_FACE+k.Msg.MIXLY_GAME_RIGHT),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setTooltip("")}},ap={init:function(){this.setColour(290),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_GETPOINT),this.setOutput(!0,Number),this.setTooltip("")}},lp={init:function(){this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_UP,"0"],[k.Msg.MIXLY_GAME_DOWN,"2"],[k.Msg.MIXLY_GAME_LEFT,"3"],[k.Msg.MIXLY_GAME_RIGHT,"1"]]),"direction"),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ISBARRIER),this.setInputsInline(!0),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},rp={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_RE_SPIRITE).appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_FORWARD,"f"],[k.Msg.MIXLY_GAME_BACKWARD,"b"],[k.Msg.MIXLY_GAME_LEFT,"l"],[k.Msg.MIXLY_GAME_RIGHT,"r"]]),"direction"),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ISBARRIER),this.setInputsInline(!0),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},Tp={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_RANDOMCAROIL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setColour(290),this.setTooltip("")}},dp={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_NEEDOIL),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},Ip={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ISGREEN),this.setOutput(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},hp={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_ADDOIL),this.setPreviousStatement(!0),this.setNextStatement(!0),this.setColour(290),this.setTooltip("")}},Ep={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_CHECKCIRCURIGHT),this.setPreviousStatement(!0),this.setColour(290),this.setTooltip("")}},Op={init:function(){this.setColour(290),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_CHECK_WHETHER_PASS),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_REDMARKER,"'redmarker'"],[k.Msg.MIXLY_GAME_YELLOWMARKER,"'yellowmarker'"],[k.Msg.MIXLY_GAME_BLUEMARKER,"'bluemarker'"],[k.Msg.MIXLY_GAME_GREENMARKER,"'greenmarker'"]]),"marker"),this.appendDummyInput().appendField("?"),this.setInputsInline(!0),this.setOutput(!0,null),this.setTooltip("")}},Mp={init:function(){this.setColour(290),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_GET_MARKER_NUM),this.appendDummyInput().appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_REDMARKER,"'redmarker'"],[k.Msg.MIXLY_GAME_YELLOWMARKER,"'yellowmarker'"],[k.Msg.MIXLY_GAME_BLUEMARKER,"'bluemarker'"],[k.Msg.MIXLY_GAME_GREENMARKER,"'greenmarker'"]]),"marker"),this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_NUMBER_OF_MARKER),this.setInputsInline(!0),this.setOutput(!0,null),this.setTooltip("")}},cp={init:function(){this.setColour(290),this.setPreviousStatement(!0),this.setNextStatement(!0),this.appendValueInput("posx").setCheck(null).appendField(k.Msg.TEXT_APPEND_TO+"("),this.appendDummyInput().appendField(","),this.appendValueInput("posy").setCheck(null).appendField(""),this.appendDummyInput().appendField(")"+k.Msg.TEXT_GET_INDEX_RANDOM+k.Msg.MIXLY_GAME_LAY+k.Msg.MIXLY_GAME_BARRIER),this.setTooltip("")}},Rp={init:function(){this.appendDummyInput().appendField(k.Msg.MIXLY_GAME_INIT_AS).appendField(new k.FieldDropdown([[k.Msg.MIXLY_GAME_ONE,"0"],[k.Msg.MIXLY_GAME_TWO,"1"],[k.Msg.MIXLY_GAME_THREE,"2"],[k.Msg.MIXLY_GAME_FOUR,"3"],[k.Msg.MIXLY_GAME_FIVE,"4"],[k.Msg.MIXLY_GAME_SIX,"5"],[k.Msg.MIXLY_GAME_SEVEN,"6"],[k.Msg.MIXLY_GAME_EIGHT,"7"],[k.Msg.MIXLY_GAME_NINE,"8"],[k.Msg.MIXLY_GAME_TEN,"9"],[k.Msg.MIXLY_GAME_ELE,"10"],[k.Msg.MIXLY_GAME_TWEL,"11"],[k.Msg.MIXLY_GAME_THIR,"12"],[k.Msg.MIXLY_GAME_FORT,"13"],[k.Msg.MIXLY_GAME_FIFT,"14"],[k.Msg.MIXLY_GAME_SIXT,"15"],[k.Msg.MIXLY_GAME_SEVENT,"16"]]),"level"),this.setInputsInline(!0),this.setNextStatement(!0),this.setColour(290),this.setTooltip("")}},mp={init:function(){this.appendValueInput("N").setCheck(null).setAlign(k.inputs.Align.LEFT).appendField("二分法查找书籍").appendField("N"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},Ap={init:function(){this.appendValueInput("N").setCheck(null).setAlign(k.inputs.Align.LEFT).appendField("顺序法查找书籍").appendField("N"),this.setInputsInline(!0),this.setPreviousStatement(!0,null),this.setNextStatement(!0,null),this.setColour(290),this.setTooltip(""),this.setHelpUrl("")}},gp=function(t,e){return[e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE),e.ORDER_ATOMIC]},Lp=function(t,e){if(""==this.getFieldValue("VAR"))return" = None\n";var i=e.valueToCode(this,"VALUE",e.ORDER_ASSIGNMENT)||"None";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = "+i+"\n"},Cp=function(t,e){var i=this.getFieldValue("OP"),n=e.valueToCode(this,"MYVALUE",e.ORDER_ATOMIC)||"None";if("bytes"==i)var s=i+"("+n+',"UTF-8")';else s=i+"("+n+")";return[s,e.ORDER_ATOMIC]},Sp=function(t,e){return"global "+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"None")+"\n"},Dp=function(t,e){return["type("+(e.valueToCode(this,"DATA",e.ORDER_ATOMIC)||"None")+")",e.ORDER_ATOMIC]},Np=function(t,e){return[this.getFieldValue("type"),e.ORDER_ATOMIC]},Pp=function(t,e){for(var i=new Array(this.itemCount_),n=0;n<this.itemCount_;n++)i[n]=e.valueToCode(this,"ADD"+n,e.ORDER_NONE)||"[]";return[i="zip("+i.join(", ")+")",e.ORDER_ATOMIC]},fp=function(t,e){const i=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"[]";return[`${this.getFieldValue("TYPE")}(${i})`,e.ORDER_ATOMIC]},Fp=function(t,e){var i=e.statementToCode(t,"DO");return"if __name__ == '__main__':\n"+(i=e.addLoopTrap(i,t.id)||e.PASS)},vp=function(t,e){var i=e.statementToCode(this,"DO");return(i=i.replace(/(^\s*)|(\s*$)/g,"").replace(/\n {4}/g,"\n")).endsWith("\n")?e.setups_.setup_setup=i:e.setups_.setup_setup=i+"\n",""},Vp=function(t,e){var i=0,n="";do{n+=(0==i?"if ":"elif ")+(e.valueToCode(t,"IF"+i,e.ORDER_NONE)||"False")+":\n"+(e.statementToCode(t,"DO"+i)||e.PASS),++i}while(t.getInput("IF"+i));return t.getInput("ELSE")&&(n+="else:\n"+(e.statementToCode(t,"ELSE")||e.PASS)),n},Yp=function(t,e){var i=1,n=e.valueToCode(this,"IF"+i,e.ORDER_NONE)||"null",s="try:\n"+(e.statementToCode(this,"try")||" pass\n");for(i=1;i<=this.elseifCount_;i++)""!==(n=e.valueToCode(this,"IF"+i,e.ORDER_NONE)||"")&&(n=" "+n),s+="except"+n+": \n"+(e.statementToCode(this,"DO"+i)||" pass\n");return this.elseCount_&&(s+="finally:\n"+(e.statementToCode(this,"ELSE")||" pass\n")),s},yp=function(t,e){var i=e.variableDB_.getName(t.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=e.valueToCode(t,"FROM",e.ORDER_NONE)||"0",s=e.valueToCode(t,"TO",e.ORDER_NONE)||"0",o=e.valueToCode(t,"STEP",e.ORDER_NONE)||"1",_=e.statementToCode(t,"DO"),p=(_=e.addLoopTrap(_,t.id)||e.PASS,""),u=function(t,e){return e.provideFunction_("upRange",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):"," while start <= stop:"," yield start"," start += abs(step)"])},a=function(t,e){return e.provideFunction_("downRange",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):"," while start >= stop:"," yield start"," start -= abs(step)"])};if(t=function(t,e,i){return"("+t+" <= "+e+") and "+u()+"("+t+", "+e+", "+i+") or "+a()+"("+t+", "+e+", "+i+")"},k.isNumber(n)&&k.isNumber(s)&&k.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<s?u():a(),t+="("+n+", "+s+", "+o+")");else{var l=function(t,n){if(k.isNumber(t))t=parseFloat(t);else{var s=e.variableDB_.getDistinctName(i+n,k.Variables.NAME_TYPE);p+=s+" = "+t+"\n",t=s}return t};n=l(n,"_start"),s=l(s,"_end");l(o,"_inc"),t="number"==typeof n&&"number"==typeof s?n<s?u(0,s):a(0,s):t(n,s,o)}return p+="for "+i+" in "+t+":\n"+_},bp=function(t,e){var i=e.variableDB_.getName(t.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=e.valueToCode(t,"FROM",e.ORDER_NONE)||"0",s=e.valueToCode(t,"TO",e.ORDER_NONE)||"0",o=e.valueToCode(t,"STEP",e.ORDER_NONE)||"1",_=e.statementToCode(t,"DO"),p=e.addLoopTrap(_,t.id)||e.PASS;return e.setups_.mixly_range="def mixly_range(start, stop, step):\n for i in range(start, stop + 1, step):\n yield i\n\n","for "+i+" in mixly_range("+n+", "+s+", "+o+"):\n"+p},kp=function(t,e){var i="UNTIL"==t.getFieldValue("MODE"),n=e.valueToCode(t,"BOOL",e.ORDER_NONE)||"False",s=e.statementToCode(t,"DO");return i&&(n="not "+n),"while "+n+":\n"+(s=e.addLoopTrap(s,t.id)||e.PASS)},Xp=function(t){switch(t.getFieldValue("FLOW")){case"BREAK":return"break\n";case"CONTINUE":return"continue\n"}throw"Unknown flow statement."},Up=function(t,e){return"sleep("+(e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000")+")\n"},Gp=function(t,e){return"panic("+(e.valueToCode(this,"STATUS_CODE",e.ORDER_ATOMIC)||"1000")+")\n"},Bp=function(t,e){e.definitions_.import_time="import time";return["time.time()",e.ORDER_ATOMIC]},xp=function(t,e){return e.definitions_.import_microbit="from microbit import *","reset()\n"},wp=function(){return"interrupts();\n"},Hp=function(){return"noInterrupts();\n"},Wp=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"''",n=e.valueToCode(t,"LIST",e.ORDER_RELATIONAL)||"[]",s=e.statementToCode(t,"DO");return"for "+i+" in "+n+":\n"+(s=e.addLoopTrap(s,t.id)||e.PASS)},Kp=function(t,e){return["range("+(e.valueToCode(this,"FROM",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"TO",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"STEP",e.ORDER_NONE)||"1")+")",e.ORDER_ATOMIC]},jp=function(t,e){var i="lambda "+(e.valueToCode(t,"BOOL",e.ORDER_NONE)||"None")+": "+(e.statementToCode(t,"DO")||"pass");return[i=i.replace("\n","").replace(" ",""),e.ORDER_ATOMIC]},qp=function(t,e){return e.definitions_.import_time="import time","time.sleep("+(e.valueToCode(this,"DELAY_TIME",e.ORDER_ATOMIC)||"1000")+")\n"},Qp=function(){return"pass\n"},Jp=function(t,e){e.definitions_.import__thread="import _thread";var i=e.valueToCode(this,"VAR",e.ORDER_NONE)||"None";return"_thread.start_new_thread("+e.variableDB_.getName(e.valueToCode(this,"callback",e.ORDER_NONE)||"None",k.Procedures.NAME_TYPE)+", "+i+")\n"},Zp=function(t,e){var i=e.valueToCode(this,"select_data",e.ORDER_NONE)||"False",n=e.statementToCode(this,"input_data");return n="true"==this.getFieldValue("type")?n+" if ("+i+"):\n break\n":n+" if not ("+i+"):\n break\n","while True:\n"+(n=e.addLoopTrap(n,this.id)||e.PASS)},zp=function(t,e){var i=e.valueToCode(this,"TIMES",e.ORDER_ATOMIC),n=e.statementToCode(t,"DO");return"for _my_variable in range("+i+"):\n"+(n=e.addLoopTrap(n,t.id)||e.PASS)},$p=function(t,e){e.definitions_.import_gc="import gc";return"gc.collect()\n"},tu=function(t,e){e.definitions_.import_gc="import gc";return["gc.mem_alloc()",e.ORDER_ATOMIC]},eu=function(t,e){e.definitions_.import_gc="import gc";return["gc.mem_free()",e.ORDER_ATOMIC]},iu=function(t,e){e.definitions_.import_machine="import machine";return["machine.unique_id()",e.ORDER_ATOMIC]},nu=zp,su=function(t,e){return e.definitions_.import_datetime="import datetime",["datetime.datetime.fromtimestamp("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},ou=function(t,e){var i=X.Boards.getSelectedBoardKey().split(":")[2];e.definitions_["import_"+i+"uuid"]="from "+i+" import uuid";return["uuid()",e.ORDER_ATOMIC]},_u=function(t,e){var i=this.getFieldValue("NUM");return[i,i<0?e.ORDER_UNARY_PREFIX:e.ORDER_ATOMIC]},pu=function(t,e){return e.definitions_.import_math="import math",["math."+this.getFieldValue("CONSTANT"),e.ORDER_ATOMIC]},uu=function(t,e){return e.definitions_.import_math="import math",["math."+this.getFieldValue("CONSTANT"),e.ORDER_ATOMIC]},au=function(t,e){var i=this.getFieldValue("OP"),n=e.ORDER_ATOMIC;return["("+(e.valueToCode(this,"A",n)||"0")+i+(e.valueToCode(this,"B",n)||"0")+")",n]},lu=function(t,e){var i=(n={ADD:[" + ",e.ORDER_ADDITIVE],MINUS:[" - ",e.ORDER_ADDITIVE],MULTIPLY:[" * ",e.ORDER_MULTIPLICATIVE],DIVIDE:[" / ",e.ORDER_MULTIPLICATIVE],QUYU:[" % ",e.ORDER_MULTIPLICATIVE],ZHENGCHU:[" // ",e.ORDER_MULTIPLICATIVE],POWER:[" ** ",e.ORDER_EXPONENTIATION]}[t.getFieldValue("OP")])[0],n=n[1];return[(e.valueToCode(t,"A",n)||"0")+i+(t=e.valueToCode(t,"B",n)||"0"),n]},ru=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_RELATIONAL)||"0",n=e.valueToCode(this,"B",e.ORDER_RELATIONAL)||"0";switch(this.getFieldValue("OP")){case"ADD":var s="+=";break;case"MINUS":s="-=";break;case"MULTIPLY":s="*=";break;case"DIVIDE":s="/=";break;case"QUYU":s="%=";break;case"ZHENGCHU":s="//=";break;case"POWER":s="**="}return i+" "+s+" "+n+"\n"},Tu=function(t,e){var i,n=t.getFieldValue("OP");if("NEG"==n)return["-"+(i=e.valueToCode(t,"NUM",e.ORDER_UNARY_SIGN)||"0"),e.ORDER_UNARY_SIGN];switch(e.definitions_.import_math="import math",t="SIN"==n||"COS"==n||"TAN"==n?e.valueToCode(t,"NUM",e.ORDER_MULTIPLICATIVE)||"0":e.valueToCode(t,"NUM",e.ORDER_NONE)||"0",n){case"ABS":i="math.fabs("+t+")";break;case"ROOT":i="math.sqrt("+t+")";break;case"LN":i="math.log("+t+")";break;case"LOG10":i="math.log10("+t+")";break;case"EXP":i="math.exp("+t+")";break;case"POW10":i="math.pow(10,"+t+")";break;case"ROUND":i="round("+t+")";break;case"ROUNDUP":i="math.ceil("+t+")";break;case"ROUNDDOWN":i="math.floor("+t+")";break;case"SIN":i="math.sin("+t+")";break;case"COS":i="math.cos("+t+")";break;case"TAN":i="math.tan("+t+")";break;case"++":i="++("+t+")";break;case"--":i="--("+t+")";break;case"-":i="-("+t+")"}if(i)return[i,e.ORDER_EXPONENTIATION];switch(n){case"ASIN":i="math.degrees(math.asin("+t+"))";break;case"ACOS":i="math.degrees(math.acos("+t+"))";break;case"ATAN":i="math.degrees(math.atan("+t+"))"}return[i,e.ORDER_MULTIPLICATIVE]},du=Tu,Iu=function(t,e){var i=e.valueToCode(this,"NUM",e.ORDER_NONE)||"0";return[this.getFieldValue("OP")+"("+i+")",e.ORDER_ATOMIC]},hu=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_NONE)||"0",n=this.getFieldValue("OP"),s="";return"round"===n?s=n+"("+i+")":(s="math."+n+"("+i+")",e.definitions_.import_math="import math"),[s,e.ORDER_ATOMIC]},Eu=function(t,e){var i=e.valueToCode(this,"A",e.ORDER_NONE)||"0",n=e.valueToCode(this,"B",e.ORDER_NONE)||"0";return[this.getFieldValue("OP")+"("+i+", "+n+")",e.ORDER_ATOMIC]},Ou=function(t,e){e.definitions_.import_random="import random";var i=this.getFieldValue("TYPE"),n=e.valueToCode(this,"FROM",e.ORDER_NONE)||"0",s=e.valueToCode(this,"TO",e.ORDER_NONE)||"0";if("int"==i)var o="random.randint("+n+", "+s+")";else if("float"==i)o="random.uniform("+n+", "+s+")";return[o,e.ORDER_UNARY_POSTFIX]},Mu=function(t,e){var i=e.valueToCode(this,"NUM",e.ORDER_NONE),n=e.valueToCode(this,"fromLow",e.ORDER_ATOMIC),s=e.valueToCode(this,"fromHigh",e.ORDER_ATOMIC),o=e.valueToCode(this,"toLow",e.ORDER_ATOMIC),_=e.valueToCode(this,"toHigh",e.ORDER_ATOMIC);return e.definitions_.import_mixpy_math_map="from mixpy import math_map",["math_map("+i+", "+n+", "+s+", "+o+", "+_+")",e.ORDER_NONE]},cu=function(t,e){return["min(max("+(e.valueToCode(this,"VALUE",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"LOW",e.ORDER_NONE)||"0")+"), "+(e.valueToCode(this,"HIGH",e.ORDER_NONE)||"0")+")",e.ORDER_UNARY_POSTFIX]},Ru=function(t,e){var i=t.getFieldValue("OP"),n=e.valueToCode(this,"NUM",e.ORDER_NONE)||"0",s=t.getFieldValue("OP2");e.definitions_.import_math="import math";var o="",_="10";if("two"==i?_="2":"eight"==i?_="8":"ten"==i?_="10":"sixteen"==i&&(_="16"),"two"==s?o="bin":"eight"==s?o="oct":"ten"==s?o="":"sixteen"==s&&(o="hex"),""==o)var p="int(str("+n+"), "+_+")";else p=o+"(int(str("+n+"), "+_+"))";return[p,e.ORDER_ATOMIC]},mu=function(t,e){return e.definitions_.import_random="import random","random.seed("+(e.valueToCode(this,"NUM",e.ORDER_NONE)||"0")+");\n"},Au=function(t,e){var i=this.getFieldValue("NUM");return[i,i<0?e.ORDER_UNARY_PREFIX:e.ORDER_ATOMIC]},gu=function(t,e){return["round("+(e.valueToCode(this,"VALUE",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"VAR",e.ORDER_NONE)||"0")+")",e.ORDER_ATOMIC]},Lu=function(t,e){var i=this.getFieldValue("TOWHAT"),n=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);return"b"==i?[n+'.encode("utf-8")',e.ORDER_ATOMIC]:"bti"==i?["int.from_bytes("+n+',"big")',e.ORDER_ATOMIC]:[i+"("+n+")",e.ORDER_ATOMIC]},Cu=function(t,e){var i=this.getFieldValue("TOWHAT"),n=e.valueToCode(this,"VAR",e.ORDER_ATOMIC);return"b"==i?[n+'.encode("utf-8")',e.ORDER_ATOMIC]:[i+"("+n+")",e.ORDER_ATOMIC]},Su=Mu,Du=function(t,e){return e.definitions_.import_hexlify="from ubinascii import hexlify",["hexlify("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+").decode()",e.ORDER_ATOMIC]},Nu=function(t,e){e.definitions_.import_itertools="import itertools";let i=e.valueToCode(this,"REPEAT",e.ORDER_ATOMIC),n=new Array(this.itemCount_);for(let t=0;t<this.itemCount_;t++)n[t]=e.valueToCode(this,`ADD${t}`,e.ORDER_NONE)||"0";let s="";return this.itemCount_&&(s=`itertools.product(${n.join(", ")}, repeat=${i})`),[s,e.ORDER_ATOMIC]},Pu=function(t,e){return e.definitions_.import_math="import math",["math.degrees("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},fu=function(t,e){return e.definitions_.import_math="import math",["math.radians("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Fu=function(t,e){return[e.quote_(this.getFieldValue("TEXT")),e.ORDER_ATOMIC]},vu=function(t,e){return['"""'+this.getFieldValue("VALUE")+'"""',e.ORDER_ATOMIC]},Vu=function(t,e){return[`b'${this.getFieldValue("TEXT")}'`,e.ORDER_ATOMIC]},Yu=function(t,e){return["'"+this.getFieldValue("TEXT")+"'",e.ORDER_ATOMIC]},yu=function(t,e){return[e.valueToCode(this,"A",e.ORDER_ATOMIC)+" + "+e.valueToCode(this,"B",e.ORDER_ATOMIC),e.ORDER_ADDITIVE]},bu=function(t,e){return["chr("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},ku=function(t,e){return["ord("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"a")+")",e.ORDER_ATOMIC]},Xu=function(t,e){return["str("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Uu=function(t,e){return["len("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+")",e.ORDER_ATOMIC]},Gu=function(t,e){var i=t.getFieldValue("WHERE")||"FROM_START",n=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""';switch(i){case"FROM_START":return[n+"["+(t=e.getAdjustedInt(t,"AT"))+"]",e.ORDER_ATOMIC];case"FROM_END":return[n+"["+(t=e.getAdjustedInt(t,"AT",1,!0))+"]",e.ORDER_ATOMIC];case"RANDOM":return e.definitions_.import_random="import random",["random.choice("+n+")",e.ORDER_FUNCTION_CALL]}throw"Unhandled combination (lists_getIndex)."},Bu=function(t,e){return[(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+"["+(e.valueToCode(this,"AT",e.ORDER_ATOMIC)||0)+"]",e.ORDER_ATOMIC]},xu=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""';return e.definitions_.import_random="import random",["random.choice("+i+")",e.ORDER_FUNCTION_CALL]},wu=function(t,e){var i=e.valueToCode(this,"STR1",e.ORDER_ATOMIC)||'""',n=e.valueToCode(this,"STR2",e.ORDER_ATOMIC)||'""',s=this.getFieldValue("DOWHAT");return"==="===s?[i+" == "+n,e.ORDER_ATOMIC]:[i+"."+s+"("+n+")",e.ORDER_ATOMIC]},Hu=function(t,e){return["cmp("+(e.valueToCode(this,"STR1",e.ORDER_ATOMIC)||'""')+","+(e.valueToCode(this,"STR2",e.ORDER_ATOMIC)||'""')+")",e.ORDER_ATOMIC]},Wu=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""',n=t.getFieldValue("WHERE1"),s=t.getFieldValue("WHERE2");switch(n){case"FROM_START":"0"==(o=e.getAdjustedInt(t,"AT1"))&&(o="");break;case"FROM_END":var o=e.getAdjustedInt(t,"AT1",0,!0);break;case"FIRST":o="0";break;default:throw"Unhandled option (lists_getSublist)"}switch(s){case"FROM_START":var _=e.getAdjustedInt(t,"AT2");break;case"FROM_END":_=e.getAdjustedInt(t,"AT2",0,!0);k.isNumber(String(_))?"0"==_&&(_=""):(e.definitions_.import_sys="import sys",_+=" or sys.maxsize");break;case"LAST":_="-1";break;default:throw"Unhandled option (lists_getSublist)"}return[i+"["+o+" : "+_+"]",e.ORDER_ATOMIC]},Ku=function(t,e){return[(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+"["+e.valueToCode(this,"AT1",e.ORDER_ATOMIC)+" : "+e.valueToCode(this,"AT2",e.ORDER_ATOMIC)+"]",e.ORDER_ATOMIC]},ju=function(t,e){var i=this.getFieldValue("CAPITAL");return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},qu=function(t,e){var i=this.getFieldValue("CENTER");return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+i+"("+e.valueToCode(this,"WID",e.ORDER_ATOMIC)+","+e.valueToCode(this,"Symbol",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Qu=function(t,e){return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".find("+e.valueToCode(this,"STR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Ju=function(t,e){return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".join("+(e.valueToCode(this,"LIST",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},Zu=function(t,e){return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+".replace("+e.valueToCode(this,"STR1",e.ORDER_ATOMIC)+","+e.valueToCode(this,"STR2",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},zu=function(t,e){return[(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+".split("+(e.valueToCode(this,"VAL",e.ORDER_ATOMIC)||'""')+")",e.ORDER_ATOMIC]},$u=function(t,e){var i=this.getFieldValue("TOWHAT");return[e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},ta=function(t,e){for(var i=this.getFieldValue("VAR"),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++)n[s]=e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0";return[n=i+".format("+n.join(", ")+")",e.ORDER_ATOMIC]},ea=function(t,e){for(var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++)n[s]=e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0";return[n=i+".format("+n.join(", ")+")",e.ORDER_ATOMIC]},ia=Ku,na=Hu,sa=Bu,oa=function(t,e){var i=this.getFieldValue("DIR"),n=this.getFieldValue("CODE");return[(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+"."+i+'("'+n+'")',e.ORDER_ATOMIC]},_a=function(t,e){return["eval("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},pa=function(t,e){return e.definitions_.import_os="import os","os.system("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},ua=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+"["+e.valueToCode(this,"AT1",e.ORDER_ADDITIVE)+" : "+e.valueToCode(this,"AT2",e.ORDER_ADDITIVE)+"]",e.ORDER_ATOMIC]},aa=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ATOMIC)||"mylist")+"["+(e.valueToCode(this,"row",e.ORDER_ATOMIC)||0)+","+(e.valueToCode(this,"col",e.ORDER_ATOMIC)||0)+"]",e.ORDER_ATOMIC]},la=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ATOMIC)||"mylist")+"["+(e.valueToCode(this,"row_start",e.ORDER_ATOMIC)||0)+" : "+(e.valueToCode(this,"row_end",e.ORDER_ATOMIC)||1)+","+(e.valueToCode(this,"col_start",e.ORDER_ATOMIC)||0)+" : "+(e.valueToCode(this,"col_end",e.ORDER_ATOMIC)||1)+"]",e.ORDER_ATOMIC]},ra=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++)n[s]=e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0";return n=i+" = ["+n.join(", ")+"]\n"},Ta=function(t,e){return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = ["+this.getFieldValue("TEXT")+"]\n"},da=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+"["+(e.valueToCode(this,"AT",e.ORDER_ADDITIVE)||0)+"]",e.ORDER_ATOMIC]},Ia=function(t,e){return(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+"["+(e.valueToCode(this,"AT",e.ORDER_ADDITIVE)||"0")+"] = "+(e.valueToCode(this,"TO",e.ORDER_ASSIGNMENT)||"0")+"\n"},ha=function(t,e){var i=e.valueToCode(this,"LIST",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"DATA",e.ORDER_ASSIGNMENT)||"0";return i+"."+this.getFieldValue("OP")+"("+n+")\n"},Ea=function(t,e){return e.definitions_.import_random="import random",["random.choice("+(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+")",e.ORDER_ATOMIC]},Oa=function(t,e){return e.definitions_.import_random="import random",["random.sample("+(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+","+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},Ma=function(t,e){return(e.valueToCode(this,"LIST",e.ORDER_ASSIGNMENT)||"0")+".insert("+(e.valueToCode(this,"AT",e.ORDER_ADDITIVE)||"0")+", "+(e.valueToCode(this,"VALUE",e.ORDER_ASSIGNMENT)||"0")+")\n"},ca=function(t,e){return(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+".reverse()\n"},Ra=function(t,e){return(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+".clear()\n"},ma=function(t,e){var i=this.getFieldValue("OP"),n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0",s=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0";if("INDEX"==i)var o=n+".index("+s+")";else if("COUNT"==i)o=n+".count("+s+")";return[o,e.ORDER_ATOMIC]},Aa=function(t,e){var i=e.valueToCode(this,"LIST",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"DATA",e.ORDER_ASSIGNMENT)||"0";return"del"==this.getFieldValue("OP")?"del "+i+"["+n+"]\n":i+".remove("+n+")\n"},ga=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+".pop("+(e.valueToCode(this,"VALUE",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},La=function(t,e){var i,n=t.getFieldValue("OP");switch(e.definitions_.import_math="import math",t=e.valueToCode(t,"data",e.ORDER_NONE),n){case"LEN":i="len("+t+")";break;case"SUM":i="sum("+t+")";break;case"MIN":i="min("+t+")";break;case"MAX":i="max("+t+")";break;case"AVERAGE":e.definitions_.import_mixpy_math_mean="from mixpy import math_mean",i="math_mean("+t+")";break;case"MEDIAN":e.definitions_.import_mixpy_math_median="from mixpy import math_median",i="math_median("+t+")";break;case"MODE":e.definitions_.import_mixpy_math_modes="from mixpy import math_modes",i="math_modes("+t+")";break;case"STD_DEV":e.definitions_.import_mixpy_math_standard_deviation="from mixpy import math_standard_deviation",i="math_standard_deviation("+t+")";break;default:throw"Unknown operator: "+n}if(i)return[i,e.ORDER_ATOMIC]},Ca=function(t,e){return e.definitions_.import_mixpy_lists_sort="from mixpy import lists_sort",["lists_sort("+(e.valueToCode(t,"LIST",e.ORDER_NONE)||"[]")+', "'+t.getFieldValue("TYPE")+'", '+("1"===t.getFieldValue("DIRECTION")?"False":"True")+")",e.ORDER_ATOMIC]},Sa=function(t,e){var i=this.getFieldValue("OP"),n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0",s="";return"array"==i?(e.definitions_.import_numpy="import numpy",s="numpy.array("+n+")"):s=i+"("+n+")",[s,e.ORDER_ATOMIC]},Da=function(t,e){return["["+this.getFieldValue("CONTENT")+"]",e.ORDER_ATOMIC]},Na=function(t,e){for(var i=new Array(this.itemCount_),n=0;n<this.itemCount_;n++)i[n]=e.valueToCode(this,"ADD"+n,e.ORDER_NONE)||"0";return[i="["+i.join(", ")+"]",e.ORDER_ATOMIC]},Pa=Sa,fa=function(t,e){return"del "+(e.valueToCode(this,"TUP",e.ORDER_ASSIGNMENT)||"0")+"\n"},Fa=ra,va=Ta,Va=da,Ya=ua,ya=Ia,ba=Ma,ka=Aa,Xa=function(t,e){return["list("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Ua=function(t,e){return[(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+".tolist()",e.ORDER_ATOMIC]},Ga=function(t,e){return["enumerate("+(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist")+",start="+(e.valueToCode(this,"VALUE",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},Ba=function(t,e){var i=e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"mylist";return[(e.valueToCode(this,"CON",e.ORDER_ASSIGNMENT)||"0")+" in "+i,e.ORDER_ATOMIC]},xa=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++){var o=this.getFieldValue("KEY"+s);n[s]=o+":"+(e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0")}return n=i+"= {"+n.join(", ")+"}\n"},wa=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".keys()",e.ORDER_ATOMIC]},Ha=function(t,e){var i=X.Boards.getSelectedBoardKey().split(":")[2],n=e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0",s=e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT);if("educore"==i)var o=n+".get("+s+")";else o=n+"["+s+"]";return[o,e.ORDER_ATOMIC]},Wa=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".get("+e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT)+","+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},Ka=function(t,e){return(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"mydict")+"["+e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT)+"] = "+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+"\n"},ja=function(t,e){return"del "+(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"mydict")+"["+e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT)+"]\n"},qa=function(t,e){var i=e.valueToCode(this,"DICT2",e.ORDER_ASSIGNMENT)||"0";return(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".update("+i+")\n"},Qa=function(t,e){return(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".clear()\n"},Ja=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".items()",e.ORDER_ATOMIC]},Za=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".values()",e.ORDER_ATOMIC]},za=function(t,e){return["len("+(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},$a=function(t,e){return"del "+(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+"\n"},tl=function(t,e){var i=e.valueToCode(t,"DICT",e.ORDER_MEMBER)||"[]",n=t.getFieldValue("WHERE"),s=e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT);switch(n){case"INSERT":var o=i+"["+s+"] = "+(e.valueToCode(this,"AT2",e.ORDER_ASSIGNMENT)||"0")+"\n";break;case"DELETE":o="del "+i+"["+s+"]\n";break;default:throw"Unhandled option (lists_setIndex2)"}return o},el=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+".pop("+e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT)+")",e.ORDER_ATOMIC]},il=function(t,e){return(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"mydict")+".setdefault("+e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT)+","+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")\n"},nl=function(t,e){for(var i=new Array(this.itemCount_),n=0;n<this.itemCount_;n++){var s=this.getFieldValue("KEY"+n);i[n]=s+": "+(e.valueToCode(this,"ADD"+n,e.ORDER_NONE)||"0")}return[i="{"+i.join(", ")+"}",e.ORDER_ATOMIC]},sl=function(t,e){return["dict("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},ol=function(t,e){return e.definitions_.import_json="import json",["json.dumps("+(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},_l=function(t,e){return e.definitions_.import_json="import json",["json.loads("+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"null")+")",e.ORDER_ATOMIC]},pl=function(t,e){return[(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+"["+(e.valueToCode(this,"VAR1",e.ORDER_ASSIGNMENT)||"null")+"]["+(e.valueToCode(this,"VAR2",e.ORDER_ASSIGNMENT)||"null")+"]["+(e.valueToCode(this,"VAR3",e.ORDER_ASSIGNMENT)||"null")+"]["+(e.valueToCode(this,"VAR4",e.ORDER_ASSIGNMENT)||"null")+"]",e.ORDER_ATOMIC]},ul=function(t,e){return e.definitions_.import_json="import json",e.definitions_.import_ujson="import ujson",["ujson.loads("+(e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},al=function(t,e){var i=this.getFieldValue("OP"),n=al.OPERATORS[i],s="=="==n||"!="==n?e.ORDER_EQUALITY:e.ORDER_RELATIONAL;return[(e.valueToCode(this,"A",s)||"0")+" "+n+" "+(e.valueToCode(this,"B",s)||"0"),s]},ll=function(t,e){var i=this.getFieldValue("OP1"),n=al.OPERATORS[i],s=this.getFieldValue("OP2"),o=al.OPERATORS[s];return[(e.valueToCode(this,"A",e.ORDER_RELATIONAL)||"0")+" "+n+" "+(e.valueToCode(this,"B",e.ORDER_RELATIONAL)||"0")+" "+o+" "+(e.valueToCode(this,"C",e.ORDER_RELATIONAL)||"0"),e.ORDER_RELATIONAL]};al.OPERATORS={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="};const rl=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]},Tl=function(t,e){var i=e.ORDER_UNARY_PREFIX;return["not "+(e.valueToCode(this,"BOOL",i)||"False"),i]},dl=function(t,e){return["TRUE"==this.getFieldValue("BOOL")?"True":"False",e.ORDER_ATOMIC]},Il=function(t,e){return["None",e.ORDER_ATOMIC]},hl=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]},El=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]},Ol=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]},Ml=function(t,e){return["bool("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},cl=function(t,e){return e.definitions_.import_os="import os","os.startfile("+e.valueToCode(this,"fn",e.ORDER_ATOMIC)+")\n"},Rl=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+" = open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')\n"},ml=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"')",e.ORDER_ATOMIC]},Al=function(t,e){return["open("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", '"+this.getFieldValue("MODE")+"', encoding=\""+this.getFieldValue("CODE")+'")',e.ORDER_ATOMIC]},gl=function(t,e){var i=e.valueToCode(this,"data",e.ORDER_ATOMIC);return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".write("+i+")\n"},Ll=function(t,e){var i=this.getFieldValue("MODE");return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+"."+i+"()",e.ORDER_ATOMIC]},Cl=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]},Sl=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".readline("+e.valueToCode(this,"SIZE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Dl=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".writable()",e.ORDER_ATOMIC]},Nl=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".name()",e.ORDER_ATOMIC]},Pl=function(t,e){return e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".close()\n"},fl=function(t,e){e.definitions_.import_os="import os";return["os.listdir()",e.ORDER_ATOMIC]},Fl=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},vl=function(t,e){return e.definitions_.import_os="import os",["os.path.getsize("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Vl=function(t,e){return[e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+".tell()",e.ORDER_ATOMIC]},Yl=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"},yl=function(t,e){return e.definitions_.import_os="import os","os.chdir("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},bl=function(t,e){e.definitions_.import_os="import os";return["os.getcwd()",e.ORDER_ATOMIC]},kl=function(t,e){return e.definitions_.import_os="import os","os."+this.getFieldValue("MODE")+"("+e.valueToCode(this,"PATH",e.ORDER_ATOMIC)+")\n"},Xl=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"},Ul=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]},Gl=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"},Bl=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"},xl=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),k.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;_<this.arguments_.length;_++){var p=e.variableDB_.getName(this.arguments_[_],k.Variables.NAME_TYPE);o[_]=p}var u="def "+i+"("+o.join(", ")+"):\n"+n+s+"\n";return u=e.scrub_(this,u),e.setups_[i]=u,null},wl=function(t,e){var i=e.variableDB_.getName(this.getFieldValue("NAME"),k.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);for(var s=[],o=0;o<this.arguments_.length;o++){var _=e.variableDB_.getName(this.arguments_[o],k.Variables.NAME_TYPE);s[o]=_}var p="def "+i+"("+s.join(", ")+"):\n"+n+"\n";return p=e.scrub_(this,p),e.setups_[i]=p,null},Hl=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("NAME"),k.Procedures.NAME_TYPE),n=[],s=0;s<this.arguments_.length;s++)n[s]=e.valueToCode(this,"ARG"+s,e.ORDER_NONE)||"null";return[i+"("+n.join(", ")+")",e.ORDER_UNARY_POSTFIX]},Wl=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("NAME"),k.Procedures.NAME_TYPE),n=[],s=0;s<this.arguments_.length;s++)n[s]=e.valueToCode(this,"ARG"+s,e.ORDER_NONE)||"null";return i+"("+n.join(", ")+")\n"},Kl=function(t,e){var i="if ("+(e.valueToCode(this,"CONDITION",e.ORDER_NONE)||"False")+") :\n";this.hasReturnValue_?i+=" return "+(e.valueToCode(this,"VALUE",e.ORDER_NONE)||"None"):i+=" return None";return i+="\n"},jl=function(t,e){var i="";this.hasReturnValue_?i+="return "+(e.valueToCode(this,"VALUE",e.ORDER_NONE)||"None"):i+="return None";return i+="\n"},ql=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++)n[s]=e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0";if(1!=this.itemCount_)n=i+"= ("+n.join(", ")+")\n";else n=i+"= ("+n.join(", ")+",)\n";return n},Ql=function(t,e){return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+"= ("+this.getFieldValue("TEXT")+")\n"},Jl=function(t,e){return["("+this.getFieldValue("TEXT")+")",e.ORDER_ATOMIC]},Zl=function(t,e){var i=e.valueToCode(this,"TUP",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"AT",e.ORDER_ADDITIVE)||"1";return n.match(/^\d+$/)&&(n=parseInt(n,10)),[i+"["+n+"]",e.ORDER_ATOMIC]},zl=function(t,e){return["len("+(e.valueToCode(this,"TUP",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},$l=function(t,e){return"del "+(e.valueToCode(this,"TUP",e.ORDER_ASSIGNMENT)||"0")+"\n"},tr=function(t,e){return[(e.valueToCode(this,"TUP1",e.ORDER_ASSIGNMENT)||"0")+" + "+(e.valueToCode(this,"TUP2",e.ORDER_ASSIGNMENT)||"0"),e.ORDER_ATOMIC]},er=function(t,e){var i=e.valueToCode(this,"TUP",e.ORDER_ASSIGNMENT)||"0";return[this.getFieldValue("DIR")+"("+i+")",e.ORDER_ATOMIC]},ir=function(t,e){return[this.getFieldValue("OP")+"("+(e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0")+")\n",e.ORDER_ATOMIC]},nr=function(t,e){var i=this.getFieldValue("OP"),n=e.valueToCode(this,"VAR",e.ORDER_ASSIGNMENT)||"0",s=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0";if("INDEX"==i)var o=n+".index("+s+")";else if("COUNT"==i)o=n+".count("+s+")";return[o,e.ORDER_ATOMIC]},sr=function(t,e){var i,n=t.getFieldValue("OP");switch(e.definitions_.import_math="import math",t=e.valueToCode(t,"data",e.ORDER_NONE),n){case"LEN":i="len("+t+")";break;case"SUM":i="sum("+t+")";break;case"MIN":i="min("+t+")";break;case"MAX":i="max("+t+")";break;case"AVERAGE":i=e.provideFunction_("math_mean",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(myList):"," localList = [e for e in myList if type(e) == int or type(e) == float]"," if not localList: return"," return float(sum(localList)) / len(localList)"])+"("+t+")";break;case"MEDIAN":i=e.provideFunction_("math_median",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(myList):"," localList = sorted([e for e in myList if type(e) == int or type(e) == float])"," if not localList: return"," if len(localList) % 2 == 0:"," return (localList[len(localList) // 2 - 1] + localList[len(localList) // 2]) / 2.0"," else:"," return localList[(len(localList) - 1) // 2]"])+"("+t+")";break;case"MODE":i=e.provideFunction_("math_modes",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(some_list):"," modes = []"," # Using a lists of [item, count] to keep count rather than dict",' # to avoid "unhashable" errors when the counted item is itself a list or dict.'," counts = []"," maxCount = 1"," for item in some_list:"," found = False"," for count in counts:"," if count[0] == item:"," count[1] += 1"," maxCount = max(maxCount, count[1])"," found = True"," if not found:"," counts.append([item, 1])"," for counted_item, item_count in counts:"," if item_count == maxCount:"," modes.append(counted_item)"," return modes"])+"("+t+")";break;case"STD_DEV":e.definitions_.import_math="import math",i=e.provideFunction_("math_standard_deviation",["def "+e.FUNCTION_NAME_PLACEHOLDER_+"(numbers):"," n = len(numbers)"," if n == 0: return"," mean = float(sum(numbers)) / n"," variance = sum((x - mean) ** 2 for x in numbers) / n"," return math.sqrt(variance)"])+"("+t+")";break;default:throw"Unknown operator: "+n}if(i)return[i,e.ORDER_FUNCTION_CALL]},or=function(t,e){var i=e.valueToCode(t,"LIST",e.ORDER_MEMBER)||"[]",n=t.getFieldValue("WHERE1"),s=t.getFieldValue("WHERE2");switch(n){case"FROM_START":"0"==(o=e.getAdjustedInt(t,"AT1"))&&(o="");break;case"FROM_END":var o=e.getAdjustedInt(t,"AT1",1,!0);break;case"FIRST":o="0";break;default:throw"Unhandled option (lists_getSublist)"}switch(s){case"FROM_START":var _=e.getAdjustedInt(t,"AT2",1);_-=1;break;case"FROM_END":_=e.getAdjustedInt(t,"AT2",1,!0);k.isNumber(String(_))?"0"==_&&(_=""):(e.definitions_.import_sys="import sys",_+=" or sys.maxsize");break;case"LAST":_="-1";break;default:throw"Unhandled option (lists_getSublist)"}return[i+"["+o+" : "+_+"]",e.ORDER_MEMBER]},_r=function(t,e){for(var i=new Array(this.itemCount_),n=0;n<this.itemCount_;n++)i[n]=e.valueToCode(this,"ADD"+n,e.ORDER_NONE)||"0";if(1!=this.itemCount_)i="("+i.join(", ")+")";else i="("+i.join(", ")+",)";return[i,e.ORDER_ATOMIC]},pr=function(t,e){return[(e.valueToCode(this,"LIST",e.ORDER_ADDITIVE)||"0")+"["+(e.valueToCode(this,"AT1",e.ORDER_ADDITIVE)||"0")+" : "+(e.valueToCode(this,"AT2",e.ORDER_ADDITIVE)||"0")+"]",e.ORDER_ATOMIC]},ur=function(t,e){return e.definitions_.import_random="import random",["random.choice("+(e.valueToCode(this,"TUP",e.ORDER_ADDITIVE)||"mytup")+")",e.ORDER_ATOMIC]},ar=function(t,e){return["tuple("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},lr=function(t,e){return["("+this.getFieldValue("CONTENT")+")",e.ORDER_ATOMIC]},rr=function(t,e){for(var i=e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE),n=new Array(this.itemCount_),s=0;s<this.itemCount_;s++)n[s]=e.valueToCode(this,"ADD"+s,e.ORDER_NONE)||"0";return n=i+"= {"+n.join(", ")+"}\n",0==this.itemCount_&&(n=i+" = set()\n"),n},Tr=function(t,e){return["len("+(e.valueToCode(this,"SET",e.ORDER_ASSIGNMENT)||"0")+")",e.ORDER_ATOMIC]},dr=function(t,e){return[(e.valueToCode(this,"SET",e.ORDER_ASSIGNMENT)||"0")+".pop()",e.ORDER_ATOMIC]},Ir=function(t,e){return(e.valueToCode(this,"SET",e.ORDER_ASSIGNMENT)||"0")+".clear()\n"},hr=function(t,e){var i=e.valueToCode(this,"SET1",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"SET2",e.ORDER_ASSIGNMENT)||"0";return[i+"."+this.getFieldValue("OPERATE")+"("+n+")",e.ORDER_ATOMIC]},Er=function(t,e){var i=e.valueToCode(this,"SET1",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"SET2",e.ORDER_ASSIGNMENT)||"0";return i+"."+this.getFieldValue("OPERATE")+"("+n+")\n"},Or=function(t,e){return(e.valueToCode(this,"SET",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("OPERATE")+"("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+")\n"},Mr=function(t,e){var i=e.valueToCode(this,"SET1",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"SET2",e.ORDER_ASSIGNMENT)||"0";return[i+"."+this.getFieldValue("OPERATE")+"("+n+")",e.ORDER_ATOMIC]},cr=function(t,e){return(e.valueToCode(this,"SET",e.ORDER_ASSIGNMENT)||"0")+".update("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},Rr=function(t,e){return["{"+this.getFieldValue("TEXT")+"}",e.ORDER_ATOMIC]},mr=function(t,e){return["set("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0")+")",e.ORDER_ATOMIC]},Ar=function(t,e){return["'''<!DOCTYPE HTML>\n<html>\n<head>\n\t<meta charset=\"utf-8\">\n"+e.statementToCode(this,"HEAD")+"</head>\n<body>\n"+e.statementToCode(this,"BODY")+"</body>\n</html>\n'''",e.ORDER_ATOMIC]},gr=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<h"+n+">\n"+i+"</h"+n+">\n"},Lr=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");if("head"==n)var s="<"+n+'>\n\t<meta charset="utf-8">\n'+i+"</"+n+">\n";else s="<"+n+">\n"+i+"</"+n+">\n";return s},Cr=function(t,e){var i=e.statementToCode(this,"DO"),n=this.getFieldValue("LEVEL");return"<"+n+">\n"+i+"</"+n+">\n"},Sr=function(t,e){var i=e.statementToCode(this,"DO"),n=e.valueToCode(this,"style"),s=this.getFieldValue("LEVEL");return"<"+s+" "+n+" >\n"+i+"</"+s+">\n"},Dr=function(t,e){return['style="'+e.statementToCode(this,"STYLE")+'"',e.ORDER_ATOMIC]},Nr=function(t,e){return'<input type="'+this.getFieldValue("LEVEL")+'" name="'+this.getFieldValue("NAME")+'" value="'+this.getFieldValue("VALUE")+'" '+(e.valueToCode(this,"style")||"")+" />"},Pr=function(){return this.getFieldValue("KEY")+":"+this.getFieldValue("VALUE")+";"},fr=function(){return this.getFieldValue("TEXT")+"\n"},Fr=function(t){return t.getFieldValue("TEXT")+"\n"},vr=function(t,e){return[t.getFieldValue("TEXT"),e.ORDER_ATOMIC]},Vr=function(t,e){return(e.valueToCode(t,"VALUE",e.ORDER_ATOMIC)||"")+"\n"},Yr=function(){return""},yr=function(t,e){return["type("+(e.valueToCode(t,"VALUE",e.ORDER_MEMBER)||"___")+")",e.ORDER_ATOMIC]},br=function(t,e){for(var i=t.getFieldValue("NAME"),n=t.hasReturn_,s=new Array(t.itemCount_),o=0;o<t.itemCount_;o++)s[o]=e.valueToCode(t,"ARGUMENT"+o,e.ORDER_NONE)||"___";var _=i+"("+s.join(", ")+")";return n?[_,e.ORDER_ATOMIC]:_+"\n"},kr=function(t,e){var i=e.valueToCode(t,"MODULE",e.ORDER_ATOMIC),n=e.valueToCode(t,"NAME",e.ORDER_ATOMIC);return[i+"."+(n=n.substring(1,n.length-1)),e.ORDER_NONE]},Xr=function(t,e){e.definitions_.import_pandas="import pandas";var i=e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.Series("+i+")\n"},Ur=function(t,e){e.definitions_.import_pandas="import pandas";var i=e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"INDEX",e.ORDER_ATOMIC)||"''";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.Series("+i+",index="+n+")\n"},Gr=function(t,e){e.definitions_.import_pandas="import pandas";var i=e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.DataFrame("+i+")\n"},Br=function(t,e){e.definitions_.import_pandas="import pandas";var i=e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"INDEX_COLUMN",e.ORDER_ATOMIC)||"''",s=e.valueToCode(this,"INDEX_RAW",e.ORDER_ATOMIC)||"''";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.DataFrame("+i+",columns="+n+",index="+s+")\n"},xr=function(t,e){e.definitions_.import_pandas="import pandas";var i=this.getFieldValue("COLUMN_RAW"),n=e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0",s=e.valueToCode(this,"INDEX",e.ORDER_ATOMIC)||"''";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.DataFrame("+n+","+i+"="+s+")\n"},wr=function(t,e){return e.definitions_.import_pandas="import pandas",e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = pandas.Series(["+this.getFieldValue("TEXT")+"])\n"},Hr=function(t,e){return e.definitions_.import_pandas="import pandas",[(e.valueToCode(this,"SERIES",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("INDEX_VALUE"),e.ORDER_ATOMIC]},Wr=function(t,e){return[(e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0")+"["+(e.valueToCode(this,"AT",e.ORDER_ADDITIVE)||"1")+"]",e.ORDER_ATOMIC]},Kr=function(t,e){e.definitions_.import_pylab="import pylab";return"pylab.show()\n"},jr=function(t,e){e.definitions_.import_pylab="import pylab";return"pylab.axes(aspect=1)\n"},qr=function(t,e){return e.definitions_.import_pylab="import pylab","pylab.plot("+(e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0")+")\n"},Qr=function(t,e){e.definitions_.import_pylab="import pylab";var i=this.getFieldValue("LINE"),n=this.getFieldValue("COLOR"),s=this.getFieldValue("DOT");return"pylab.plot("+(e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0")+",'"+s+i+n+"')\n"},Jr=function(t,e){e.definitions_.import_pylab="import pylab",e.definitions_.import_matplotlib_font_manager="import matplotlib.font_manager";return'pylab.legend(prop=matplotlib.font_manager.FontProperties("STSong"))\n'},Zr=function(t,e){return e.definitions_.import_pylab="import pylab","pylab.title("+e.valueToCode(this,"TITLE",e.ORDER_ATOMIC)+', fontproperties = "STSong")\n'},zr=function(t,e){return e.definitions_.import_pylab="import pylab","pylab."+this.getFieldValue("DIR")+"label("+e.valueToCode(this,"LABEL",e.ORDER_ATOMIC)+', fontproperties = "STSong")\n'},$r=function(t,e){return e.definitions_.import_numpy="import numpy",["numpy.arange("+(e.valueToCode(this,"FROM",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"TO",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"STEP",e.ORDER_NONE)||"1")+")",e.ORDER_ATOMIC]},tT=function(t,e){return e.definitions_.import_pylab="import pylab","pylab."+this.getFieldValue("DIR")+"("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+")\n"},eT=function(t,e){return e.definitions_.import_pylab="import pylab","pylab.scatter("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+",s="+(e.valueToCode(this,"S",e.ORDER_ATOMIC)||"''")+",c='"+this.getFieldValue("COLOR")+"',marker='"+this.getFieldValue("DOT")+"',label="+(e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''")+")\n"},iT=function(t,e){e.definitions_.import_pylab="import pylab";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=this.getFieldValue("LINE"),o=this.getFieldValue("COLOR");return"pylab.plot("+i+","+n+",'"+this.getFieldValue("DOT")+s+o+"',label="+(e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''")+")\n"},nT=function(t,e){e.definitions_.import_pylab="import pylab";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''",o=e.valueToCode(this,"WIDTH",e.ORDER_RELATIONAL)||"0",_=this.getFieldValue("COLOR");return"pylab.bar("+i+","+n+',align="'+this.getFieldValue("ALIGN")+'",color="'+_+'",width='+o+",label="+s+")\n"},sT=function(t,e){e.definitions_.import_pylab="import pylab";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=e.valueToCode(this,"EXPLODE",e.ORDER_ATOMIC)||"''",o=this.getFieldValue("SHADOW"),_=this.getFieldValue("autopct");return"None"!=_&&(_="'"+_+"'"),"pylab.pie("+i+",explode="+s+",labels="+n+",autopct="+_+",shadow="+o+")\n"},oT=function(t,e){return e.definitions_.import_pylab="import pylab","pylab.hist("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+")\n"},_T=function(t,e){return e.definitions_.import_pylab="import pylab","pylab."+this.getFieldValue("DIR")+"ticks("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+",fontproperties = 'STSong')\n"},pT=function(t,e){e.definitions_.import_numpy="import numpy";var i=e.valueToCode(this,"NUM",e.ORDER_NONE)||"0";return["numpy."+this.getFieldValue("OP")+"("+i+")",e.ORDER_ATOMIC]},uT=function(t,e){return e.definitions_.import_numpy="import numpy","pylab.subplot("+(e.valueToCode(this,"VET",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"HOR",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"NUM",e.ORDER_NONE)||"0")+")\n"},aT=function(t,e){return e.definitions_.import_pandas="import pandas",["pandas.read_csv("+e.valueToCode(this,"FILENAME",e.ORDER_ATOMIC)+", header="+this.getFieldValue("MODE")+")\n",e.ORDER_ATOMIC]},lT=function(t,e){var i=this.getFieldValue("MODE"),n=e.valueToCode(this,"DICT",e.ORDER_ASSIGNMENT)||"0",s=e.valueToCode(this,"KEY",e.ORDER_ASSIGNMENT);if("column"==i)var o=n+"["+s+"]";else if("raw"==i)o=n+".loc["+s+"]";return[o,e.ORDER_ATOMIC]},rT=function(t,e){return e.definitions_.import_pylab="import pylab","pylab.savefig("+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},TT=function(t,e){return e.definitions_.import_numpy="import numpy","pylab.text("+(e.valueToCode(this,"VET",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"HOR",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"NUM",e.ORDER_NONE)||"0")+", ha='"+this.getFieldValue("HALIGN")+"', va='"+this.getFieldValue("VALIGN")+"', fontsize="+(e.valueToCode(this,"FONTNUM",e.ORDER_ASSIGNMENT)||"0")+")\n"},dT=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||"0";return e.definitions_.import_numpy="import numpy",["numpy.array("+i+")",e.ORDER_ATOMIC]},IT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";return"matplotlib.pyplot.show()\n"},hT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";return"matplotlib.pyplot.axes(aspect=1)\n"},ET=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.plot("+(e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0")+")\n"},OT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";var i=this.getFieldValue("LINE"),n=this.getFieldValue("COLOR"),s=this.getFieldValue("DOT");return"matplotlib.pyplot.plot("+(e.valueToCode(this,"SER",e.ORDER_ASSIGNMENT)||"0")+",'"+s+i+n+"')\n"},MT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot",e.definitions_.import_matplotlib_font_manager="import matplotlib.font_manager";return'matplotlib.pyplot.legend(prop=matplotlib.font_manager.FontProperties("STSong"))\n'},cT=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.title("+e.valueToCode(this,"TITLE",e.ORDER_ATOMIC)+")\n"},RT=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot."+this.getFieldValue("DIR")+"label("+e.valueToCode(this,"LABEL",e.ORDER_ATOMIC)+")\n"},mT=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot."+this.getFieldValue("DIR")+"("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+")\n"},AT=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.scatter("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+",s="+(e.valueToCode(this,"S",e.ORDER_ATOMIC)||"''")+",color='"+this.getFieldValue("COLOR")+"',marker='"+this.getFieldValue("DOT")+"',label="+(e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''")+")\n"},gT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=this.getFieldValue("LINE"),o=this.getFieldValue("COLOR");return"matplotlib.pyplot.plot("+i+","+n+",'"+this.getFieldValue("DOT")+s+o+"',label="+(e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''")+")\n"},LT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=e.valueToCode(this,"TAG",e.ORDER_ATOMIC)||"''",o=e.valueToCode(this,"WIDTH",e.ORDER_RELATIONAL)||"0",_=this.getFieldValue("COLOR");return"matplotlib.pyplot.bar("+i+","+n+',align="'+this.getFieldValue("ALIGN")+'",color="'+_+'",width='+o+",label="+s+")\n"},CT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";var i=e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''",n=e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''",s=e.valueToCode(this,"EXPLODE",e.ORDER_ATOMIC)||"''",o=this.getFieldValue("SHADOW"),_=this.getFieldValue("autopct");return"None"!=_&&(_="'"+_+"'"),"matplotlib.pyplot.pie("+i+",explode="+s+",labels="+n+",autopct="+_+",shadow="+o+")\n"},ST=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.hist("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+")\n"},DT=function(t,e){return e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot."+this.getFieldValue("DIR")+"ticks("+(e.valueToCode(this,"A",e.ORDER_ATOMIC)||"''")+","+(e.valueToCode(this,"B",e.ORDER_ATOMIC)||"''")+",fontproperties = 'STSong')\n"},NT=function(t,e){return e.definitions_.import_numpy="import numpy",e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.subplot("+(e.valueToCode(this,"VET",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"HOR",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"NUM",e.ORDER_NONE)||"0")+")\n"},PT=function(t,e){e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot";return"matplotlib.pyplot.savefig('1.png')\n"},fT=function(t,e){return e.definitions_.import_numpy="import numpy",e.definitions_.import_matplotlib_pyplot="import matplotlib.pyplot","matplotlib.pyplot.text("+(e.valueToCode(this,"VET",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"HOR",e.ORDER_NONE)||"0")+", "+(e.valueToCode(this,"NUM",e.ORDER_NONE)||"0")+", ha='"+this.getFieldValue("HALIGN")+"', va='"+this.getFieldValue("VALIGN")+"', fontsize="+(e.valueToCode(this,"FONTNUM",e.ORDER_ASSIGNMENT)||"0")+")\n"},FT=function(t,e){return["input("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+")",e.ORDER_ATOMIC]},vT=function(t,e){return"print("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+")\n"},VT=function(t,e){return"print("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+',end ="")\n'},YT=function(t,e){return"print("+(e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""')+",end ="+(e.valueToCode(this,"END",e.ORDER_ATOMIC)||'""')+")\n"},yT=function(t,e){var i=e.valueToCode(this,"VAR",e.ORDER_ATOMIC)||'""',n=this.getFieldValue("DIR");if("str"==n)var s="input("+i+")";else if("int"==n)s="int(input("+i+"))";else if("float"==n)s="float(input("+i+"))";return[s,e.ORDER_ATOMIC]},bT=function(t,e){for(var i=new Array(this.itemCount_),n=0;n<this.itemCount_;n++)i[n]=e.valueToCode(this,"ADD"+n,e.ORDER_NONE)||"0";return i="print("+i.join(", ")+")\n"},kT=function(t,e){e.definitions_.import_time="import time";return["time.time()",e.ORDER_ATOMIC]},XT=function(){return"exit()\n"},UT=function(t,e){e.definitions_.import_time="import time";var i=this.getFieldValue("op"),n="time.localtime()["+i+"]";if("all"===i){return["time.localtime()",e.ORDER_ASSIGNMENT]}return[n,e.ORDER_ASSIGNMENT]},GT=function(t,e){return e.definitions_.import_turtle="import turtle",e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = turtle.Turtle()\n"},BT=function(t,e){e.definitions_.import_turtle="import turtle";return"turtle.done()\n"},xT=function(t,e){e.definitions_.import_turtle="import turtle";return"turtle.exitonclick()\n"},wT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},HT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},WT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".setheading("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+")\n"},KT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".screen.delay("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+")\n"},jT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".goto("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+","+(e.valueToCode(this,"val",e.ORDER_ASSIGNMENT)||"0")+")\n"},qT=function(t,e){return e.definitions_.import_turtle="import turtle",[(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"()",e.ORDER_ATOMIC]},QT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"()\n"},JT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"()\n"},ZT=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"_fill()\n"},zT=function(t,e){return e.definitions_.import_turtle="import turtle",this.getFieldValue("TUR")+"."+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},$T=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".pensize("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+")\n"},td=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".speed("+(e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0")+")\n"},ed=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},id=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".set"+this.getFieldValue("DIR")+"("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},nd=function(t,e){e.definitions_.import_turtle="import turtle";var i=e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"data",e.ORDER_ASSIGNMENT)||"0";return i+".circle ("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+n+")\n"},sd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+"."+this.getFieldValue("DIR")+"()\n"},od=function(t,e){return e.definitions_.import_turtle="import turtle",'turtle.bgcolor("'+this.getFieldValue("FIELDNAME")+'")\n'},_d=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+'.pencolor("'+this.getFieldValue("FIELDNAME")+'")\n'},pd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+'.fillcolor("'+this.getFieldValue("FIELDNAME")+'")\n'},ud=function(t,e){return e.definitions_.import_turtle="import turtle",[(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".clone()",e.ORDER_ATOMIC]},ad=function(t,e){return e.definitions_.import_turtle="import turtle","turtle.bgcolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},ld=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".pencolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},rd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".fillcolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},Td=function(t,e){return e.definitions_.import_turtle="import turtle","turtle.bgcolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},dd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".pencolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},Id=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".fillcolor("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},hd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".color("+e.valueToCode(this,"VAR1",e.ORDER_ATOMIC)+","+e.valueToCode(this,"VAR2",e.ORDER_ATOMIC)+")\n"},Ed=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+'.color("'+this.getFieldValue("FIELDNAME")+'","'+this.getFieldValue("FIELDNAME2")+'")\n'},Od=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".shape('"+this.getFieldValue("DIR")+"')\n"},Md=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".shapesize("+(e.valueToCode(this,"WID",e.ORDER_ASSIGNMENT)||"0")+","+(e.valueToCode(this,"LEN",e.ORDER_ASSIGNMENT)||"0")+","+(e.valueToCode(this,"OUTLINE",e.ORDER_ASSIGNMENT)||"0")+")\n"},cd=function(t,e){return e.definitions_.import_turtle="import turtle",["turtle.textinput("+e.valueToCode(this,"TITLE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PROMPT",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},Rd=function(t,e){return e.definitions_.import_turtle="import turtle",["turtle.numinput("+e.valueToCode(this,"TITLE",e.ORDER_ATOMIC)+","+e.valueToCode(this,"PROMPT",e.ORDER_ATOMIC)+","+e.valueToCode(this,"DEFAULT",e.ORDER_ATOMIC)+",minval = "+e.valueToCode(this,"MIN",e.ORDER_ATOMIC)+",maxval = "+e.valueToCode(this,"MAX",e.ORDER_ATOMIC)+")",e.ORDER_ATOMIC]},md=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".write("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+")\n"},Ad=function(t,e){e.definitions_.import_turtle="import turtle";var i=this.getFieldValue("MOVE"),n=this.getFieldValue("ALIGN"),s=e.valueToCode(this,"FONTNAME",e.ORDER_ATOMIC),o=e.valueToCode(this,"FONTNUM",e.ORDER_ASSIGNMENT)||"0",_=this.getFieldValue("FONTTYPE");return(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".write("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+i+',align="'+n+'",font=('+s+","+o+',"'+_+'"))\n'},gd=function(t,e){e.definitions_.import_turtle="import turtle";var i=this.getFieldValue("MOVE"),n=this.getFieldValue("ALIGN"),s=e.valueToCode(this,"FONTNAME",e.ORDER_ATOMIC),o=e.valueToCode(this,"FONTNUM",e.ORDER_ASSIGNMENT)||"0",_=this.getFieldValue("FONTTYPE");return(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".write("+e.valueToCode(this,"VAR",e.ORDER_ATOMIC)+","+i+',align="'+n+'",font=('+s+","+o+',"'+_+'"))\n'},Ld=function(t,e){return['"'+this.getFieldValue("COLOR")+'"',e.ORDER_ATOMIC]},Cd=function(t,e){e.definitions_.import_turtle="import turtle";var i=e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0";return e.variableDB_.getName(this.getFieldValue("VAR"),k.Variables.NAME_TYPE)+" = "+i+".getscreen()\n"},Sd=function(t,e){e.definitions_.import_turtle="import turtle";var i=e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"VAR",e.ORDER_NONE)||"None";return i+".onkey("+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+", "+n+")\n"},Dd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".onclick("+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+")\n"},Nd=function(t,e){e.definitions_.import_turtle="import turtle";var i=e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0",n=e.valueToCode(this,"VAR",e.ORDER_NONE)||"None";return i+".ontimer("+(e.valueToCode(this,"callback",e.ORDER_NONE)||"None")+", "+n+")\n"},Pd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".listen()\n"},fd=function(t,e){return e.definitions_.import_turtle="import turtle",(e.valueToCode(this,"TUR",e.ORDER_ASSIGNMENT)||"0")+".getcanvas().postscript(file="+e.valueToCode(this,"FILE",e.ORDER_ATOMIC)+")\n"},Fd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";var i=e.statementToCode(t,"DO0")+"blocklygame.initMap('block_id="+t.id+"');\n",n=[];n=i.split("\n");for(var s=0;s<n.length;s++)n[s].indexOf(" ")>=0&&(n[s]=n[s].replace(" ",""));i="";for(s=0;s<n.length;s++)i+=n[s]+"\n";return i},vd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";var i=e.valueToCode(this,"times",e.ORDER_ATOMIC),n="actor.moveDirection("+this.getFieldValue("direction")+",'block_id="+t.id+"');\n";return"for _my_variable in range("+i+"):\n\t"+(n=e.addLoopTrap(n,t.id)||e.PASS)},Vd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";var i=e.valueToCode(this,"times",e.ORDER_ATOMIC),n=this.getFieldValue("Direction"),s="dire=(actor.direction+"+(n="f"==n?0:2)+")%4\n\tactor.moveDirection(dire,'block_id="+t.id+"');\n";return"for _my_variable in range("+i+"):\n\t"+(s=e.addLoopTrap(s,t.id)||e.PASS)},Yd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.settedMap("+this.getFieldValue("level")+",'block_id="+t.id+"');\nactor=blocklygame.Actor('car',2);\n"},yd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","actor.turn('"+this.getFieldValue("Direction")+"','block_id="+t.id+"');\n"},bd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.isDone('block_id="+t.id+"')",e.ORDER_ATOMIC]},kd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.isPath("+this.getFieldValue("Direction")+",'block_id="+t.id+"')",e.ORDER_ATOMIC]},Xd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";var i=this.getFieldValue("Direction");switch(i){case"f":i=0;break;case"b":i=2;break;case"r":i=1;break;case"l":i=3}return["actor.isPath((actor.direction+"+i+")%4,'block_id="+t.id+"')",e.ORDER_ATOMIC]},Ud=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.getPoint('block_id="+t.id+"')",e.ORDER_ATOMIC]},Gd=function(t,e){var i=this.getFieldValue("type");return e.definitions_.import_blocklygame="import blocklygame",[i,e.ORDER_ATOMIC]},Bd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.setMap("+e.valueToCode(this,"x",e.ORDER_ATOMIC)+","+e.valueToCode(this,"y",e.ORDER_ATOMIC)+","+e.valueToCode(this,"startPos_x",e.ORDER_ATOMIC)+","+e.valueToCode(this,"startPos_y",e.ORDER_ATOMIC)+","+e.valueToCode(this,"endPos_x",e.ORDER_ATOMIC)+","+e.valueToCode(this,"endPos_y",e.ORDER_ATOMIC)+",'block_id="+t.id+"');\n"},xd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.set_map_bg("+e.valueToCode(this,"background",e.ORDER_ATOMIC)+",'block_id="+t.id+"');\n"},wd=function(t,e){var i=this.getFieldValue("type");return e.definitions_.import_blocklygame="import blocklygame",[i,e.ORDER_ATOMIC]},Hd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";return"actor=blocklygame.Actor("+e.valueToCode(this,"character",e.ORDER_ATOMIC)+",1,'block_id="+t.id+"');\n"},Wd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.placeItem("+e.valueToCode(this,"posx",e.ORDER_ATOMIC)+","+e.valueToCode(this,"posy",e.ORDER_ATOMIC)+","+this.getFieldValue("item")+",'block_id="+t.id+"');\n"},Kd=function(t,e){var i=this.getFieldValue("type");return e.definitions_.import_blocklygame="import blocklygame",[i,e.ORDER_ATOMIC]},jd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.setPathType("+e.valueToCode(this,"pathtype",e.ORDER_ATOMIC)+",'block_id="+t.id+"');\n"},qd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.isBarrier("+this.getFieldValue("direction")+",'block_id="+t.id+"')",e.ORDER_ATOMIC]},Qd=function(t,e){e.definitions_.import_blocklygame="import blocklygame";var i=this.getFieldValue("direction");switch(i){case"f":i=0;break;case"b":i=2;break;case"r":i=1;break;case"l":i=3}return["actor.isBarrier((actor.direction+"+i+")%4,'block_id="+t.id+"')",e.ORDER_ATOMIC]},Jd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","actor.randomOil('block_id="+t.id+"');\n"},Zd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.isOilFull('block_id="+t.id+"')",e.ORDER_ATOMIC]},zd=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.isLightGreen('block_id="+t.id+"')",e.ORDER_ATOMIC]},$d=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","actor.addOil('block_id="+t.id+"');\n"},tI=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","actor.isCirculationRight('block_id="+t.id+"');\n"},eI=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.checkMarker("+this.getFieldValue("marker")+",'block_id="+t.id+"')",e.ORDER_ATOMIC]},iI=function(t,e){return e.definitions_.import_blocklygame="import blocklygame",["actor.getMarkerNum("+this.getFieldValue("marker")+",'block_id="+t.id+"')",e.ORDER_ATOMIC]},nI=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.randomPlaceBarrier("+e.valueToCode(this,"posx",e.ORDER_ATOMIC)+","+e.valueToCode(this,"posy",e.ORDER_ATOMIC)+",'block_id="+t.id+"');\n"},sI=function(t,e){return e.definitions_.import_blocklygame="import blocklygame","blocklygame.settedSimpleMap("+this.getFieldValue("level")+",'block_id="+t.id+"');\n"},oI=function(t,e){var i=e.valueToCode(this,"N",e.ORDER_ATOMIC);return e.setups_.find_books_by_dichotomy='\ndef find_books_by_dichotomy(N):\n counter = 0\n left = 0\n right = N\n key = N\n i = (left + right) / 2\n while i != key:\n counter = counter + 1\n if i > key:\n right = i\n else:\n left = i\n i = ((left + right) + 1) / 2\n print(counter,end ="")\n',`find_books_by_dichotomy(${i})\n`},_I=function(t,e){var i=e.valueToCode(this,"N",e.ORDER_ATOMIC);return e.setups_.find_books_by_sequence='\ndef find_books_by_sequence(N):\n counter = 1\n key = N\n i = 1\n while i != key:\n counter = counter + 1\n i = i + 1\n print(counter,end ="")\n',`find_books_by_sequence(${i})\n`};Object.assign(k.Variables,G),Object.assign(k.Procedures,x),k.Python=W,k.generator=W,X.Profile.default={},Object.assign(k.Blocks,e,i,n,s,o,_,p,u,a,l,r,T,d,I,h,E,O,M),Object.assign(k.Python.forBlock,c,R,m,A,g,L,C,S,D,N,P,f,F,v,V,Y,y,b)})();