-
Notifications
You must be signed in to change notification settings - Fork 3
/
vi_compressed.js
193 lines (192 loc) · 90.1 KB
/
vi_compressed.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
// Do not edit this file; automatically generated by build.py.
"use strict";
Blockly.MSG_DUPLICATE_BLOCK="T\u1ea1o B\u1ea3n Sao";Blockly.MSG_REMOVE_COMMENT="X\u00f3a Ch\u00fa Gi\u1ea3i";Blockly.MSG_ADD_COMMENT="Th\u00eam Ch\u00fa Gi\u1ea3i";Blockly.MSG_EXTERNAL_INPUTS="Ch\u1ed7 G\u1eafn B\u00ean Ngo\u00e0i";Blockly.MSG_INLINE_INPUTS="Ch\u1ed7 G\u1eafn C\u00f9ng D\u00f2ng";Blockly.MSG_DELETE_BLOCK="X\u00f3a M\u1ea3nh N\u00e0y";Blockly.MSG_DELETE_X_BLOCKS="X\u00f3a %1 M\u1ea3nh";Blockly.MSG_COLLAPSE_BLOCK="Thu G\u1ecdn";Blockly.MSG_EXPAND_BLOCK="M\u1edf L\u1edbn";
Blockly.MSG_DISABLE_BLOCK="Ng\u01b0ng T\u00e1c D\u1ee5ng";Blockly.MSG_ENABLE_BLOCK="Ph\u1ee5c H\u1ed3i T\u00e1c D\u1ee5ng";Blockly.MSG_HELP="Tr\u1ee3 Gi\u00fap";Blockly.MSG_COLLAPSE_ALL="Collapse Blocks";Blockly.MSG_EXPAND_ALL="Expand Blocks";Blockly.MSG_CHANGE_VALUE_TITLE="Thay gi\u00e1 tr\u1ecb th\u00e0nh:";Blockly.MSG_NEW_VARIABLE="Bi\u1ebfn m\u1edbi...";Blockly.MSG_NEW_VARIABLE_TITLE="T\u00ean c\u1ee7a bi\u1ebfn m\u1edbi:";Blockly.MSG_RENAME_VARIABLE="Thay t\u00ean bi\u1ebfn...";
Blockly.MSG_RENAME_VARIABLE_TITLE='Thay t\u00ean t\u1ea5t c\u1ea3 "%1" bi\u1ebfn n\u00e0y th\u00e0nh:';Blockly.LANG_COLOUR_PICKER_HELPURL="http://en.wikipedia.org/wiki/Color";Blockly.LANG_COLOUR_PICKER_TOOLTIP="Ch\u1ecdn m\u1ed9t m\u00e0u t\u1eeb b\u1ea3ng m\u00e0u.";Blockly.LANG_COLOUR_RANDOM_HELPURL="http://randomcolour.com";Blockly.LANG_COLOUR_RANDOM_TITLE="random colour";Blockly.LANG_COLOUR_RANDOM_TOOLTIP="Choose a colour at random.";Blockly.LANG_COLOUR_RGB_HELPURL="http://www.december.com/html/spec/colorper.html";
Blockly.LANG_COLOUR_RGB_TITLE="T\u1ea1o m\u00e0u t\u1eeb";Blockly.LANG_COLOUR_RGB_RED="m\u00e0u \u0111\u1ecf";Blockly.LANG_COLOUR_RGB_GREEN="m\u00e0u xanh l\u00e1 c\u00e2y";Blockly.LANG_COLOUR_RGB_BLUE="m\u00e0u xanh d\u01b0\u01a1ng";Blockly.LANG_COLOUR_RGB_TOOLTIP="T\u1ea1o m\u00e0u t\u1eeb ba m\u00e0u: \u0111\u1ecf, xanh l\u00e1 c\u00e2y,\nxanh d\u01b0\u01a1ng v\u1edbi s\u1ed1 l\u01b0\u1ee3ng c\u1ee5 th\u1ec3.\nM\u1ed7i s\u1ed1 ph\u1ea3i c\u00f3 gi\u00e1 tr\u1ecb t\u1eeb 0 \u0111\u1ebfn 100.";
Blockly.LANG_COLOUR_BLEND_HELPURL="http://meyerweb.com/eric/tools/color-blend/";Blockly.LANG_COLOUR_BLEND_TITLE="pha";Blockly.LANG_COLOUR_BLEND_COLOUR1="m\u00e0u 1";Blockly.LANG_COLOUR_BLEND_COLOUR2="m\u00e0u 2";Blockly.LANG_COLOUR_BLEND_RATIO="t\u1ec9 l\u1ec7";Blockly.LANG_COLOUR_BLEND_TOOLTIP="Pha hai m\u00e0u v\u1edbi nhau theo t\u1ec9 l\u1ec7 (0 - 100).";Blockly.LANG_CONTROLS_REPEAT_HELPURL="http://en.wikipedia.org/wiki/For_loop";Blockly.LANG_CONTROLS_REPEAT_TITLE_REPEAT="l\u1eb7p l\u1ea1i";
Blockly.LANG_CONTROLS_REPEAT_TITLE_TIMES="l\u1ea7n";Blockly.LANG_CONTROLS_REPEAT_INPUT_DO="th\u1ef1c hi\u1ec7n";Blockly.LANG_CONTROLS_REPEAT_TOOLTIP="Th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh v\u00e0i l\u1ea7n.";Blockly.LANG_CONTROLS_WHILEUNTIL_HELPURL="http://code.google.com/p/blockly/wiki/Repeat";Blockly.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE="l\u1eb7p l\u1ea1i trong\u00a0khi";Blockly.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL="l\u1eb7p l\u1ea1i cho \u0111\u1ebfn\u00a0khi";
Blockly.LANG_CONTROLS_WHILEUNTIL_INPUT_DO="th\u1ef1c hi\u1ec7n";Blockly.LANG_CONTROLS_WHILEUNTIL_TOOLTIP_WHILE="Mi\u1ec5n l\u00e0 \u0111i\u1ec1u ki\u1ec7n c\u00f2n \u0111\u00fang, th\u00ec th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh.";Blockly.LANG_CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL="Mi\u1ec5n l\u00e0 \u0111i\u1ec1u ki\u1ec7n c\u00f2n sai, th\u00ec th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh\nKhi \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang th\u00ec ng\u01b0ng.";Blockly.LANG_CONTROLS_FOR_HELPURL="http://en.wikipedia.org/wiki/For_loop";
Blockly.LANG_CONTROLS_FOR_INPUT_WITH="\u0111\u1ebfm theo";Blockly.LANG_CONTROLS_FOR_INPUT_VAR="x";Blockly.LANG_CONTROLS_FOR_INPUT_FROM="t\u1eeb";Blockly.LANG_CONTROLS_FOR_INPUT_TO="\u0111\u1ebfn";Blockly.LANG_CONTROLS_FOR_INPUT_BY="m\u1ed7i l\u1ea7n th\u00eam";Blockly.LANG_CONTROLS_FOR_INPUT_DO="th\u1ef1c hi\u1ec7n";Blockly.LANG_CONTROLS_FOR_TAIL="";Blockly.LANG_CONTROLS_FOR_TOOLTIP='\u0110\u1ebfm t\u1eeb s\u1ed1 \u0111\u1ea7u \u0111\u1ebfn s\u1ed1 cu\u1ed1i.\nKhi \u0111\u1ebfn m\u1ed7i s\u1ed1, g\u00e1n s\u1ed1 v\u00e0o bi\u1ebfn "%1"\nr\u1ed3i th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh.';
Blockly.LANG_CONTROLS_FOREACH_HELPURL="http://en.wikipedia.org/wiki/For_loop";Blockly.LANG_CONTROLS_FOREACH_INPUT_ITEM="v\u1edbi m\u1ed7i th\u00e0nh ph\u1ea7n";Blockly.LANG_CONTROLS_FOREACH_INPUT_VAR="x";Blockly.LANG_CONTROLS_FOREACH_INPUT_INLIST="trong danh s\u00e1ch";Blockly.LANG_CONTROLS_FOREACH_INPUT_INLIST_TAIL="";Blockly.LANG_CONTROLS_FOREACH_INPUT_DO="th\u1ef1c hi\u1ec7n";Blockly.LANG_CONTROLS_FOREACH_TOOLTIP='Trong m\u1ed9t danh s\u00e1ch, l\u1ea5y t\u1eebng th\u00e0nh ph\u1ea7n, g\u00e1n v\u00e0o\nbi\u1ebfn "%1", r\u1ed3i th\u1ef1c hi\u1ec7n m\u1ed9t s\u1ed1 l\u1ec7nh.';
Blockly.LANG_CONTROLS_FLOW_STATEMENTS_HELPURL="http://en.wikipedia.org/wiki/Control_flow";Blockly.LANG_CONTROLS_FLOW_STATEMENTS_INPUT_OFLOOP="v\u00f2ng l\u1eb7p";Blockly.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK="tho\u00e1t";Blockly.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE="sang l\u1ea7n l\u1eb7p ti\u1ebfp theo";Blockly.LANG_CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK="Tho\u00e1t kh\u1ecfi v\u00f2ng l\u1eb7p hi\u1ec7n t\u1ea1i.";Blockly.LANG_CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE="B\u1ecf qua ph\u1ea7n c\u00f2n l\u1ea1i trong v\u00f2ng l\u1eb7p n\u00e0y,\nv\u00e0 sang l\u1ea7n l\u1eb7p ti\u1ebfp theo.";
Blockly.LANG_CONTROLS_FLOW_STATEMENTS_WARNING="C\u1ea9n th\u1eadn:\nM\u1ea3nh n\u00e0y ch\u1ec9 c\u00f3 th\u1ebf d\u00f9ng\ntrong c\u00e1c v\u00f2ng l\u1eb7p.";Blockly.LANG_CONTROLS_IF_HELPURL="http://code.google.com/p/blockly/wiki/If_Then";Blockly.LANG_CONTROLS_IF_TOOLTIP_1="N\u1ebfu \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh.";Blockly.LANG_CONTROLS_IF_TOOLTIP_2="N\u1ebfu \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh \u0111\u1ea7u.\nN\u1ebfu sai, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh sau.";
Blockly.LANG_CONTROLS_IF_TOOLTIP_3="N\u1ebfu \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh \u0111\u1ea7u.\nN\u1ebfu kh\u00f4ng, n\u1ebfu \u0111i\u1ec1u ki\u1ec7n th\u1ee9 hai \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh th\u1ee9 hai.";Blockly.LANG_CONTROLS_IF_TOOLTIP_4="N\u1ebfu \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh \u0111\u1ea7u.\nN\u1ebfu kh\u00f4ng, n\u1ebfu \u0111i\u1ec1u ki\u1ec7n th\u1ee9 hai \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh th\u1ee9 hai.\nN\u1ebfu kh\u00f4ng \u0111i\u1ec1u ki\u1ec7n n\u00e0o \u0111\u00fang, th\u1ef1c hi\u1ec7n c\u00e1c l\u1ec7nh cu\u1ed1i c\u00f9ng.";
Blockly.LANG_CONTROLS_IF_MSG_IF="n\u1ebfu";Blockly.LANG_CONTROLS_IF_MSG_ELSEIF="n\u1ebfu kh\u00f4ng n\u1ebfu";Blockly.LANG_CONTROLS_IF_MSG_ELSE="n\u1ebfu kh\u00f4ng";Blockly.LANG_CONTROLS_IF_MSG_THEN="th\u1ef1c hi\u1ec7n";Blockly.LANG_CONTROLS_IF_IF_TITLE_IF="n\u1ebfu";Blockly.LANG_CONTROLS_IF_IF_TOOLTIP="Th\u00eam, b\u1ecf, ho\u1eb7c \u0111\u1ed5i th\u1ee9 t\u1ef1 c\u00e1c m\u1ea3nh con\n\u0111\u1ec3 t\u1ea1o c\u1ea5u tr\u00fac m\u1edbi cho m\u1ea3nh n\u1ebfu.";
Blockly.LANG_CONTROLS_IF_ELSEIF_TITLE_ELSEIF="n\u1ebfu kh\u00f4ng n\u1ebfu";Blockly.LANG_CONTROLS_IF_ELSEIF_TOOLTIP="Th\u00eam m\u1ed9t \u0111i\u1ec1u ki\u1ec7n v\u00e0o m\u1ea3nh n\u1ebfu.";Blockly.LANG_CONTROLS_IF_ELSE_TITLE_ELSE="n\u1ebfu kh\u00f4ng";Blockly.LANG_CONTROLS_IF_ELSE_TOOLTIP="Cu\u1ed1i c\u00f9ng, khi kh\u00f4ng \u0111i\u1ec1u ki\u1ec7n n\u00e0o \u0111\u00fang.";Blockly.LANG_LOGIC_COMPARE_HELPURL="http://en.wikipedia.org/wiki/Inequality_(mathematics)";
Blockly.LANG_LOGIC_COMPARE_TOOLTIP_EQ='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true) n\u1ebfu gi\u00e1 tr\u1ecb hai \u0111\u1ea7u v\u00e0o b\u1eb1ng nhau.';Blockly.LANG_LOGIC_COMPARE_TOOLTIP_NEQ='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true) n\u1ebfu gi\u00e1 tr\u1ecb hai \u0111\u1ea7u v\u00e0o kh\u00f4ng b\u1eb1ng nhau.';Blockly.LANG_LOGIC_COMPARE_TOOLTIP_LT='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true)\nn\u1ebfu \u0111\u1ea7u v\u00e0o th\u1ee9 nh\u1ea5t nh\u1ecf h\u01a1n \u0111\u1ea7u v\u00e0o th\u1ee9 hai.';
Blockly.LANG_LOGIC_COMPARE_TOOLTIP_LTE='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true)\nn\u1ebfu \u0111\u1ea7u v\u00e0o th\u1ee9 nh\u1ea5t nh\u1ecf h\u01a1n ho\u1eb7c b\u1eb1ng \u0111\u1ea7u v\u00e0o th\u1ee9 hai.';Blockly.LANG_LOGIC_COMPARE_TOOLTIP_GT='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true)\nn\u1ebfu \u0111\u1ea7u v\u00e0o th\u1ee9 nh\u1ea5t l\u1edbn h\u01a1n \u0111\u1ea7u v\u00e0o th\u1ee9 hai.';Blockly.LANG_LOGIC_COMPARE_TOOLTIP_GTE='Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb "\u0111\u00fang" (true)\nn\u1ebfu \u0111\u1ea7u v\u00e0o th\u1ee9 nh\u1ea5t l\u1edbn h\u01a1n ho\u1eb7c b\u1eb1ng \u0111\u1ea7u v\u00e0o th\u1ee9 hai.';
Blockly.LANG_LOGIC_OPERATION_HELPURL="http://code.google.com/p/blockly/wiki/And_Or";Blockly.LANG_LOGIC_OPERATION_AND="v\u00e0";Blockly.LANG_LOGIC_OPERATION_OR="ho\u1eb7c";Blockly.LANG_LOGIC_OPERATION_TOOLTIP_AND='Ho\u00e0n tr\u1ea3 "\u0111\u00fang" (true) n\u1ebfu c\u1ea3 hai \u0111\u1ea7u v\u00e0o \u0111\u1ec1u \u0111\u00fang.';Blockly.LANG_LOGIC_OPERATION_TOOLTIP_OR='Ho\u00e0n tr\u1ea3 "\u0111\u00fang" (true) n\u1ebfu \u00edt nh\u1ea5t m\u1ed9t trong hai \u0111\u1ea7u v\u00e0o \u0111\u00fang.';
Blockly.LANG_LOGIC_NEGATE_HELPURL="http://code.google.com/p/blockly/wiki/Not";Blockly.LANG_LOGIC_NEGATE_INPUT_NOT="kh\u00f4ng";Blockly.LANG_LOGIC_NEGATE_TOOLTIP='Ho\u00e0n tr\u1ea3 "\u0111\u00fang" (true) n\u1ebfu \u0111\u1ea7u v\u00e0o sai.\nHo\u00e0n tr\u1ea3 "sai" (false) n\u1ebfu \u0111\u1ea7u v\u00e0o \u0111\u00fang.';Blockly.LANG_LOGIC_BOOLEAN_HELPURL="http://code.google.com/p/blockly/wiki/True_False";Blockly.LANG_LOGIC_BOOLEAN_TRUE="\u0111\u00fang";Blockly.LANG_LOGIC_BOOLEAN_FALSE="sai";
Blockly.LANG_LOGIC_BOOLEAN_TOOLTIP='Ho\u00e0n tr\u1ea3 "\u0111\u00fang" ho\u1eb7c "sai".';Blockly.LANG_LOGIC_NULL_HELPURL="http://en.wikipedia.org/wiki/Nullable_type";Blockly.LANG_LOGIC_NULL="null";Blockly.LANG_LOGIC_NULL_TOOLTIP="Returns null.";Blockly.LANG_LOGIC_TERNARY_HELPURL="http://en.wikipedia.org/wiki/%3F:";Blockly.LANG_LOGIC_TERNARY_CONDITION="ki\u1ec3m tra";Blockly.LANG_LOGIC_TERNARY_IF_TRUE="n\u1ebfu \u0111\u00fang";Blockly.LANG_LOGIC_TERNARY_IF_FALSE="n\u1ebfu sai";
Blockly.LANG_LOGIC_TERNARY_TOOLTIP='Ki\u1ec3m tra \u0111i\u1ec1u ki\u1ec7n. N\u1ebfu \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang, ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb t\u1eeb m\u1ec7nh \u0111\u1ec1 "n\u1ebfu \u0111\u00fang"\nn\u1ebfu kh\u00f4ng \u0111\u00fang, ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb t\u1eeb m\u1ec7nh \u0111\u1ec1 "n\u1ebfu sai".';Blockly.LANG_MATH_NUMBER_HELPURL="http://en.wikipedia.org/wiki/Number";Blockly.LANG_MATH_NUMBER_TOOLTIP="M\u1ed9t con s\u1ed1.";
Blockly.LANG_MATH_ARITHMETIC_HELPURL="http://en.wikipedia.org/wiki/Arithmetic";Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_ADD="Ho\u00e0n tr\u1ea3 t\u1ed5ng c\u1ee7a hai con s\u1ed1.";Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_MINUS="Ho\u00e0n tr\u1ea3 hi\u1ec7u c\u1ee7a hai con s\u1ed1.";Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_MULTIPLY="Ho\u00e0n tr\u1ea3 t\u00edch c\u1ee7a hai con s\u1ed1.";Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_DIVIDE="Ho\u00e0n tr\u1ea3 th\u01b0\u01a1ng c\u1ee7a hai con s\u1ed1.";
Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_POWER="Ho\u00e0n tr\u1ea3 s\u1ed1 l\u0169y th\u1eeba v\u1edbi s\u1ed1 th\u1ee9 nh\u1ea5t l\u00e0 c\u01a1 s\u1ed1\nv\u00e0 s\u1ed1 th\u1ee9 hai l\u00e0 s\u1ed1 m\u0169.";Blockly.LANG_MATH_SINGLE_HELPURL="http://en.wikipedia.org/wiki/Square_root";Blockly.LANG_MATH_SINGLE_OP_ROOT="c\u0103n b\u1eadt hai";Blockly.LANG_MATH_SINGLE_OP_ABSOLUTE="gi\u00e1 tr\u1ecb tuy\u1ec7t \u0111\u1ed1i";Blockly.LANG_MATH_SINGLE_TOOLTIP_ROOT="Ho\u00e0n tr\u1ea3 c\u0103n b\u1eadt hai c\u1ee7a s\u1ed1 \u0111\u1ea7u v\u00e0o.";
Blockly.LANG_MATH_SINGLE_TOOLTIP_ABS="Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb tuy\u1ec7t \u0111\u1ed1i c\u1ee7a s\u1ed1 \u0111\u1ea7u v\u00e0o.";Blockly.LANG_MATH_SINGLE_TOOLTIP_NEG="\u0110\u1ed5i d\u1ea5u c\u1ee7a s\u1ed1 \u0111\u1ea7u v\u00e0o: \u00e2m th\u00e0nh d\u01b0\u01a1ng v\u00e0 d\u01b0\u01a1ng th\u00e0nh \u00e2m, v\u00e0 ho\u00e0n tr\u1ea3 s\u1ed1 m\u1edbi.";Blockly.LANG_MATH_SINGLE_TOOLTIP_LN="Ho\u00e0n tr\u1ea3 l\u00f4garit t\u1ef1 nhi\u00ean c\u1ee7a s\u1ed1 \u0111\u1ea7u v\u00e0o.";
Blockly.LANG_MATH_SINGLE_TOOLTIP_LOG10="Ho\u00e0n tr\u1ea3 l\u00f4garit c\u01a1 s\u1ed1 10 c\u1ee7a s\u1ed1 \u0111\u1ea7u v\u00e0o.";Blockly.LANG_MATH_SINGLE_TOOLTIP_EXP="Ho\u00e0n tr\u1ea3 l\u0169y th\u1eeba c\u1ee7a s\u1ed1 e v\u1edbi s\u1ed1 m\u0169 \u0111\u1ea7u v\u00e0o.";Blockly.LANG_MATH_SINGLE_TOOLTIP_POW10="Ho\u00e0n tr\u1ea3 l\u0169y th\u1eeba c\u1ee7a s\u1ed1 10 v\u1edbi s\u1ed1 m\u0169 \u0111\u1ea7u v\u00e0o.";Blockly.LANG_MATH_TRIG_HELPURL="http://en.wikipedia.org/wiki/Trigonometric_functions";
Blockly.LANG_MATH_TRIG_TOOLTIP_SIN="Ho\u00e0n tr\u1ea3 Sin c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";Blockly.LANG_MATH_TRIG_TOOLTIP_COS="Ho\u00e0n tr\u1ea3 Cos c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";Blockly.LANG_MATH_TRIG_TOOLTIP_TAN="Ho\u00e0n tr\u1ea3 Tang c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";Blockly.LANG_MATH_TRIG_TOOLTIP_ASIN="Ho\u00e0n tr\u1ea3 Arcsin c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";Blockly.LANG_MATH_TRIG_TOOLTIP_ACOS="Ho\u00e0n tr\u1ea3 Arccos c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";
Blockly.LANG_MATH_TRIG_TOOLTIP_ATAN="Ho\u00e0n tr\u1ea3 Arctang c\u1ee7a m\u1ed9t g\u00f3c (theo \u0111\u1ed9).";Blockly.LANG_MATH_CONSTANT_HELPURL="http://en.wikipedia.org/wiki/Mathematical_constant";Blockly.LANG_MATH_CONSTANT_TOOLTIP="Ho\u00e0n tr\u1ea3 c\u00e1c \u0111\u1eb3ng s\u1ed1 th\u01b0\u1eddng g\u1eb7p: \u03c0 (3.141\u2026), e (2.718\u2026), \u03c6 (1.618\u2026),\nsqrt(2) (1.414\u2026), sqrt(\u00bd) (0.707\u2026), or \u221e (infinity).";Blockly.LANG_MATH_IS_EVEN="ch\u1eb5n";
Blockly.LANG_MATH_IS_ODD="l\u1ebb";Blockly.LANG_MATH_IS_PRIME="l\u00e0 s\u1ed1 nguy\u00ean t\u1ed1";Blockly.LANG_MATH_IS_WHOLE="l\u00e0 s\u1ed1 nguy\u00ean";Blockly.LANG_MATH_IS_POSITIVE="l\u00e0 s\u1ed1 d\u01b0\u01a1ng";Blockly.LANG_MATH_IS_NEGATIVE="l\u00e0 s\u1ed1 \u00e2m";Blockly.LANG_MATH_IS_DIVISIBLE_BY="chia h\u1ebft cho";Blockly.LANG_MATH_IS_TOOLTIP="Ki\u1ec3m tra con s\u1ed1 xem n\u00f3 c\u00f3 ph\u1ea3i l\u00e0 s\u1ed1 ch\u1eb5n, l\u1ebb, nguy\u00ean t\u1ed1, nguy\u00ean, d\u01b0\u01a1ng, \u00e2m, \nhay xem n\u00f3 c\u00f3 chia h\u1ebft cho s\u1ed1 \u0111\u1ea7u v\u00e0o hay kh\u00f4ng. Ho\u00e0n tr\u1ea3 \u0111\u00fang hay sai.";
Blockly.LANG_MATH_CHANGE_HELPURL="http://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";Blockly.LANG_MATH_CHANGE_TITLE_CHANGE="c\u1ed9ng v\u00e0o";Blockly.LANG_MATH_CHANGE_TITLE_ITEM="v\u1eadt";Blockly.LANG_MATH_CHANGE_INPUT_BY="gi\u00e1 tr\u1ecb";Blockly.LANG_MATH_CHANGE_TOOLTIP='C\u1ed9ng s\u1ed1 \u0111\u1ea7u v\u00e0o v\u00e0o bi\u1ebfn "%1".';Blockly.LANG_MATH_ROUND_HELPURL="http://en.wikipedia.org/wiki/Rounding";Blockly.LANG_MATH_ROUND_TOOLTIP="L\u00e0m tr\u00f2n l\u00ean ho\u1eb7c tr\u00f2n xu\u1ed1ng s\u1ed1 \u0111\u1ea7u v\u00e0o.";
Blockly.LANG_MATH_ROUND_OPERATOR_ROUND="l\u00e0m tr\u00f2n";Blockly.LANG_MATH_ROUND_OPERATOR_ROUNDUP="l\u00e0m tr\u00f2n l\u00ean";Blockly.LANG_MATH_ROUND_OPERATOR_ROUNDDOWN="l\u00e0m tr\u00f2n xu\u1ed1ng";Blockly.LANG_MATH_ONLIST_HELPURL="";Blockly.LANG_MATH_ONLIST_OPERATOR_SUM="t\u1ed5ng c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_MIN="s\u1ed1 nh\u1ecf nh\u1ea5t c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_MAX="s\u1ed1 l\u1edbn nh\u00e2t c\u1ee7a m\u1ed9t danh s\u00e1ch";
Blockly.LANG_MATH_ONLIST_OPERATOR_AVERAGE="gi\u00e1 tr\u1ecb trung b\u00ecnh c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_MEDIAN="s\u1ed1 trung v\u1ecb c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_MODE="c\u00e1c mode c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_STD_DEV="\u0111\u1ed9 l\u1ec7ch chu\u1ea9n c\u1ee7a m\u1ed9t danh s\u00e1ch";Blockly.LANG_MATH_ONLIST_OPERATOR_RANDOM="m\u1ed9t s\u1ed1 b\u1ea5t k\u1ef3 c\u1ee7a m\u1ed9t danh s\u00e1ch";
Blockly.LANG_MATH_ONLIST_TOOLTIP_SUM="Ho\u00e0n tr\u1ea3 t\u1ed5ng s\u1ed1 c\u1ee7a t\u1ea5t c\u1ea3 c\u00e1c s\u1ed1 trong danh s\u00e1ch.";Blockly.LANG_MATH_ONLIST_TOOLTIP_MIN="Ho\u00e0n tr\u1ea3 s\u1ed1 nh\u1ecf nh\u1ea5t trong t\u1ea5t c\u1ea3 c\u00e1c s\u1ed1 trong danh s\u00e1ch.";Blockly.LANG_MATH_ONLIST_TOOLTIP_MAX="Ho\u00e0n tr\u1ea3 s\u1ed1 l\u1edbn nh\u1ea5t trong t\u1ea5t c\u1ea3 c\u00e1c s\u1ed1 trong danh s\u00e1ch.";Blockly.LANG_MATH_ONLIST_TOOLTIP_AVERAGE="Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb trung b\u00ecnh t\u1eeb c\u1ee7a danh s\u00e1ch s\u1ed1.";
Blockly.LANG_MATH_ONLIST_TOOLTIP_MEDIAN="Ho\u00e0n tr\u1ea3 s\u1ed1 trung v\u1ecb c\u1ee7a danh s\u00e1ch s\u1ed1.";Blockly.LANG_MATH_ONLIST_TOOLTIP_MODE="Ho\u00e0n tr\u1ea3 c\u00e1c s\u1ed1 c\u00f3 m\u1eb7t nhi\u1ec1u nh\u1ea5t trong danh s\u00e1ch.";Blockly.LANG_MATH_ONLIST_TOOLTIP_STD_DEV="Ho\u00e0n tr\u1ea3 \u0111\u1ed9 l\u1ec7ch chu\u1ea9n c\u1ee7a danh s\u00e1ch s\u1ed1.";Blockly.LANG_MATH_ONLIST_TOOLTIP_RANDOM="Ho\u00e0n tr\u1ea3 m\u1ed9t s\u1ed1 b\u1ea5t k\u1ef3 t\u1eeb c\u00e1c s\u1ed1 trong danh s\u00e1ch.";
Blockly.LANG_MATH_MODULO_HELPURL="http://en.wikipedia.org/wiki/Modulo_operation";Blockly.LANG_MATH_MODULO_INPUT_DIVIDEND="s\u1ed1 d\u01b0 c\u1ee7a";Blockly.LANG_MATH_MODULO_TOOLTIP="Chia s\u1ed1 th\u1ee9 nh\u1ea5t cho s\u1ed1 th\u1ee9 hai r\u1ed3i ho\u00e0n tr\u1ea3 s\u1ed1 d\u01b0 t\u1eeb.";Blockly.LANG_MATH_CONSTRAIN_HELPURL="http://en.wikipedia.org/wiki/Clamping_%28graphics%29";Blockly.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN="gi\u1edbi h\u1ea1n";Blockly.LANG_MATH_CONSTRAIN_INPUT_LOW="kh\u00f4ng d\u01b0\u1edbi";
Blockly.LANG_MATH_CONSTRAIN_INPUT_HIGH="kh\u00f4ng h\u01a1n";Blockly.LANG_MATH_CONSTRAIN_TOOLTIP="Gi\u1edbi h\u1ea1n s\u1ed1 \u0111\u1ea7u v\u00e0o \u0111\u1ec3 kh\u00f4ng d\u01b0\u1edbi s\u1ed1 th\u1ee9 nh\u1ea5t v\u00e0 kh\u00f4ng h\u01a1n s\u1ed1 th\u1ee9 hai.";Blockly.LANG_MATH_RANDOM_INT_HELPURL="http://en.wikipedia.org/wiki/Random_number_generation";Blockly.LANG_MATH_RANDOM_INT_INPUT_FROM="M\u1ed9t s\u1ed1 nguy\u00ean b\u1ea5t k\u1ef3 t\u1eeb";Blockly.LANG_MATH_RANDOM_INT_INPUT_TO="\u0111\u1ebfn";
Blockly.LANG_MATH_RANDOM_INT_TOOLTIP="Ho\u00e0n tr\u1ea3 m\u1ed9t s\u1ed1 nguy\u00ean b\u1ea5t k\u1ef3\nl\u1edbn h\u01a1n ho\u1eb7c b\u1eb1ng s\u1ed1 \u0111\u1ea7u v\u00e0 nh\u1ecf h\u01a1n ho\u1eb7c b\u1eb1ng s\u1ed1 sau.";Blockly.LANG_MATH_RANDOM_FLOAT_HELPURL="http://en.wikipedia.org/wiki/Random_number_generation";Blockly.LANG_MATH_RANDOM_FLOAT_TITLE_RANDOM="ph\u00e2n s\u1ed1 b\u1ea5t k\u1ef3";Blockly.LANG_MATH_RANDOM_FLOAT_TOOLTIP="Ho\u00e0n tr\u1ea3 m\u1ed9t ph\u00e2n s\u1ed1 b\u1ea5t k\u1ef3\nkh\u00f4ng nh\u1ecf h\u01a1n 0.0 v\u00e0 kh\u00f4ng l\u1edbn h\u01a1n 1.0.";
Blockly.LANG_TEXT_TEXT_HELPURL="http://en.wikipedia.org/wiki/String_(computer_science)";Blockly.LANG_TEXT_TEXT_TOOLTIP="M\u1ed9t k\u00fd t\u1ef1, m\u1ed9t t\u1eeb, hay m\u1ed9t d\u00f2ng.";Blockly.LANG_TEXT_JOIN_HELPURL="";Blockly.LANG_TEXT_JOIN_TITLE_CREATEWITH="t\u1ea1o v\u0103n b\u1ea3n t\u1eeb";Blockly.LANG_TEXT_JOIN_TOOLTIP="T\u1ea1o m\u1ed9t v\u0103n b\u1ea3n t\u1eeb c\u00e1c th\u00e0nh ph\u1ea7n.";Blockly.LANG_TEXT_CREATE_JOIN_TITLE_JOIN="k\u1ebft n\u1ed1i";
Blockly.LANG_TEXT_CREATE_JOIN_TOOLTIP="Th\u00eam, b\u1ecf, ho\u1eb7c s\u1eafp x\u1ebfp l\u1ea1i c\u00e1c th\u00e0nh ph\u1ea7n \u0111\u1ec3 t\u1ea1o d\u1ef1ng m\u1ea3nh v\u0103n b\u1ea3n n\u00e0y.";Blockly.LANG_TEXT_CREATE_JOIN_ITEM_TITLE_ITEM="v\u1eadt";Blockly.LANG_TEXT_CREATE_JOIN_ITEM_TOOLTIP="th\u00eam v\u1eadt m\u1edbi v\u00e0o v\u0103n b\u1ea3n.";Blockly.LANG_TEXT_APPEND_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_APPEND_TO="\u1edf cu\u1ed1i";
Blockly.LANG_TEXT_APPEND_APPENDTEXT="th\u00eam v\u0103n b\u1ea3n";Blockly.LANG_TEXT_APPEND_VARIABLE="v\u1eadt";Blockly.LANG_TEXT_APPEND_TOOLTIP='Th\u00eam m\u1ed9t m\u1ea3ng v\u0103n b\u1ea3n v\u00e0o bi\u1ebfn "%1".';Blockly.LANG_TEXT_LENGTH_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_LENGTH_INPUT_LENGTH="\u0111\u1ed9 d\u00e0i c\u1ee7a";Blockly.LANG_TEXT_LENGTH_TOOLTIP="Ho\u00e0n tr\u1ea3 s\u1ed1 l\u01b0\u1ee3ng k\u00fd t\u1ef1 (k\u1ec3 c\u1ea3 kho\u1ea3ng tr\u1eafng)\ntrong v\u0103n b\u1ea3n \u0111\u1ea7u v\u00e0o.";
Blockly.LANG_TEXT_ISEMPTY_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_ISEMPTY_INPUT_ISEMPTY="tr\u1ed1ng kh\u00f4ng";Blockly.LANG_TEXT_ISEMPTY_TOOLTIP="Ho\u00e0n tr\u1ea3 \u201c\u0111\u00fang n\u1ebfu v\u0103n b\u1ea3n kh\u00f4ng c\u00f3 k\u00fd t\u1ef1 n\u00e0o.";Blockly.LANG_TEXT_INDEXOF_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
Blockly.LANG_TEXT_INDEXOF_INPUT_INTEXT="trong v\u0103n b\u1ea3n";Blockly.LANG_TEXT_INDEXOF_OPERATOR_FIRST="t\u00ecm s\u1ef1 c\u00f3 m\u1eb7t \u0111\u1ea7u ti\u00ean c\u1ee7a";Blockly.LANG_TEXT_INDEXOF_OPERATOR_LAST="t\u00ecm s\u1ef1 c\u00f3 m\u1eb7t cu\u1ed1i c\u00f9ng c\u1ee7a";Blockly.LANG_TEXT_INDEXOF_TOOLTIP="Ho\u00e0n tr\u1ea3 v\u1ecb tr\u00ed xu\u1ea5t hi\u1ec7n \u0111\u1ea7u/cu\u1ed1i\nc\u1ee7a v\u0103n b\u1ea3n th\u1ee9 nh\u1ea5t trong v\u0103n b\u1ea3n th\u1ee9 hai.\nN\u1ebfu kh\u00f4ng t\u00ecm th\u1ea5y th\u00ec ho\u00e0n tr\u1ea3 s\u1ed1 0.";
Blockly.LANG_TEXT_CHARAT_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";Blockly.LANG_TEXT_CHARAT_INPUT_INTEXT="trong v\u0103n b\u1ea3n";Blockly.LANG_TEXT_CHARAT_FROM_START="l\u1ea5y k\u00fd t\u1ef1 th\u1ee9";Blockly.LANG_TEXT_CHARAT_FROM_END="l\u1ea5y t\u1eeb ph\u00eda cu\u1ed1i, k\u00fd t\u1ef1 th\u1ee9";Blockly.LANG_TEXT_CHARAT_FIRST="l\u1ea5y k\u00fd t\u1ef1 \u0111\u1ea7u ti\u00ean";
Blockly.LANG_TEXT_CHARAT_LAST="l\u1ea5y k\u00fd t\u1ef1 cu\u1ed1i c\u00f9ng";Blockly.LANG_TEXT_CHARAT_RANDOM="l\u1ea5y k\u00fd t\u1ef1 b\u1ea5t k\u1ef3";Blockly.LANG_TEXT_CHARAT_TOOLTIP="Ho\u00e0n tr\u1ea3 k\u00fd t\u1ef1 \u1edf v\u1ecb tr\u00ed \u0111\u1eb7t ra.";Blockly.LANG_TEXT_SUBSTRING_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";Blockly.LANG_TEXT_SUBSTRING_INPUT_IN_TEXT="trong v\u0103n b\u1ea3n";
Blockly.LANG_TEXT_SUBSTRING_INPUT_AT1="l\u1ea5y t\u1eeb";Blockly.LANG_TEXT_SUBSTRING_INPUT_AT2="\u0111\u1ebfn";Blockly.LANG_TEXT_SUBSTRING_FROM_START="k\u00fd t\u1ef1 th\u1ee9";Blockly.LANG_TEXT_SUBSTRING_FROM_END="t\u1eeb ph\u00eda cu\u1ed1i, k\u00fd t\u1ef1 th\u1ee9";Blockly.LANG_TEXT_SUBSTRING_FIRST="k\u00fd t\u1ef1 \u0111\u1ea7u ti\u00ean";Blockly.LANG_TEXT_SUBSTRING_LAST="k\u00fd t\u1ef1 cu\u1ed1i c\u00f9ng";Blockly.LANG_TEXT_SUBSTRING_TOOLTIP="Ho\u00e0n tr\u1ea3 m\u1ed9t m\u1ea3ng k\u00fd t\u1ef1 \u1ea5n \u0111\u1ecbnh t\u1eeb trong v\u0103n b\u1ea3n.";
Blockly.LANG_TEXT_CHANGECASE_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_CHANGECASE_OPERATOR_UPPERCASE="th\u00e0nh CH\u1eee IN HOA";Blockly.LANG_TEXT_CHANGECASE_OPERATOR_LOWERCASE="th\u00e0nh ch\u1eef th\u01b0\u1eddng";Blockly.LANG_TEXT_CHANGECASE_OPERATOR_TITLECASE="th\u00e0nh Ch\u1eef In \u0110\u1ea7u M\u1ed7i T\u1eeb";Blockly.LANG_TEXT_CHANGECASE_TOOLTIP="Ho\u00e0n tr\u1ea3 v\u0103n b\u1ea3n sau khi chuy\u1ec3n \u0111\u1ed5i ch\u1eef in hoa hay th\u01b0\u1eddng.";
Blockly.LANG_TEXT_TRIM_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_TRIM_OPERATOR_BOTH="x\u00f3a kho\u1ea3ng tr\u1eafng t\u1eeb b\u00ean tr\u00e1i v\u00e0 ph\u1ea3i";Blockly.LANG_TEXT_TRIM_OPERATOR_LEFT="x\u00f3a kho\u1ea3ng tr\u1eafng t\u1eeb b\u00ean tr\u00e1i";Blockly.LANG_TEXT_TRIM_OPERATOR_RIGHT="x\u00f3a kho\u1ea3ng tr\u1eafng t\u1eeb b\u00ean ph\u1ea3i";Blockly.LANG_TEXT_TRIM_TOOLTIP="Ho\u00e0n tr\u1ea3 b\u1ea3n sao c\u1ee7a v\u0103n b\u1ea3n sau khi\nx\u00f3a kho\u1ea3ng tr\u1eafng t\u1eeb m\u1ed9t ho\u1eb7c hai b\u00ean.";
Blockly.LANG_TEXT_PRINT_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_TEXT_PRINT_TITLE_PRINT="in l\u00ean m\u00e0ng h\u00ecnh";Blockly.LANG_TEXT_PRINT_TOOLTIP="In ra m\u00e0ng h\u00ecnh m\u1ed9t v\u0103n b\u1ea3n, con s\u1ed1, hay m\u1ed9t gi\u00e1 tr\u1ecb \u0111\u1ea7u v\u00e0o kh\u00e1c.";Blockly.LANG_TEXT_PROMPT_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode92.html";Blockly.LANG_TEXT_PROMPT_TYPE_TEXT="Xin ng\u01b0\u1eddi d\u00f9ng nh\u1eadp v\u00e0o v\u0103n b\u1ea3n v\u1edbi d\u00f2ng h\u01b0\u1edbng d\u1eabn";
Blockly.LANG_TEXT_PROMPT_TYPE_NUMBER="Xin ng\u01b0\u1eddi d\u00f9ng nh\u1eadp v\u00e0o con s\u1ed1 v\u1edbi d\u00f2ng h\u01b0\u1edbng d\u1eabn";Blockly.LANG_TEXT_PROMPT_TOOLTIP_NUMBER="Xin ng\u01b0\u1eddi d\u00f9ng nh\u1eadp v\u00e0o m\u1ed9t con s\u1ed1.";Blockly.LANG_TEXT_PROMPT_TOOLTIP_TEXT="Xin ng\u01b0\u1eddi d\u00f9ng nh\u1eadp v\u00e0o m\u1ed9t v\u0103n b\u1ea3n.";Blockly.LANG_LISTS_CREATE_EMPTY_HELPURL="http://en.wikipedia.org/wiki/Linked_list#Empty_lists";
Blockly.LANG_LISTS_CREATE_EMPTY_TITLE="t\u1ea1o danh s\u00e1ch tr\u1ed1ng";Blockly.LANG_LISTS_CREATE_EMPTY_TOOLTIP="Ho\u00e0n tr\u1ea3 m\u1ed9t danh s\u00e1ch, v\u1edbi \u0111\u1ed9 d\u00e0i 0, kh\u00f4ng c\u00f3 th\u00e0nh t\u1ed1 n\u00e0o c\u1ea3";Blockly.LANG_LISTS_CREATE_WITH_INPUT_WITH="t\u1ea1o danh s\u00e1ch g\u1ed3m";Blockly.LANG_LISTS_CREATE_WITH_TOOLTIP="T\u1ea1o m\u1ed9t danh s\u00e1ch bao g\u1ed3m nhi\u1ec1u v\u1eadts, v\u1edbi m\u1ed9t s\u1ed1 l\u01b0\u1ee3ng b\u1ea5t k\u1ef3.";
Blockly.LANG_LISTS_CREATE_WITH_CONTAINER_TITLE_ADD="danh s\u00e1ch";Blockly.LANG_LISTS_CREATE_WITH_CONTAINER_TOOLTIP="Th\u00eam, b\u1ecf, ho\u1eb7c s\u1eafp x\u1ebfp l\u1ea1i c\u00e1c th\u00e0nh ph\u1ea7n \u0111\u1ec3 t\u1ea1o d\u1ef1ng m\u1ea3nh danh s\u00e1ch n\u00e0y.";Blockly.LANG_LISTS_CREATE_WITH_ITEM_TITLE="v\u1eadt";Blockly.LANG_LISTS_CREATE_WITH_ITEM_TOOLTIP="Th\u00eam v\u1eadt v\u00e0o danh s\u00e1ch.";Blockly.LANG_LISTS_REPEAT_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
Blockly.LANG_LISTS_REPEAT_INPUT_WITH="t\u1ea1o danh s\u00e1ch g\u1ed3m m\u1ed9t v\u1eadt";Blockly.LANG_LISTS_REPEAT_INPUT_REPEATED="l\u1eb7p l\u1ea1i";Blockly.LANG_LISTS_REPEAT_INPUT_TIMES="l\u1ea7n";Blockly.LANG_LISTS_REPEAT_TOOLTIP="T\u1ea1o danh s\u00e1ch g\u1ed3m m\u1ed9t s\u1ed1 l\u01b0\u1ee3ng v\u1eadt nh\u1ea5t \u0111\u1ecbnh\nv\u1edbi m\u1ed7i v\u1eadt \u0111\u1ec1u gi\u1ed1ng nhau.";Blockly.LANG_LISTS_LENGTH_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";
Blockly.LANG_LISTS_LENGTH_INPUT_LENGTH="\u0111\u1ed9 d\u00e0i c\u1ee7a";Blockly.LANG_LISTS_LENGTH_TOOLTIP="Ho\u00e0n tr\u1ea3 \u0111\u1ed9 d\u00e0i c\u1ee7a m\u1ed9t danh s\u00e1ch.";Blockly.LANG_LISTS_IS_EMPTY_HELPURL="http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode91.html";Blockly.LANG_LISTS_INPUT_IS_EMPTY="tr\u1ed1ng r\u1ed7ng";Blockly.LANG_LISTS_TOOLTIP='Ho\u00e0n tr\u1ea3 \u201c\u0111\u00fang" n\u1ebfu danh s\u00e1ch kh\u00f4ng c\u00f3 th\u00e0nh t\u1eed n\u00e0o.';
Blockly.LANG_LISTS_INDEX_OF_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";Blockly.LANG_LISTS_INDEX_OF_INPUT_IN_LIST="trong danh s\u00e1ch";Blockly.LANG_LISTS_INDEX_OF_FIRST="t\u00ecm s\u1ef1 c\u00f3 m\u1eb7t \u0111\u1ea7u ti\u00ean c\u1ee7a v\u1eadt";Blockly.LANG_LISTS_INDEX_OF_LAST="t\u00ecm s\u1ef1 c\u00f3 m\u1eb7t cu\u1ed1i c\u00f9ng c\u1ee7a v\u1eadt";Blockly.LANG_LISTS_INDEX_OF_TOOLTIP="Ho\u00e0n tr\u1ea3 v\u1ecb tr\u00ed xu\u1ea5t hi\u1ec7n \u0111\u1ea7u/cu\u1ed1i\nc\u1ee7a v\u1eadt trong danh s\u00e1ch.\nN\u1ebfu kh\u00f4ng t\u00ecm th\u1ea5y th\u00ec ho\u00e0n tr\u1ea3 s\u1ed1 0.";
Blockly.LANG_LISTS_GET_INDEX_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";Blockly.LANG_LISTS_GET_INDEX_GET="l\u1ea5y th\u00e0nh t\u1ed1";Blockly.LANG_LISTS_GET_INDEX_GET_REMOVE="l\u1ea5y v\u00e0 x\u00f3a th\u00e0nh t\u1ed1";Blockly.LANG_LISTS_GET_INDEX_REMOVE="x\u00f3a th\u00e0nh t\u1ed1";Blockly.LANG_LISTS_GET_INDEX_FROM_START="th\u1ee9";Blockly.LANG_LISTS_GET_INDEX_FROM_END="(\u0111\u1ebfm t\u1eeb cu\u1ed1i) th\u1ee9";
Blockly.LANG_LISTS_GET_INDEX_FIRST="\u0111\u1ea7u ti\u00ean";Blockly.LANG_LISTS_GET_INDEX_LAST="cu\u1ed1i c\u00f9ng";Blockly.LANG_LISTS_GET_INDEX_RANDOM="b\u1ea5t k\u1ef3";Blockly.LANG_LISTS_GET_INDEX_INPUT_IN_LIST="trong danh s\u00e1ch";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_FROM_START="Ho\u00e0n tr\u1ea3 th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean.";
Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_FROM_END="Ho\u00e0n tr\u1ea3 th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_FIRST="Ho\u00e0n tr\u1ea3 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean trong danh s\u00e1ch.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_LAST="Ho\u00e0n tr\u1ea3 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng trong danh s\u00e1ch.";
Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_RANDOM="Ho\u00e0n tr\u1ea3 m\u1ed9t th\u00e0nh t\u1ed1 b\u1ea5t k\u1ef3 trong danh s\u00e1ch.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_START="Ho\u00e0n tr\u1ea3 v\u00e0 x\u00f3a th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_END="Ho\u00e0n tr\u1ea3 v\u00e0 x\u00f3a th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng.";
Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST="Ho\u00e0n tr\u1ea3 v\u00e0 x\u00f3a th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean trong danh s\u00e1ch.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST="Ho\u00e0n tr\u1ea3 v\u00e0 x\u00f3a th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng trong danh s\u00e1ch.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM="Ho\u00e0n tr\u1ea3 v\u00e0 x\u00f3a m\u1ed9tth\u00e0nh t\u1ed1 b\u1ea5t k\u1ef3 trong danh s\u00e1ch.";
Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_START="X\u00f3a th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_END="X\u00f3a th\u00e0nh t\u1ed1 trong danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\nS\u1ed1 1 l\u00e0 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST="X\u00f3a th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean trong danh s\u00e1ch.";
Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST="X\u00f3a th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng trong danh s\u00e1ch.";Blockly.LANG_LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM="X\u00f3a th\u00e0nh t\u1ed1 b\u1ea5t k\u1ef3 trong danh s\u00e1ch.";Blockly.LANG_LISTS_SET_INDEX_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";Blockly.LANG_LISTS_SET_INDEX_INPUT_IN_LIST="trong danh s\u00e1ch";
Blockly.LANG_LISTS_SET_INDEX_SET="\u0111\u1eb7t th\u00e0nh t\u1ed1";Blockly.LANG_LISTS_SET_INDEX_INSERT="g\u1eafn ch\u00e8n v\u00e0o v\u1ecb tr\u00ed";Blockly.LANG_LISTS_SET_INDEX_INPUT_TO="gi\u00e1 tr\u1ecb";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_SET_FROM_START="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh t\u1ed1 \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh trong m\u1ed9t danh s\u00e1ch.\n#1 l\u00e0 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean.";
Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_SET_FROM_END="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh t\u1ed1 trong m\u1ed9t danh s\u00e1ch \u1edf v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh t\u1eeb ph\u00eda cu\u1ed1i.\n#1 l\u00e0 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_SET_FIRST="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean trong danh s\u00e1ch.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_SET_LAST="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng trong danh s\u00e1ch.";
Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_SET_RANDOM="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a th\u00e0nh t\u1ed1 ng\u1eabu nhi\u00ean trong danh s\u00e1ch.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_START="G\u1eafn ch\u00e8n v\u1eadt v\u00e0o danh s\u00e1ch theo v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh.\n#1 l\u00e0 th\u00e0nh t\u1ed1 \u0111\u1ea7u ti\u00ean.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_END="G\u1eafn ch\u00e8n v\u1eadt v\u00e0o danh s\u00e1ch theo v\u1ecb tr\u00ed \u1ea5n \u0111\u1ecbnh t\u1eeb ph\u00eda cu\u1ed1i.\n#1 l\u00e0 th\u00e0nh t\u1ed1 cu\u1ed1i c\u00f9ng.";
Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST="G\u1eafn ch\u00e8n v\u1eadt v\u00e0o \u0111\u1ea7u danh s\u00e1ch.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_INSERT_LAST="G\u1eafn th\u00eam v\u1eadt v\u00e0o cu\u1ed1i danh s\u00e1ch.";Blockly.LANG_LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM="G\u1eafn ch\u00e8n v\u1eadt v\u00e0o danh s\u00e1ch \u1edf v\u1ecb tr\u00ed ng\u1eabu nhi\u00ean.";Blockly.LANG_LISTS_GET_SUBLIST_HELPURL="http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
Blockly.LANG_LISTS_GET_SUBLIST_INPUT_IN_LIST="t\u1eeb danh s\u00e1ch";Blockly.LANG_LISTS_GET_SUBLIST_INPUT_AT1="l\u1ea5y m\u1ed9t danh s\u00e1ch con t\u1eeb";Blockly.LANG_LISTS_GET_SUBLIST_INPUT_AT2="\u0111\u1ebfn";Blockly.LANG_LISTS_GET_SUBLIST_TOOLTIP="L\u1ea5y m\u1ed9t m\u1ea3ng c\u1ee7a danh s\u00e1ch n\u00e0y \u0111\u1ec3 t\u1ea1o danh s\u00e1ch con.";Blockly.LANG_VARIABLES_GET_HELPURL="http://en.wikipedia.org/wiki/Variable_(computer_science)";Blockly.LANG_VARIABLES_GET_TITLE=null;
Blockly.LANG_VARIABLES_GET_ITEM="v\u1eadt";Blockly.LANG_VARIABLES_GET_TAIL=null;Blockly.LANG_VARIABLES_GET_TOOLTIP="Ho\u00e0n tr\u1ea3 gi\u00e1 tr\u1ecb c\u1ee7a.";Blockly.LANG_VARIABLES_GET_CREATE_SET='T\u1ea1o m\u1ea3nh "\u0111\u1eb7t v\u00e0o %1"';Blockly.LANG_VARIABLES_SET_HELPURL="http://en.wikipedia.org/wiki/Variable_(computer_science)";Blockly.LANG_VARIABLES_SET_TITLE="\u0111\u1eb7t v\u00e0o";Blockly.LANG_VARIABLES_SET_ITEM="v\u1eadt";Blockly.LANG_VARIABLES_SET_TAIL=null;
Blockly.LANG_VARIABLES_SET_TOOLTIP="\u0110\u1eb7t gi\u00e1 tr\u1ecb c\u1ee7a bi\u1ebfn n\u00e0y th\u00e0nh...";Blockly.LANG_VARIABLES_SET_CREATE_GET='T\u1ea1o m\u1ea3nh "l\u1ea5y %1"';Blockly.LANG_PROCEDURES_DEFNORETURN_HELPURL="http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";Blockly.LANG_PROCEDURES_DEFNORETURN_TITLE="";Blockly.LANG_PROCEDURES_DEFNORETURN_PROCEDURE="th\u1ee7 t\u1ee5c";Blockly.LANG_PROCEDURES_BEFORE_PARAMS="with:";Blockly.LANG_PROCEDURES_DEFNORETURN_DO="";
Blockly.LANG_PROCEDURES_DEFNORETURN_TOOLTIP="M\u1ed9t th\u1ee7 t\u1ee5c kh\u00f4ng c\u00f3 gi\u00e1 tr\u1ecb ho\u00e0n tr\u1ea3.";Blockly.LANG_PROCEDURES_DEFRETURN_HELPURL="http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";Blockly.LANG_PROCEDURES_DEFRETURN_TITLE=Blockly.LANG_PROCEDURES_DEFNORETURN_TITLE;Blockly.LANG_PROCEDURES_DEFRETURN_PROCEDURE=Blockly.LANG_PROCEDURES_DEFNORETURN_PROCEDURE;Blockly.LANG_PROCEDURES_DEFRETURN_DO=Blockly.LANG_PROCEDURES_DEFNORETURN_DO;
Blockly.LANG_PROCEDURES_DEFRETURN_RETURN="ho\u00e0n tr\u1ea3";Blockly.LANG_PROCEDURES_DEFRETURN_TOOLTIP="M\u1ed9t th\u1ee7 t\u1ee5c c\u00f3 gi\u00e1 tr\u1ecb ho\u00e0n tr\u1ea3.";Blockly.LANG_PROCEDURES_DEF_DUPLICATE_WARNING="C\u1ea9n th\u1eadn:\nTh\u1ee7 t\u1ee5c n\u00e0y c\u00f3 l\u1eb7p l\u1ea1i\nt\u00ean c\u00e1c tham s\u1ed1.";Blockly.LANG_PROCEDURES_CALLNORETURN_HELPURL="http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";Blockly.LANG_PROCEDURES_CALLNORETURN_CALL="th\u1ef1c hi\u1ec7n";
Blockly.LANG_PROCEDURES_CALLNORETURN_TOOLTIP="Ch\u1ea1y m\u1ed9t th\u1ee7 t\u1ee5c kh\u00f4ng c\u00f3 gi\u00e1 tr\u1ecb ho\u00e0n tr\u1ea3.";Blockly.LANG_PROCEDURES_CALLRETURN_HELPURL="http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";Blockly.LANG_PROCEDURES_CALLRETURN_CALL=Blockly.LANG_PROCEDURES_CALLNORETURN_CALL;Blockly.LANG_PROCEDURES_CALLRETURN_TOOLTIP="Ch\u1ea1y m\u1ed9t th\u1ee7 t\u1ee5c c\u00f3 gi\u00e1 tr\u1ecb ho\u00e0n tr\u1ea3.";
Blockly.LANG_PROCEDURES_MUTATORCONTAINER_TITLE="c\u00e1c tham s\u1ed1";Blockly.LANG_PROCEDURES_MUTATORARG_TITLE="bi\u1ebfn:";Blockly.LANG_PROCEDURES_HIGHLIGHT_DEF="L\u00e0m n\u1ed5i b\u1eadt th\u1ee7 t\u1ee5c";Blockly.LANG_PROCEDURES_CREATE_DO='T\u1ea1o m\u1ea3nh "th\u1ef1c hi\u1ec7n %1"';Blockly.LANG_PROCEDURES_IFRETURN_TOOLTIP="Khi \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang th\u00ec ho\u00e0n tr\u1ea3 m\u1ed9t gi\u00e1 tr\u1ecb.";Blockly.LANG_PROCEDURES_IFRETURN_WARNING="Warning:\nM\u1ea3nh n\u00e0y ch\u1ec9 c\u00f3 th\u1ec3 d\u00f9ng\ntrong m\u1ed9t th\u1ee7 t\u1ee5c.";Blockly.Language.colour_picker={helpUrl:Blockly.LANG_COLOUR_PICKER_HELPURL,init:function(){this.setColour(20);this.appendDummyInput().appendTitle(new Blockly.FieldColour("#ff0000"),"COLOUR");this.setOutput(!0,"Colour");this.setTooltip(Blockly.LANG_COLOUR_PICKER_TOOLTIP)}};Blockly.Language.colour_random={helpUrl:Blockly.LANG_COLOUR_RANDOM_HELPURL,init:function(){this.setColour(20);this.appendDummyInput().appendTitle(Blockly.LANG_COLOUR_RANDOM_TITLE);this.setOutput(!0,"Colour");this.setTooltip(Blockly.LANG_COLOUR_RANDOM_TOOLTIP)}};
Blockly.Language.colour_rgb={helpUrl:Blockly.LANG_COLOUR_RGB_HELPURL,init:function(){this.setColour(20);this.appendValueInput("RED").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_RGB_TITLE).appendTitle(Blockly.LANG_COLOUR_RGB_RED);this.appendValueInput("GREEN").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_RGB_GREEN);this.appendValueInput("BLUE").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_RGB_BLUE);
this.setOutput(!0,"Colour");this.setTooltip(Blockly.LANG_COLOUR_RGB_TOOLTIP)}};
Blockly.Language.colour_blend={helpUrl:Blockly.LANG_COLOUR_BLEND_HELPURL,init:function(){this.setColour(20);this.appendValueInput("COLOUR1").setCheck("Colour").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_BLEND_TITLE).appendTitle(Blockly.LANG_COLOUR_BLEND_COLOUR1);this.appendValueInput("COLOUR2").setCheck("Colour").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_BLEND_COLOUR2);this.appendValueInput("RATIO").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_COLOUR_BLEND_RATIO);this.setOutput(!0,
"Colour");this.setTooltip(Blockly.LANG_COLOUR_BLEND_TOOLTIP)}};Blockly.Language.lists_create_empty={helpUrl:Blockly.LANG_LISTS_CREATE_EMPTY_HELPURL,init:function(){this.setColour(260);this.setOutput(!0,"Array");this.appendDummyInput().appendTitle(Blockly.LANG_LISTS_CREATE_EMPTY_TITLE);this.setTooltip(Blockly.LANG_LISTS_CREATE_EMPTY_TOOLTIP)}};
Blockly.Language.lists_create_with={helpUrl:"",init:function(){this.setColour(260);this.appendValueInput("ADD0").appendTitle(Blockly.LANG_LISTS_CREATE_WITH_INPUT_WITH);this.appendValueInput("ADD1");this.appendValueInput("ADD2");this.setOutput(!0,"Array");this.setMutator(new Blockly.Mutator(["lists_create_with_item"]));this.setTooltip(Blockly.LANG_LISTS_CREATE_WITH_TOOLTIP);this.itemCount_=3},mutationToDom:function(a){a=document.createElement("mutation");a.setAttribute("items",this.itemCount_);return a},
domToMutation:function(a){for(var b=0;b<this.itemCount_;b++)this.removeInput("ADD"+b);this.itemCount_=window.parseInt(a.getAttribute("items"),10);for(b=0;b<this.itemCount_;b++)a=this.appendValueInput("ADD"+b),0==b&&a.appendTitle(Blockly.LANG_LISTS_CREATE_WITH_INPUT_WITH);0==this.itemCount_&&this.appendDummyInput("EMPTY").appendTitle(Blockly.LANG_LISTS_CREATE_EMPTY_TITLE)},decompose:function(a){var b=new Blockly.Block(a,"lists_create_with_container");b.initSvg();for(var c=b.getInput("STACK").connection,
d=0;d<this.itemCount_;d++){var e=new Blockly.Block(a,"lists_create_with_item");e.initSvg();c.connect(e.previousConnection);c=e.nextConnection}return b},compose:function(a){if(0==this.itemCount_)this.removeInput("EMPTY");else for(var b=this.itemCount_-1;0<=b;b--)this.removeInput("ADD"+b);this.itemCount_=0;for(a=a.getInputTargetBlock("STACK");a;)b=this.appendValueInput("ADD"+this.itemCount_),0==this.itemCount_&&b.appendTitle(Blockly.LANG_LISTS_CREATE_WITH_INPUT_WITH),a.valueConnection_&&b.connection.connect(a.valueConnection_),
this.itemCount_++,a=a.nextConnection&&a.nextConnection.targetBlock();0==this.itemCount_&&this.appendDummyInput("EMPTY").appendTitle(Blockly.LANG_LISTS_CREATE_EMPTY_TITLE)},saveConnections:function(a){a=a.getInputTargetBlock("STACK");for(var b=0;a;){var c=this.getInput("ADD"+b);a.valueConnection_=c&&c.connection.targetConnection;b++;a=a.nextConnection&&a.nextConnection.targetBlock()}}};
Blockly.Language.lists_create_with_container={init:function(){this.setColour(260);this.appendDummyInput().appendTitle(Blockly.LANG_LISTS_CREATE_WITH_CONTAINER_TITLE_ADD);this.appendStatementInput("STACK");this.setTooltip(Blockly.LANG_LISTS_CREATE_WITH_CONTAINER_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.lists_create_with_item={init:function(){this.setColour(260);this.appendDummyInput().appendTitle(Blockly.LANG_LISTS_CREATE_WITH_ITEM_TITLE);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_LISTS_CREATE_WITH_ITEM_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.lists_repeat={helpUrl:Blockly.LANG_LISTS_REPEAT_HELPURL,init:function(){this.setColour(260);this.setOutput(!0,"Array");this.appendValueInput("ITEM").appendTitle(Blockly.LANG_LISTS_REPEAT_INPUT_WITH);this.appendValueInput("NUM").setCheck("Number").appendTitle(Blockly.LANG_LISTS_REPEAT_INPUT_REPEATED);this.appendDummyInput().appendTitle(Blockly.LANG_LISTS_REPEAT_INPUT_TIMES);this.setInputsInline(!0);this.setTooltip(Blockly.LANG_LISTS_REPEAT_TOOLTIP)}};
Blockly.Language.lists_length={helpUrl:Blockly.LANG_LISTS_LENGTH_HELPURL,init:function(){this.setColour(260);this.appendValueInput("VALUE").setCheck(["Array","String"]).appendTitle(Blockly.LANG_LISTS_LENGTH_INPUT_LENGTH);this.setOutput(!0,"Number");this.setTooltip(Blockly.LANG_LISTS_LENGTH_TOOLTIP)}};
Blockly.Language.lists_isEmpty={helpUrl:Blockly.LANG_LISTS_IS_EMPTY_HELPURL,init:function(){this.setColour(260);this.appendValueInput("VALUE").setCheck(["Array","String"]);this.appendDummyInput().appendTitle(Blockly.LANG_LISTS_INPUT_IS_EMPTY);this.setInputsInline(!0);this.setOutput(!0,"Boolean");this.setTooltip(Blockly.LANG_LISTS_TOOLTIP)}};
Blockly.Language.lists_indexOf={helpUrl:Blockly.LANG_LISTS_INDEX_OF_HELPURL,init:function(){this.setColour(260);this.setOutput(!0,"Number");this.appendValueInput("VALUE").setCheck("Array").appendTitle(Blockly.LANG_LISTS_INDEX_OF_INPUT_IN_LIST);this.appendValueInput("FIND").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"END");this.setInputsInline(!0);this.setTooltip(Blockly.LANG_LISTS_INDEX_OF_TOOLTIP)}};
Blockly.Language.lists_indexOf.OPERATORS=[[Blockly.LANG_LISTS_INDEX_OF_FIRST,"FIRST"],[Blockly.LANG_LISTS_INDEX_OF_LAST,"LAST"]];
Blockly.Language.lists_getIndex={helpUrl:Blockly.LANG_LISTS_GET_INDEX_HELPURL,init:function(){this.setColour(260);var a=new Blockly.FieldDropdown(this.MODE,function(a){this.sourceBlock_.updateStatement("REMOVE"==a)});this.appendValueInput("VALUE").setCheck("Array").appendTitle(Blockly.LANG_LISTS_GET_INDEX_INPUT_IN_LIST);this.appendDummyInput().appendTitle(a,"MODE").appendTitle("");this.appendDummyInput("AT");this.setInputsInline(!0);this.setOutput(!0,"Number");this.updateAt(!0);var b=this;this.setTooltip(function(){var a=
b.getTitleValue("MODE")+"_"+b.getTitleValue("WHERE");return Blockly["LANG_LISTS_GET_INDEX_TOOLTIP_"+a]})},mutationToDom:function(){var a=document.createElement("mutation");a.setAttribute("statement",!this.outputConnection);var b=this.getInput("AT").type==Blockly.INPUT_VALUE;a.setAttribute("at",b);return a},domToMutation:function(a){var b="true"==a.getAttribute("statement");this.updateStatement(b);a="false"!=a.getAttribute("at");this.updateAt(a)},updateStatement:function(a){a!=!this.outputConnection&&
(this.unplug(!0,!0),a?(this.setOutput(!1),this.setPreviousStatement(!0),this.setNextStatement(!0)):(this.setPreviousStatement(!1),this.setNextStatement(!1),this.setOutput(!0)))},updateAt:function(a){this.removeInput("AT");a?this.appendValueInput("AT").setCheck("Number"):this.appendDummyInput("AT");var b=new Blockly.FieldDropdown(this.WHERE,function(b){var d="FROM_START"==b||"FROM_END"==b;if(d!=a){var e=this.sourceBlock_;e.updateAt(d);e.setTitleValue(b,"WHERE");return null}});this.getInput("AT").appendTitle(b,
"WHERE")}};Blockly.Language.lists_getIndex.MODE=[[Blockly.LANG_LISTS_GET_INDEX_GET,"GET"],[Blockly.LANG_LISTS_GET_INDEX_GET_REMOVE,"GET_REMOVE"],[Blockly.LANG_LISTS_GET_INDEX_REMOVE,"REMOVE"]];Blockly.Language.lists_getIndex.WHERE=[[Blockly.LANG_LISTS_GET_INDEX_FROM_START,"FROM_START"],[Blockly.LANG_LISTS_GET_INDEX_FROM_END,"FROM_END"],[Blockly.LANG_LISTS_GET_INDEX_FIRST,"FIRST"],[Blockly.LANG_LISTS_GET_INDEX_LAST,"LAST"],[Blockly.LANG_LISTS_GET_INDEX_RANDOM,"RANDOM"]];
Blockly.Language.lists_setIndex={helpUrl:Blockly.LANG_LISTS_SET_INDEX_HELPURL,init:function(){this.setColour(260);this.appendValueInput("LIST").setCheck("Array").appendTitle(Blockly.LANG_LISTS_SET_INDEX_INPUT_IN_LIST);this.appendDummyInput().appendTitle(new Blockly.FieldDropdown(this.MODE),"MODE").appendTitle("");this.appendDummyInput("AT");this.appendValueInput("TO").appendTitle(Blockly.LANG_LISTS_SET_INDEX_INPUT_TO);this.setInputsInline(!0);this.setPreviousStatement(!0);this.setNextStatement(!0);
this.setTooltip(Blockly.LANG_LISTS_SET_INDEX_TOOLTIP);this.updateAt(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("MODE")+"_"+a.getTitleValue("WHERE");return Blockly["LANG_LISTS_SET_INDEX_TOOLTIP_"+b]})},mutationToDom:function(){var a=document.createElement("mutation"),b=this.getInput("AT").type==Blockly.INPUT_VALUE;a.setAttribute("at",b);return a},domToMutation:function(a){a="false"!=a.getAttribute("at");this.updateAt(a)},updateAt:function(a){this.removeInput("AT");a?this.appendValueInput("AT").setCheck("Number"):
this.appendDummyInput("AT");var b=new Blockly.FieldDropdown(this.WHERE,function(b){var d="FROM_START"==b||"FROM_END"==b;if(d!=a){var e=this.sourceBlock_;e.updateAt(d);e.setTitleValue(b,"WHERE");return null}});this.moveInputBefore("AT","TO");this.getInput("AT").appendTitle(b,"WHERE")}};Blockly.Language.lists_setIndex.MODE=[[Blockly.LANG_LISTS_SET_INDEX_SET,"SET"],[Blockly.LANG_LISTS_SET_INDEX_INSERT,"INSERT"]];Blockly.Language.lists_setIndex.WHERE=Blockly.Language.lists_getIndex.WHERE;
Blockly.Language.lists_getSublist={helpUrl:Blockly.LANG_LISTS_GET_SUBLIST_HELPURL,init:function(){this.setColour(260);this.appendValueInput("LIST").setCheck("Array").appendTitle(Blockly.LANG_LISTS_GET_SUBLIST_INPUT_IN_LIST);this.appendDummyInput("AT1");this.appendDummyInput("AT2");this.setInputsInline(!0);this.setOutput(!0,"Array");this.updateAt(1,!0);this.updateAt(2,!0);this.setTooltip(Blockly.LANG_LISTS_GET_SUBLIST_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation"),b=this.getInput("AT1").type==
Blockly.INPUT_VALUE;a.setAttribute("at1",b);b=this.getInput("AT2").type==Blockly.INPUT_VALUE;a.setAttribute("at2",b);return a},domToMutation:function(a){var b="true"==a.getAttribute("at1");a="true"==a.getAttribute("at1");this.updateAt(1,b);this.updateAt(2,a)},updateAt:function(a,b){this.removeInput("AT"+a);b?this.appendValueInput("AT"+a).setCheck("Number"):this.appendDummyInput("AT"+a);var c=new Blockly.FieldDropdown(this["WHERE"+a],function(c){var e="FROM_START"==c||"FROM_END"==c;if(e!=b){var f=
this.sourceBlock_;f.updateAt(a,e);f.setTitleValue(c,"WHERE"+a);return null}});this.getInput("AT"+a).appendTitle(Blockly["LANG_LISTS_GET_SUBLIST_INPUT_AT"+a]).appendTitle(c,"WHERE"+a);1==a&&this.moveInputBefore("AT1","AT2")}};Blockly.Language.lists_getSublist.WHERE1=Blockly.Language.lists_getIndex.WHERE.filter(function(a){return"FROM_START"==a[1]||"FROM_END"==a[1]||"FIRST"==a[1]});
Blockly.Language.lists_getSublist.WHERE2=Blockly.Language.lists_getIndex.WHERE.filter(function(a){return"FROM_START"==a[1]||"FROM_END"==a[1]||"LAST"==a[1]});Blockly.Language.controls_if={helpUrl:Blockly.LANG_CONTROLS_IF_HELPURL,init:function(){this.setColour(210);this.appendValueInput("IF0").setCheck("Boolean").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_IF);this.appendStatementInput("DO0").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_THEN);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setMutator(new Blockly.Mutator(["controls_if_elseif","controls_if_else"]));var a=this;this.setTooltip(function(){if(a.elseifCount_||a.elseCount_){if(!a.elseifCount_&&
a.elseCount_)return Blockly.LANG_CONTROLS_IF_TOOLTIP_2;if(a.elseifCount_&&!a.elseCount_)return Blockly.LANG_CONTROLS_IF_TOOLTIP_3;if(a.elseifCount_&&a.elseCount_)return Blockly.LANG_CONTROLS_IF_TOOLTIP_4}else return Blockly.LANG_CONTROLS_IF_TOOLTIP_1;return""});this.elseCount_=this.elseifCount_=0},mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var a=document.createElement("mutation");this.elseifCount_&&a.setAttribute("elseif",this.elseifCount_);this.elseCount_&&a.setAttribute("else",
1);return a},domToMutation:function(a){this.elseifCount_=window.parseInt(a.getAttribute("elseif"),10);this.elseCount_=window.parseInt(a.getAttribute("else"),10);for(a=1;a<=this.elseifCount_;a++)this.appendValueInput("IF"+a).setCheck("Boolean").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+a).appendTitle(Blockly.LANG_CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_ELSE)},decompose:function(a){var b=
new Blockly.Block(a,"controls_if_if");b.initSvg();for(var c=b.getInput("STACK").connection,d=1;d<=this.elseifCount_;d++){var e=new Blockly.Block(a,"controls_if_elseif");e.initSvg();c.connect(e.previousConnection);c=e.nextConnection}this.elseCount_&&(a=new Blockly.Block(a,"controls_if_else"),a.initSvg(),c.connect(a.previousConnection));return b},compose:function(a){this.elseCount_&&this.removeInput("ELSE");this.elseCount_=0;for(var b=this.elseifCount_;0<b;b--)this.removeInput("IF"+b),this.removeInput("DO"+
b);this.elseifCount_=0;for(a=a.getInputTargetBlock("STACK");a;){switch(a.type){case "controls_if_elseif":this.elseifCount_++;var b=this.appendValueInput("IF"+this.elseifCount_).setCheck("Boolean").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_ELSEIF),c=this.appendStatementInput("DO"+this.elseifCount_);c.appendTitle(Blockly.LANG_CONTROLS_IF_MSG_THEN);a.valueConnection_&&b.connection.connect(a.valueConnection_);a.statementConnection_&&c.connection.connect(a.statementConnection_);break;case "controls_if_else":this.elseCount_++;
b=this.appendStatementInput("ELSE");b.appendTitle(Blockly.LANG_CONTROLS_IF_MSG_ELSE);a.statementConnection_&&b.connection.connect(a.statementConnection_);break;default:throw"Unknown block type.";}a=a.nextConnection&&a.nextConnection.targetBlock()}},saveConnections:function(a){a=a.getInputTargetBlock("STACK");for(var b=1;a;){switch(a.type){case "controls_if_elseif":var c=this.getInput("IF"+b),d=this.getInput("DO"+b);a.valueConnection_=c&&c.connection.targetConnection;a.statementConnection_=d&&d.connection.targetConnection;
b++;break;case "controls_if_else":d=this.getInput("ELSE");a.statementConnection_=d&&d.connection.targetConnection;break;default:throw"Unknown block type.";}a=a.nextConnection&&a.nextConnection.targetBlock()}}};Blockly.Language.controls_if_if={init:function(){this.setColour(210);this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_IF_IF_TITLE_IF);this.appendStatementInput("STACK");this.setTooltip(Blockly.LANG_CONTROLS_IF_IF_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.controls_if_elseif={init:function(){this.setColour(210);this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_IF_ELSEIF_TITLE_ELSEIF);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_CONTROLS_IF_ELSEIF_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.controls_if_else={init:function(){this.setColour(210);this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_IF_ELSE_TITLE_ELSE);this.setPreviousStatement(!0);this.setTooltip(Blockly.LANG_CONTROLS_IF_ELSE_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.logic_compare={helpUrl:Blockly.LANG_LOGIC_COMPARE_HELPURL,init:function(){this.setColour(210);this.setOutput(!0,"Boolean");this.appendValueInput("A");this.appendValueInput("B").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");this.setInputsInline(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};Blockly.Language.logic_compare.OPERATORS=[["=","EQ"],["\u2260","NEQ"],["<","LT"],["\u2264","LTE"],[">","GT"],["\u2265","GTE"]];
Blockly.Language.logic_compare.TOOLTIPS={EQ:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_EQ,NEQ:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_NEQ,LT:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_LT,LTE:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_LTE,GT:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_GT,GTE:Blockly.LANG_LOGIC_COMPARE_TOOLTIP_GTE};
Blockly.Language.logic_operation={helpUrl:Blockly.LANG_LOGIC_OPERATION_HELPURL,init:function(){this.setColour(210);this.setOutput(!0,"Boolean");this.appendValueInput("A").setCheck("Boolean");this.appendValueInput("B").setCheck("Boolean").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");this.setInputsInline(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};
Blockly.Language.logic_operation.OPERATORS=[[Blockly.LANG_LOGIC_OPERATION_AND,"AND"],[Blockly.LANG_LOGIC_OPERATION_OR,"OR"]];Blockly.Language.logic_operation.TOOLTIPS={AND:Blockly.LANG_LOGIC_OPERATION_TOOLTIP_AND,OR:Blockly.LANG_LOGIC_OPERATION_TOOLTIP_OR};Blockly.Language.logic_negate={helpUrl:Blockly.LANG_LOGIC_NEGATE_HELPURL,init:function(){this.setColour(210);this.setOutput(!0,"Boolean");this.appendValueInput("BOOL").setCheck("Boolean").appendTitle(Blockly.LANG_LOGIC_NEGATE_INPUT_NOT);this.setTooltip(Blockly.LANG_LOGIC_NEGATE_TOOLTIP)}};
Blockly.Language.logic_boolean={helpUrl:Blockly.LANG_LOGIC_BOOLEAN_HELPURL,init:function(){this.setColour(210);this.setOutput(!0,"Boolean");this.appendDummyInput().appendTitle(new Blockly.FieldDropdown(this.BOOLEANS),"BOOL");this.setTooltip(Blockly.LANG_LOGIC_BOOLEAN_TOOLTIP)}};Blockly.Language.logic_boolean.BOOLEANS=[[Blockly.LANG_LOGIC_BOOLEAN_TRUE,"TRUE"],[Blockly.LANG_LOGIC_BOOLEAN_FALSE,"FALSE"]];
Blockly.Language.logic_null={helpUrl:Blockly.LANG_LOGIC_NULL_HELPURL,init:function(){this.setColour(210);this.setOutput(!0);this.appendDummyInput().appendTitle(Blockly.LANG_LOGIC_NULL);this.setTooltip(Blockly.LANG_LOGIC_NULL_TOOLTIP)}};
Blockly.Language.logic_ternary={helpUrl:Blockly.LANG_LOGIC_TERNARY_HELPURL,init:function(){this.setColour(210);this.appendValueInput("IF").setCheck("Boolean").appendTitle(Blockly.LANG_LOGIC_TERNARY_CONDITION);this.appendValueInput("THEN").appendTitle(Blockly.LANG_LOGIC_TERNARY_IF_TRUE);this.appendValueInput("ELSE").appendTitle(Blockly.LANG_LOGIC_TERNARY_IF_FALSE);this.setOutput(!0);this.setTooltip(Blockly.LANG_LOGIC_TERNARY_TOOLTIP)}};Blockly.Language.controls_repeat={helpUrl:Blockly.LANG_CONTROLS_REPEAT_HELPURL,init:function(){this.setColour(120);this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_REPEAT_TITLE_REPEAT).appendTitle(new Blockly.FieldTextInput("10",Blockly.FieldTextInput.nonnegativeIntegerValidator),"TIMES").appendTitle(Blockly.LANG_CONTROLS_REPEAT_TITLE_TIMES);this.appendStatementInput("DO").appendTitle(Blockly.LANG_CONTROLS_REPEAT_INPUT_DO);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_CONTROLS_REPEAT_TOOLTIP)}};
Blockly.Language.controls_repeat_ext={helpUrl:Blockly.LANG_CONTROLS_REPEAT_HELPURL,init:function(){this.setColour(120);this.appendValueInput("TIMES").setCheck("Number").appendTitle(Blockly.LANG_CONTROLS_REPEAT_TITLE_REPEAT);Blockly.LANG_CONTROLS_REPEAT_TITLE_TIMES&&this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_REPEAT_TITLE_TIMES);this.appendStatementInput("DO").appendTitle(Blockly.LANG_CONTROLS_REPEAT_INPUT_DO);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setInputsInline(!0);
this.setTooltip(Blockly.LANG_CONTROLS_REPEAT_TOOLTIP)}};
Blockly.Language.controls_whileUntil={helpUrl:Blockly.LANG_CONTROLS_WHILEUNTIL_HELPURL,init:function(){this.setColour(120);this.appendValueInput("BOOL").setCheck("Boolean").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"MODE");this.appendStatementInput("DO").appendTitle(Blockly.LANG_CONTROLS_WHILEUNTIL_INPUT_DO);this.setPreviousStatement(!0);this.setNextStatement(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("MODE");return a.TOOLTIPS[b]})}};
Blockly.Language.controls_whileUntil.OPERATORS=[[Blockly.LANG_CONTROLS_WHILEUNTIL_OPERATOR_WHILE,"WHILE"],[Blockly.LANG_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL,"UNTIL"]];Blockly.Language.controls_whileUntil.TOOLTIPS={WHILE:Blockly.LANG_CONTROLS_WHILEUNTIL_TOOLTIP_WHILE,UNTIL:Blockly.LANG_CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL};
Blockly.Language.controls_for={helpUrl:Blockly.LANG_CONTROLS_FOR_HELPURL,init:function(){this.setColour(120);this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_FOR_INPUT_WITH).appendTitle(new Blockly.FieldVariable(null),"VAR");this.appendValueInput("FROM").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_CONTROLS_FOR_INPUT_FROM);this.appendValueInput("TO").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_CONTROLS_FOR_INPUT_TO);this.appendValueInput("BY").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_CONTROLS_FOR_INPUT_BY);
Blockly.LANG_CONTROLS_FOR_TAIL&&this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_FOR_TAIL);this.appendStatementInput("DO").appendTitle(Blockly.LANG_CONTROLS_FOR_INPUT_DO);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setInputsInline(!0);var a=this;this.setTooltip(function(){return Blockly.LANG_CONTROLS_FOR_TOOLTIP.replace("%1",a.getTitleValue("VAR"))})},getVars:function(){return[this.getTitleValue("VAR")]},renameVar:function(a,b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&
this.setTitleValue(b,"VAR")},customContextMenu:function(a){var b={enabled:!0},c=this.getTitleValue("VAR");b.text=Blockly.LANG_VARIABLES_SET_CREATE_GET.replace("%1",c);c=goog.dom.createDom("title",null,c);c.setAttribute("name","VAR");c=goog.dom.createDom("block",null,c);c.setAttribute("type","variables_get");b.callback=Blockly.ContextMenu.callbackFactory(this,c);a.push(b)}};
Blockly.Language.controls_forEach={helpUrl:Blockly.LANG_CONTROLS_FOREACH_HELPURL,init:function(){this.setColour(120);this.appendValueInput("LIST").setCheck("Array").appendTitle(Blockly.LANG_CONTROLS_FOREACH_INPUT_ITEM).appendTitle(new Blockly.FieldVariable(null),"VAR").appendTitle(Blockly.LANG_CONTROLS_FOREACH_INPUT_INLIST);Blockly.LANG_CONTROLS_FOREACH_INPUT_INLIST_TAIL&&(this.appendDummyInput().appendTitle(Blockly.LANG_CONTROLS_FOREACH_INPUT_INLIST_TAIL),this.setInputsInline(!0));this.appendStatementInput("DO").appendTitle(Blockly.LANG_CONTROLS_FOREACH_INPUT_DO);
this.setPreviousStatement(!0);this.setNextStatement(!0);var a=this;this.setTooltip(function(){return Blockly.LANG_CONTROLS_FOREACH_TOOLTIP.replace("%1",a.getTitleValue("VAR"))})},getVars:function(){return[this.getTitleValue("VAR")]},renameVar:function(a,b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&this.setTitleValue(b,"VAR")},customContextMenu:Blockly.Language.controls_for.customContextMenu};
Blockly.Language.controls_flow_statements={helpUrl:Blockly.LANG_CONTROLS_FLOW_STATEMENTS_HELPURL,init:function(){this.setColour(120);this.appendDummyInput().appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"FLOW");this.setPreviousStatement(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("FLOW");return a.TOOLTIPS[b]})},onchange:function(){if(this.workspace){var a=!1,b=this;do{if("controls_repeat"==b.type||"controls_forEach"==b.type||"controls_for"==b.type||"controls_whileUntil"==
b.type){a=!0;break}b=b.getSurroundParent()}while(b);a?this.setWarningText(null):this.setWarningText(Blockly.LANG_CONTROLS_FLOW_STATEMENTS_WARNING)}}};Blockly.Language.controls_flow_statements.OPERATORS=[[Blockly.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK,"BREAK"],[Blockly.LANG_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE,"CONTINUE"]];Blockly.Language.controls_flow_statements.TOOLTIPS={BREAK:Blockly.LANG_CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK,CONTINUE:Blockly.LANG_CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE};Blockly.Language.math_number={helpUrl:Blockly.LANG_MATH_NUMBER_HELPURL,init:function(){this.setColour(230);this.appendDummyInput().appendTitle(new Blockly.FieldTextInput("0",Blockly.FieldTextInput.numberValidator),"NUM");this.setOutput(!0,"Number");this.setTooltip(Blockly.LANG_MATH_NUMBER_TOOLTIP)}};
Blockly.Language.math_arithmetic={helpUrl:Blockly.LANG_MATH_ARITHMETIC_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("A").setCheck("Number");this.appendValueInput("B").setCheck("Number").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");this.setInputsInline(!0);var a=this;this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};
Blockly.Language.math_arithmetic.OPERATORS=[["+","ADD"],["-","MINUS"],["\u00d7","MULTIPLY"],["\u00f7","DIVIDE"],["^","POWER"]];Blockly.Language.math_arithmetic.TOOLTIPS={ADD:Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_ADD,MINUS:Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_MINUS,MULTIPLY:Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_MULTIPLY,DIVIDE:Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_DIVIDE,POWER:Blockly.LANG_MATH_ARITHMETIC_TOOLTIP_POWER};
Blockly.Language.math_single={helpUrl:Blockly.LANG_MATH_SINGLE_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("NUM").setCheck("Number").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");var a=this;this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};
Blockly.Language.math_single.OPERATORS=[[Blockly.LANG_MATH_SINGLE_OP_ROOT,"ROOT"],[Blockly.LANG_MATH_SINGLE_OP_ABSOLUTE,"ABS"],["-","NEG"],["ln","LN"],["log10","LOG10"],["e^","EXP"],["10^","POW10"]];Blockly.Language.math_single.TOOLTIPS={ROOT:Blockly.LANG_MATH_SINGLE_TOOLTIP_ROOT,ABS:Blockly.LANG_MATH_SINGLE_TOOLTIP_ABS,NEG:Blockly.LANG_MATH_SINGLE_TOOLTIP_NEG,LN:Blockly.LANG_MATH_SINGLE_TOOLTIP_LN,LOG10:Blockly.LANG_MATH_SINGLE_TOOLTIP_LOG10,EXP:Blockly.LANG_MATH_SINGLE_TOOLTIP_EXP,POW10:Blockly.LANG_MATH_SINGLE_TOOLTIP_POW10};
Blockly.Language.math_trig={helpUrl:Blockly.LANG_MATH_TRIG_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("NUM").setCheck("Number").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");var a=this;this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};Blockly.Language.math_trig.OPERATORS=[["sin","SIN"],["cos","COS"],["tan","TAN"],["asin","ASIN"],["acos","ACOS"],["atan","ATAN"]];
Blockly.Language.math_trig.TOOLTIPS={SIN:Blockly.LANG_MATH_TRIG_TOOLTIP_SIN,COS:Blockly.LANG_MATH_TRIG_TOOLTIP_COS,TAN:Blockly.LANG_MATH_TRIG_TOOLTIP_TAN,ASIN:Blockly.LANG_MATH_TRIG_TOOLTIP_ASIN,ACOS:Blockly.LANG_MATH_TRIG_TOOLTIP_ACOS,ATAN:Blockly.LANG_MATH_TRIG_TOOLTIP_ATAN};
Blockly.Language.math_constant={helpUrl:Blockly.LANG_MATH_CONSTANT_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendDummyInput().appendTitle(new Blockly.FieldDropdown(this.CONSTANTS),"CONSTANT");this.setTooltip(Blockly.LANG_MATH_CONSTANT_TOOLTIP)}};Blockly.Language.math_constant.CONSTANTS=[["\u03c0","PI"],["e","E"],["\u03c6","GOLDEN_RATIO"],["sqrt(2)","SQRT2"],["sqrt(\u00bd)","SQRT1_2"],["\u221e","INFINITY"]];
Blockly.Language.math_number_property={helpUrl:"",init:function(){this.setColour(230);this.appendValueInput("NUMBER_TO_CHECK").setCheck("Number");var a=new Blockly.FieldDropdown(this.PROPERTIES,function(a){this.sourceBlock_.updateShape("DIVISIBLE_BY"==a)});this.appendDummyInput().appendTitle(a,"PROPERTY");this.setInputsInline(!0);this.setOutput(!0,"Boolean");this.setTooltip(Blockly.LANG_MATH_IS_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation"),b="DIVISIBLE_BY"==this.getTitleValue("PROPERTY");
a.setAttribute("divisor_input",b);return a},domToMutation:function(a){a="true"==a.getAttribute("divisor_input");this.updateShape(a)},updateShape:function(a){var b=this.getInput("DIVISOR");a?b||this.appendValueInput("DIVISOR").setCheck("Number"):b&&this.removeInput("DIVISOR")}};
Blockly.Language.math_number_property.PROPERTIES=[[Blockly.LANG_MATH_IS_EVEN,"EVEN"],[Blockly.LANG_MATH_IS_ODD,"ODD"],[Blockly.LANG_MATH_IS_PRIME,"PRIME"],[Blockly.LANG_MATH_IS_WHOLE,"WHOLE"],[Blockly.LANG_MATH_IS_POSITIVE,"POSITIVE"],[Blockly.LANG_MATH_IS_NEGATIVE,"NEGATIVE"],[Blockly.LANG_MATH_IS_DIVISIBLE_BY,"DIVISIBLE_BY"]];
Blockly.Language.math_change={helpUrl:Blockly.LANG_MATH_CHANGE_HELPURL,init:function(){this.setColour(230);this.appendValueInput("DELTA").setCheck("Number").appendTitle(Blockly.LANG_MATH_CHANGE_TITLE_CHANGE).appendTitle(new Blockly.FieldVariable(Blockly.LANG_MATH_CHANGE_TITLE_ITEM),"VAR").appendTitle(Blockly.LANG_MATH_CHANGE_INPUT_BY);this.setPreviousStatement(!0);this.setNextStatement(!0);var a=this;this.setTooltip(function(){return Blockly.LANG_MATH_CHANGE_TOOLTIP.replace("%1",a.getTitleValue("VAR"))})},
getVars:function(){return[this.getTitleValue("VAR")]},renameVar:function(a,b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&this.setTitleValue(b,"VAR")}};Blockly.Language.math_round={helpUrl:Blockly.LANG_MATH_ROUND_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("NUM").setCheck("Number").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"OP");this.setTooltip(Blockly.LANG_MATH_ROUND_TOOLTIP)}};
Blockly.Language.math_round.OPERATORS=[[Blockly.LANG_MATH_ROUND_OPERATOR_ROUND,"ROUND"],[Blockly.LANG_MATH_ROUND_OPERATOR_ROUNDUP,"ROUNDUP"],[Blockly.LANG_MATH_ROUND_OPERATOR_ROUNDDOWN,"ROUNDDOWN"]];
Blockly.Language.math_on_list={helpUrl:Blockly.LANG_MATH_ONLIST_HELPURL,init:function(){var a=this;this.setColour(230);this.setOutput(!0,"Number");var b=new Blockly.FieldDropdown(this.OPERATORS,function(b){"MODE"==b?a.outputConnection.setCheck("Array"):a.outputConnection.setCheck("Number")});this.appendValueInput("LIST").setCheck("Array").appendTitle(b,"OP");this.setTooltip(function(){var b=a.getTitleValue("OP");return a.TOOLTIPS[b]})}};
Blockly.Language.math_on_list.OPERATORS=[[Blockly.LANG_MATH_ONLIST_OPERATOR_SUM,"SUM"],[Blockly.LANG_MATH_ONLIST_OPERATOR_MIN,"MIN"],[Blockly.LANG_MATH_ONLIST_OPERATOR_MAX,"MAX"],[Blockly.LANG_MATH_ONLIST_OPERATOR_AVERAGE,"AVERAGE"],[Blockly.LANG_MATH_ONLIST_OPERATOR_MEDIAN,"MEDIAN"],[Blockly.LANG_MATH_ONLIST_OPERATOR_MODE,"MODE"],[Blockly.LANG_MATH_ONLIST_OPERATOR_STD_DEV,"STD_DEV"],[Blockly.LANG_MATH_ONLIST_OPERATOR_RANDOM,"RANDOM"]];
Blockly.Language.math_on_list.TOOLTIPS={SUM:Blockly.LANG_MATH_ONLIST_TOOLTIP_SUM,MIN:Blockly.LANG_MATH_ONLIST_TOOLTIP_MIN,MAX:Blockly.LANG_MATH_ONLIST_TOOLTIP_MAX,AVERAGE:Blockly.LANG_MATH_ONLIST_TOOLTIP_AVERAGE,MEDIAN:Blockly.LANG_MATH_ONLIST_TOOLTIP_MEDIAN,MODE:Blockly.LANG_MATH_ONLIST_TOOLTIP_MODE,STD_DEV:Blockly.LANG_MATH_ONLIST_TOOLTIP_STD_DEV,RANDOM:Blockly.LANG_MATH_ONLIST_TOOLTIP_RANDOM};
Blockly.Language.math_modulo={helpUrl:Blockly.LANG_MATH_MODULO_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("DIVIDEND").setCheck("Number").appendTitle(Blockly.LANG_MATH_MODULO_INPUT_DIVIDEND);this.appendValueInput("DIVISOR").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle("\u00f7");this.setInputsInline(!0);this.setTooltip(Blockly.LANG_MATH_MODULO_TOOLTIP)}};
Blockly.Language.math_constrain={helpUrl:Blockly.LANG_MATH_CONSTRAIN_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("VALUE").setCheck("Number").appendTitle(Blockly.LANG_MATH_CONSTRAIN_INPUT_CONSTRAIN);this.appendValueInput("LOW").setCheck("Number").appendTitle(Blockly.LANG_MATH_CONSTRAIN_INPUT_LOW);this.appendValueInput("HIGH").setCheck("Number").appendTitle(Blockly.LANG_MATH_CONSTRAIN_INPUT_HIGH);this.setInputsInline(!0);this.setTooltip(Blockly.LANG_MATH_CONSTRAIN_TOOLTIP)}};
Blockly.Language.math_random_int={helpUrl:Blockly.LANG_MATH_RANDOM_INT_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendValueInput("FROM").setCheck("Number").appendTitle(Blockly.LANG_MATH_RANDOM_INT_INPUT_FROM);this.appendValueInput("TO").setCheck("Number").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_MATH_RANDOM_INT_INPUT_TO);this.setInputsInline(!0);this.setTooltip(Blockly.LANG_MATH_RANDOM_INT_TOOLTIP)}};
Blockly.Language.math_random_float={helpUrl:Blockly.LANG_MATH_RANDOM_FLOAT_HELPURL,init:function(){this.setColour(230);this.setOutput(!0,"Number");this.appendDummyInput().appendTitle(Blockly.LANG_MATH_RANDOM_FLOAT_TITLE_RANDOM);this.setTooltip(Blockly.LANG_MATH_RANDOM_FLOAT_TOOLTIP)}};Blockly.Language.procedures_defnoreturn={category:null,helpUrl:Blockly.LANG_PROCEDURES_DEFNORETURN_HELPURL,init:function(){this.setColour(290);var a=Blockly.Procedures.findLegalName(Blockly.LANG_PROCEDURES_DEFNORETURN_PROCEDURE,this);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_DEFNORETURN_TITLE).appendTitle(new Blockly.FieldTextInput(a,Blockly.Procedures.rename),"NAME").appendTitle("","PARAMS");this.appendStatementInput("STACK").appendTitle(Blockly.LANG_PROCEDURES_DEFNORETURN_DO);
this.setMutator(new Blockly.Mutator(["procedures_mutatorarg"]));this.setTooltip(Blockly.LANG_PROCEDURES_DEFNORETURN_TOOLTIP);this.arguments_=[]},updateParams_:function(){for(var a=!1,b={},c=0;c<this.arguments_.length;c++){if(b["arg_"+this.arguments_[c].toLowerCase()]){a=!0;break}b["arg_"+this.arguments_[c].toLowerCase()]=!0}a?this.setWarningText(Blockly.LANG_PROCEDURES_DEF_DUPLICATE_WARNING):this.setWarningText(null);a="";this.arguments_.length&&(a=Blockly.LANG_PROCEDURES_BEFORE_PARAMS+" "+this.arguments_.join(", "));
this.setTitleValue(a,"PARAMS")},mutationToDom:function(){for(var a=document.createElement("mutation"),b=0;b<this.arguments_.length;b++){var c=document.createElement("arg");c.setAttribute("name",this.arguments_[b]);a.appendChild(c)}return a},domToMutation:function(a){this.arguments_=[];for(var b=0,c;c=a.childNodes[b];b++)"arg"==c.nodeName.toLowerCase()&&this.arguments_.push(c.getAttribute("name"));this.updateParams_()},decompose:function(a){var b=new Blockly.Block(a,"procedures_mutatorcontainer");
b.initSvg();for(var c=b.getInput("STACK").connection,d=0;d<this.arguments_.length;d++){var e=new Blockly.Block(a,"procedures_mutatorarg");e.initSvg();e.setTitleValue(this.arguments_[d],"NAME");e.oldLocation=d;c.connect(e.previousConnection);c=e.nextConnection}Blockly.Procedures.mutateCallers(this.getTitleValue("NAME"),this.workspace,this.arguments_,null);return b},compose:function(a){this.arguments_=[];this.paramIds_=[];for(a=a.getInputTargetBlock("STACK");a;)this.arguments_.push(a.getTitleValue("NAME")),
this.paramIds_.push(a.id),a=a.nextConnection&&a.nextConnection.targetBlock();this.updateParams_();Blockly.Procedures.mutateCallers(this.getTitleValue("NAME"),this.workspace,this.arguments_,this.paramIds_)},dispose:function(){var a=this.getTitleValue("NAME");Blockly.Procedures.disposeCallers(a,this.workspace);Blockly.Block.prototype.dispose.apply(this,arguments)},getProcedureDef:function(){return[this.getTitleValue("NAME"),this.arguments_,!1]},getVars:function(){return this.arguments_},renameVar:function(a,
b){for(var c=!1,d=0;d<this.arguments_.length;d++)Blockly.Names.equals(a,this.arguments_[d])&&(this.arguments_[d]=b,c=!0);if(c&&(this.updateParams_(),this.mutator.isVisible_()))for(var c=this.mutator.workspace_.getAllBlocks(),d=0,e;e=c[d];d++)"procedures_mutatorarg"==e.type&&Blockly.Names.equals(a,e.getTitleValue("NAME"))&&e.setTitleValue(b,"NAME")},customContextMenu:function(a){var b={enabled:!0},c=this.getTitleValue("NAME");b.text=Blockly.LANG_PROCEDURES_CREATE_DO.replace("%1",c);var d=goog.dom.createDom("mutation");
d.setAttribute("name",c);for(var e=0;e<this.arguments_.length;e++)c=goog.dom.createDom("arg"),c.setAttribute("name",this.arguments_[e]),d.appendChild(c);d=goog.dom.createDom("block",null,d);d.setAttribute("type",this.callType_);b.callback=Blockly.ContextMenu.callbackFactory(this,d);a.push(b);for(e=0;e<this.arguments_.length;e++)b={enabled:!0},c=this.arguments_[e],b.text=Blockly.LANG_VARIABLES_SET_CREATE_GET.replace("%1",c),d=goog.dom.createDom("title",null,c),d.setAttribute("name","VAR"),d=goog.dom.createDom("block",
null,d),d.setAttribute("type","variables_get"),b.callback=Blockly.ContextMenu.callbackFactory(this,d),a.push(b)},callType_:"procedures_callnoreturn"};
Blockly.Language.procedures_defreturn={category:null,helpUrl:Blockly.LANG_PROCEDURES_DEFRETURN_HELPURL,init:function(){this.setColour(290);var a=Blockly.Procedures.findLegalName(Blockly.LANG_PROCEDURES_DEFRETURN_PROCEDURE,this);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_TITLE).appendTitle(new Blockly.FieldTextInput(a,Blockly.Procedures.rename),"NAME").appendTitle("","PARAMS");this.appendStatementInput("STACK").appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_DO);this.appendValueInput("RETURN").setAlign(Blockly.ALIGN_RIGHT).appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_RETURN);
this.setMutator(new Blockly.Mutator(["procedures_mutatorarg"]));this.setTooltip(Blockly.LANG_PROCEDURES_DEFRETURN_TOOLTIP);this.arguments_=[]},updateParams_:Blockly.Language.procedures_defnoreturn.updateParams_,mutationToDom:Blockly.Language.procedures_defnoreturn.mutationToDom,domToMutation:Blockly.Language.procedures_defnoreturn.domToMutation,decompose:Blockly.Language.procedures_defnoreturn.decompose,compose:Blockly.Language.procedures_defnoreturn.compose,dispose:Blockly.Language.procedures_defnoreturn.dispose,
getProcedureDef:function(){return[this.getTitleValue("NAME"),this.arguments_,!0]},getVars:Blockly.Language.procedures_defnoreturn.getVars,renameVar:Blockly.Language.procedures_defnoreturn.renameVar,customContextMenu:Blockly.Language.procedures_defnoreturn.customContextMenu,callType_:"procedures_callreturn"};
Blockly.Language.procedures_mutatorcontainer={init:function(){this.setColour(290);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_MUTATORCONTAINER_TITLE);this.appendStatementInput("STACK");this.setTooltip("");this.contextMenu=!1}};
Blockly.Language.procedures_mutatorarg={init:function(){this.setColour(290);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_MUTATORARG_TITLE).appendTitle(new Blockly.FieldTextInput("x",this.validator),"NAME");this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip("");this.contextMenu=!1}};Blockly.Language.procedures_mutatorarg.validator=function(a){return(a=a.replace(/[\s\xa0]+/g," ").replace(/^ | $/g,""))||null};
Blockly.Language.procedures_callnoreturn={category:null,helpUrl:Blockly.LANG_PROCEDURES_CALLNORETURN_HELPURL,init:function(){this.setColour(290);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_CALLNORETURN_CALL).appendTitle("","NAME");this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_PROCEDURES_CALLNORETURN_TOOLTIP);this.arguments_=[];this.quarkArguments_=this.quarkConnections_=null},getProcedureCall:function(){return this.getTitleValue("NAME")},renameProcedure:function(a,
b){Blockly.Names.equals(a,this.getTitleValue("NAME"))&&(this.setTitleValue(b,"NAME"),this.setTooltip((this.outputConnection?Blockly.LANG_PROCEDURES_CALLRETURN_TOOLTIP:Blockly.LANG_PROCEDURES_CALLNORETURN_TOOLTIP).replace("%1",b)))},setProcedureParameters:function(a,b){if(b){if(b.length!=a.length)throw"Error: paramNames and paramIds must be the same length.";this.quarkArguments_||(this.quarkConnections_={},a.join("\n")==this.arguments_.join("\n")?this.quarkArguments_=b:this.quarkArguments_=[]);var c=
this.rendered;this.rendered=!1;for(var d=this.arguments_.length-1;0<=d;d--){var e=this.getInput("ARG"+d);if(e){var f=e.connection.targetConnection;this.quarkConnections_[this.quarkArguments_[d]]=f;this.removeInput("ARG"+d)}}this.arguments_=[].concat(a);this.quarkArguments_=b;for(d=0;d<this.arguments_.length;d++)if(e=this.appendValueInput("ARG"+d).setAlign(Blockly.ALIGN_RIGHT).appendTitle(this.arguments_[d]),this.quarkArguments_){var g=this.quarkArguments_[d];g in this.quarkConnections_&&(f=this.quarkConnections_[g],
!f||f.targetConnection||f.sourceBlock_.workspace!=this.workspace?delete this.quarkConnections_[g]:e.connection.connect(f))}(this.rendered=c)&&this.render()}else this.quarkConnections_={},this.quarkArguments_=null},mutationToDom:function(){var a=document.createElement("mutation");a.setAttribute("name",this.getTitleValue("NAME"));for(var b=0;b<this.arguments_.length;b++){var c=document.createElement("arg");c.setAttribute("name",this.arguments_[b]);a.appendChild(c)}return a},domToMutation:function(a){var b=
a.getAttribute("name");this.setTitleValue(b,"NAME");this.setTooltip((this.outputConnection?Blockly.LANG_PROCEDURES_CALLRETURN_TOOLTIP:Blockly.LANG_PROCEDURES_CALLNORETURN_TOOLTIP).replace("%1",b));if((b=Blockly.Procedures.getDefinition(b,this.workspace))&&b.mutator.isVisible())this.setProcedureParameters(b.arguments_,b.paramIds_);else{this.arguments_=[];for(var b=0,c;c=a.childNodes[b];b++)"arg"==c.nodeName.toLowerCase()&&this.arguments_.push(c.getAttribute("name"));this.setProcedureParameters(this.arguments_,
this.arguments_)}},renameVar:function(a,b){for(var c=0;c<this.arguments_.length;c++)Blockly.Names.equals(a,this.arguments_[c])&&(this.arguments_[c]=b,this.getInput("ARG"+c).titleRow[0].setText(b))},customContextMenu:function(a){var b={enabled:!0};b.text=Blockly.LANG_PROCEDURES_HIGHLIGHT_DEF;var c=this.getTitleValue("NAME"),d=this.workspace;b.callback=function(){var a=Blockly.Procedures.getDefinition(c,d);a&&a.select()};a.push(b)}};
Blockly.Language.procedures_callreturn={category:null,helpUrl:Blockly.LANG_PROCEDURES_CALLRETURN_HELPURL,init:function(){this.setColour(290);this.appendDummyInput().appendTitle(Blockly.LANG_PROCEDURES_CALLRETURN_CALL).appendTitle("","NAME");this.setOutput(!0);this.setTooltip(Blockly.LANG_PROCEDURES_CALLRETURN_TOOLTIP);this.arguments_=[];this.quarkArguments_=this.quarkConnections_=null},getProcedureCall:Blockly.Language.procedures_callnoreturn.getProcedureCall,renameProcedure:Blockly.Language.procedures_callnoreturn.renameProcedure,
setProcedureParameters:Blockly.Language.procedures_callnoreturn.setProcedureParameters,mutationToDom:Blockly.Language.procedures_callnoreturn.mutationToDom,domToMutation:Blockly.Language.procedures_callnoreturn.domToMutation,renameVar:Blockly.Language.procedures_callnoreturn.renameVar,customContextMenu:Blockly.Language.procedures_callnoreturn.customContextMenu};
Blockly.Language.procedures_ifreturn={helpUrl:"http://c2.com/cgi/wiki?GuardClause",init:function(){this.setColour(290);this.appendValueInput("CONDITION").setCheck("Boolean").appendTitle(Blockly.LANG_CONTROLS_IF_MSG_IF);this.appendValueInput("VALUE").appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_RETURN);this.setInputsInline(!0);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_PROCEDURES_IFRETURN_TOOLTIP);this.hasReturnValue_=!0},mutationToDom:function(){var a=document.createElement("mutation");
a.setAttribute("value",Number(this.hasReturnValue_));return a},domToMutation:function(a){this.hasReturnValue_=1==a.getAttribute("value");this.hasReturnValue_||(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_RETURN))},onchange:function(){if(this.workspace){var a=!1,b=this;do{if("procedures_defnoreturn"==b.type||"procedures_defreturn"==b.type){a=!0;break}b=b.getSurroundParent()}while(b);a?("procedures_defnoreturn"==b.type&&this.hasReturnValue_?
(this.removeInput("VALUE"),this.appendDummyInput("VALUE").appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!1):"procedures_defreturn"!=b.type||this.hasReturnValue_||(this.removeInput("VALUE"),this.appendValueInput("VALUE").appendTitle(Blockly.LANG_PROCEDURES_DEFRETURN_RETURN),this.hasReturnValue_=!0),this.setWarningText(null)):this.setWarningText(Blockly.LANG_PROCEDURES_IFRETURN_WARNING)}}};Blockly.Language.text={helpUrl:Blockly.LANG_TEXT_TEXT_HELPURL,init:function(){this.setColour(160);this.appendDummyInput().appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote0.png",12,12)).appendTitle(new Blockly.FieldTextInput(""),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote1.png",12,12));this.setOutput(!0,"String");this.setTooltip(Blockly.LANG_TEXT_TEXT_TOOLTIP)}};
Blockly.Language.text_join={helpUrl:Blockly.LANG_TEXT_JOIN_HELPURL,init:function(){this.setColour(160);this.appendValueInput("ADD0").appendTitle(Blockly.LANG_TEXT_JOIN_TITLE_CREATEWITH);this.appendValueInput("ADD1");this.setOutput(!0,"String");this.setMutator(new Blockly.Mutator(["text_create_join_item"]));this.setTooltip(Blockly.LANG_TEXT_JOIN_TOOLTIP);this.itemCount_=2},mutationToDom:function(){var a=document.createElement("mutation");a.setAttribute("items",this.itemCount_);return a},domToMutation:function(a){for(var b=
0;b<this.itemCount_;b++)this.removeInput("ADD"+b);this.itemCount_=window.parseInt(a.getAttribute("items"),10);for(b=0;b<this.itemCount_;b++)a=this.appendValueInput("ADD"+b),0==b&&a.appendTitle(Blockly.LANG_TEXT_JOIN_TITLE_CREATEWITH);0==this.itemCount_&&this.appendDummyInput("EMPTY").appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote0.png",12,12)).appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote1.png",12,12))},decompose:function(a){var b=new Blockly.Block(a,
"text_create_join_container");b.initSvg();for(var c=b.getInput("STACK").connection,d=0;d<this.itemCount_;d++){var e=new Blockly.Block(a,"text_create_join_item");e.initSvg();c.connect(e.previousConnection);c=e.nextConnection}return b},compose:function(a){if(0==this.itemCount_)this.removeInput("EMPTY");else for(var b=this.itemCount_-1;0<=b;b--)this.removeInput("ADD"+b);this.itemCount_=0;for(a=a.getInputTargetBlock("STACK");a;)b=this.appendValueInput("ADD"+this.itemCount_),0==this.itemCount_&&b.appendTitle(Blockly.LANG_TEXT_JOIN_TITLE_CREATEWITH),
a.valueConnection_&&b.connection.connect(a.valueConnection_),this.itemCount_++,a=a.nextConnection&&a.nextConnection.targetBlock();0==this.itemCount_&&this.appendDummyInput("EMPTY").appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote0.png",12,12)).appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote1.png",12,12))},saveConnections:function(a){a=a.getInputTargetBlock("STACK");for(var b=0;a;){var c=this.getInput("ADD"+b);a.valueConnection_=c&&c.connection.targetConnection;
b++;a=a.nextConnection&&a.nextConnection.targetBlock()}}};Blockly.Language.text_create_join_container={init:function(){this.setColour(160);this.appendDummyInput().appendTitle(Blockly.LANG_TEXT_CREATE_JOIN_TITLE_JOIN);this.appendStatementInput("STACK");this.setTooltip(Blockly.LANG_TEXT_CREATE_JOIN_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.text_create_join_item={init:function(){this.setColour(160);this.appendDummyInput().appendTitle(Blockly.LANG_TEXT_CREATE_JOIN_ITEM_TITLE_ITEM);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_TEXT_CREATE_JOIN_ITEM_TOOLTIP);this.contextMenu=!1}};
Blockly.Language.text_append={helpUrl:Blockly.LANG_TEXT_APPEND_HELPURL,init:function(){this.setColour(160);this.appendValueInput("TEXT").appendTitle(Blockly.LANG_TEXT_APPEND_TO).appendTitle(new Blockly.FieldVariable(Blockly.LANG_TEXT_APPEND_VARIABLE),"VAR").appendTitle(Blockly.LANG_TEXT_APPEND_APPENDTEXT);this.setPreviousStatement(!0);this.setNextStatement(!0);var a=this;this.setTooltip(function(){return Blockly.LANG_TEXT_APPEND_TOOLTIP.replace("%1",a.getTitleValue("VAR"))})},getVars:function(){return[this.getTitleValue("VAR")]},
renameVar:function(a,b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&this.setTitleValue(b,"VAR")}};Blockly.Language.text_length={helpUrl:Blockly.LANG_TEXT_LENGTH_HELPURL,init:function(){this.setColour(160);this.appendValueInput("VALUE").setCheck(["String","Array"]).appendTitle(Blockly.LANG_TEXT_LENGTH_INPUT_LENGTH);this.setOutput(!0,"Number");this.setTooltip(Blockly.LANG_TEXT_LENGTH_TOOLTIP)}};
Blockly.Language.text_isEmpty={helpUrl:Blockly.LANG_TEXT_ISEMPTY_HELPURL,init:function(){this.setColour(160);this.appendValueInput("VALUE").setCheck(["String","Array"]);this.appendDummyInput().appendTitle(Blockly.LANG_TEXT_ISEMPTY_INPUT_ISEMPTY);this.setInputsInline(!0);this.setOutput(!0,"Boolean");this.setTooltip(Blockly.LANG_TEXT_ISEMPTY_TOOLTIP)}};
Blockly.Language.text_indexOf={helpUrl:Blockly.LANG_TEXT_INDEXOF_HELPURL,init:function(){this.setColour(160);this.setOutput(!0,"Number");this.appendValueInput("VALUE").setCheck("String").appendTitle(Blockly.LANG_TEXT_INDEXOF_INPUT_INTEXT);this.appendValueInput("FIND").setCheck("String").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"END");this.setInputsInline(!0);this.setTooltip(Blockly.LANG_TEXT_INDEXOF_TOOLTIP)}};
Blockly.Language.text_indexOf.OPERATORS=[[Blockly.LANG_TEXT_INDEXOF_OPERATOR_FIRST,"FIRST"],[Blockly.LANG_TEXT_INDEXOF_OPERATOR_LAST,"LAST"]];
Blockly.Language.text_charAt={helpUrl:Blockly.LANG_TEXT_CHARAT_HELPURL,init:function(){this.setColour(160);this.setOutput(!0,"String");this.appendValueInput("VALUE").setCheck("String").appendTitle(Blockly.LANG_TEXT_CHARAT_INPUT_INTEXT);this.appendDummyInput("AT");this.setInputsInline(!0);this.updateAt(!0);this.setTooltip(Blockly.LANG_TEXT_CHARAT_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation"),b=this.getInput("AT").type==Blockly.INPUT_VALUE;a.setAttribute("at",b);return a},
domToMutation:function(a){a="false"!=a.getAttribute("at");this.updateAt(a)},updateAt:function(a){this.removeInput("AT");a?this.appendValueInput("AT").setCheck("Number"):this.appendDummyInput("AT");var b=new Blockly.FieldDropdown(this.WHERE,function(b){var d="FROM_START"==b||"FROM_END"==b;if(d!=a){var e=this.sourceBlock_;e.updateAt(d);e.setTitleValue(b,"WHERE");return null}});this.getInput("AT").appendTitle(b,"WHERE")}};
Blockly.Language.text_charAt.WHERE=[[Blockly.LANG_TEXT_CHARAT_FROM_START,"FROM_START"],[Blockly.LANG_TEXT_CHARAT_FROM_END,"FROM_END"],[Blockly.LANG_TEXT_CHARAT_FIRST,"FIRST"],[Blockly.LANG_TEXT_CHARAT_LAST,"LAST"],[Blockly.LANG_TEXT_CHARAT_RANDOM,"RANDOM"]];
Blockly.Language.text_getSubstring={helpUrl:Blockly.LANG_TEXT_SUBSTRING_HELPURL,init:function(){this.setColour(160);this.appendValueInput("STRING").setCheck("String").appendTitle(Blockly.LANG_TEXT_SUBSTRING_INPUT_IN_TEXT);this.appendDummyInput("AT1");this.appendDummyInput("AT2");this.setInputsInline(!0);this.setOutput(!0,"String");this.updateAt(1,!0);this.updateAt(2,!0);this.setTooltip(Blockly.LANG_TEXT_SUBSTRING_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation"),b=this.getInput("AT1").type==
Blockly.INPUT_VALUE;a.setAttribute("at1",b);b=this.getInput("AT2").type==Blockly.INPUT_VALUE;a.setAttribute("at2",b);return a},domToMutation:function(a){var b="true"==a.getAttribute("at1");a="true"==a.getAttribute("at1");this.updateAt(1,b);this.updateAt(2,a)},updateAt:function(a,b){this.removeInput("AT"+a);b?this.appendValueInput("AT"+a).setCheck("Number"):this.appendDummyInput("AT"+a);var c=new Blockly.FieldDropdown(this["WHERE"+a],function(c){var e="FROM_START"==c||"FROM_END"==c;if(e!=b){var f=
this.sourceBlock_;f.updateAt(a,e);f.setTitleValue(c,"WHERE"+a);return null}});this.getInput("AT"+a).appendTitle(Blockly["LANG_TEXT_SUBSTRING_INPUT_AT"+a]).appendTitle(c,"WHERE"+a);1==a&&this.moveInputBefore("AT1","AT2")}};Blockly.Language.text_getSubstring.WHERE1=[[Blockly.LANG_TEXT_SUBSTRING_FROM_START,"FROM_START"],[Blockly.LANG_TEXT_SUBSTRING_FROM_END,"FROM_END"],[Blockly.LANG_TEXT_SUBSTRING_FIRST,"FIRST"]];
Blockly.Language.text_getSubstring.WHERE2=[[Blockly.LANG_TEXT_SUBSTRING_FROM_START,"FROM_START"],[Blockly.LANG_TEXT_SUBSTRING_FROM_END,"FROM_END"],[Blockly.LANG_TEXT_SUBSTRING_LAST,"LAST"]];Blockly.Language.text_changeCase={helpUrl:Blockly.LANG_TEXT_CHANGECASE_HELPURL,init:function(){this.setColour(160);this.appendValueInput("TEXT").setCheck("String").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"CASE");this.setOutput(!0,"String");this.setTooltip(Blockly.LANG_TEXT_CHANGECASE_TOOLTIP)}};
Blockly.Language.text_changeCase.OPERATORS=[[Blockly.LANG_TEXT_CHANGECASE_OPERATOR_UPPERCASE,"UPPERCASE"],[Blockly.LANG_TEXT_CHANGECASE_OPERATOR_LOWERCASE,"LOWERCASE"],[Blockly.LANG_TEXT_CHANGECASE_OPERATOR_TITLECASE,"TITLECASE"]];Blockly.Language.text_trim={helpUrl:Blockly.LANG_TEXT_TRIM_HELPURL,init:function(){this.setColour(160);this.appendValueInput("TEXT").setCheck("String").appendTitle(new Blockly.FieldDropdown(this.OPERATORS),"MODE");this.setOutput(!0,"String");this.setTooltip(Blockly.LANG_TEXT_TRIM_TOOLTIP)}};
Blockly.Language.text_trim.OPERATORS=[[Blockly.LANG_TEXT_TRIM_OPERATOR_BOTH,"BOTH"],[Blockly.LANG_TEXT_TRIM_OPERATOR_LEFT,"LEFT"],[Blockly.LANG_TEXT_TRIM_OPERATOR_RIGHT,"RIGHT"]];Blockly.Language.text_print={helpUrl:Blockly.LANG_TEXT_PRINT_HELPURL,init:function(){this.setColour(160);this.appendValueInput("TEXT").appendTitle(Blockly.LANG_TEXT_PRINT_TITLE_PRINT);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_TEXT_PRINT_TOOLTIP)}};
Blockly.Language.text_prompt={helpUrl:Blockly.LANG_TEXT_PROMPT_HELPURL,init:function(){var a=this;this.setColour(160);var b=new Blockly.FieldDropdown(this.TYPES,function(b){"NUMBER"==b?a.outputConnection.setCheck("Number"):a.outputConnection.setCheck("String")});this.appendDummyInput().appendTitle(b,"TYPE").appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+"media/quote0.png",12,12)).appendTitle(new Blockly.FieldTextInput(""),"TEXT").appendTitle(new Blockly.FieldImage(Blockly.pathToBlockly+
"media/quote1.png",12,12));this.setOutput(!0,"String");a=this;this.setTooltip(function(){return"TEXT"==a.getTitleValue("TYPE")?Blockly.LANG_TEXT_PROMPT_TOOLTIP_TEXT:Blockly.LANG_TEXT_PROMPT_TOOLTIP_NUMBER})}};Blockly.Language.text_prompt.TYPES=[[Blockly.LANG_TEXT_PROMPT_TYPE_TEXT,"TEXT"],[Blockly.LANG_TEXT_PROMPT_TYPE_NUMBER,"NUMBER"]];Blockly.Language.variables_get={category:null,helpUrl:Blockly.LANG_VARIABLES_GET_HELPURL,init:function(){this.setColour(330);this.appendDummyInput().appendTitle(Blockly.LANG_VARIABLES_GET_TITLE).appendTitle(new Blockly.FieldVariable(Blockly.LANG_VARIABLES_GET_ITEM),"VAR").appendTitle(Blockly.LANG_VARIABLES_GET_TAIL);this.setOutput(!0);this.setTooltip(Blockly.LANG_VARIABLES_GET_TOOLTIP)},getVars:function(){return[this.getTitleValue("VAR")]},renameVar:function(a,b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&
this.setTitleValue(b,"VAR")},contextMenuMsg_:Blockly.LANG_VARIABLES_GET_CREATE_SET,contextMenuType_:"variables_set",customContextMenu:function(a){var b={enabled:!0},c=this.getTitleValue("VAR");b.text=this.contextMenuMsg_.replace("%1",c);c=goog.dom.createDom("title",null,c);c.setAttribute("name","VAR");c=goog.dom.createDom("block",null,c);c.setAttribute("type",this.contextMenuType_);b.callback=Blockly.ContextMenu.callbackFactory(this,c);a.push(b)}};
Blockly.Language.variables_set={category:null,helpUrl:Blockly.LANG_VARIABLES_SET_HELPURL,init:function(){this.setColour(330);this.appendValueInput("VALUE").appendTitle(Blockly.LANG_VARIABLES_SET_TITLE).appendTitle(new Blockly.FieldVariable(Blockly.LANG_VARIABLES_SET_ITEM),"VAR").appendTitle(Blockly.LANG_VARIABLES_SET_TAIL);this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.LANG_VARIABLES_SET_TOOLTIP)},getVars:function(){return[this.getTitleValue("VAR")]},renameVar:function(a,
b){Blockly.Names.equals(a,this.getTitleValue("VAR"))&&this.setTitleValue(b,"VAR")},contextMenuMsg_:Blockly.LANG_VARIABLES_SET_CREATE_GET,contextMenuType_:"variables_get",customContextMenu:Blockly.Language.variables_get.customContextMenu};